요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
USB Peripheral Controller driver for Aeroflex Gaisler GRUSBDC.
The GRUSBDC USB Device Controller core is available in the GRLIB VHDL
IP core library.
Note: In the ordinary environment for the core, a Leon SPARC system,
these properties are built from information in the AMBA plug&play.
Required properties:
- name : Should be "GAISLER_USBDC" or "01_021"
- reg : Address and length of the register set for the device
- interrupts : Interrupt numbers for this device. Either one interrupt number
for all interrupts, or one for status related interrupts, one for IN
endpoint related interrupts and one for OUT endpoint related interrupts.
Optional properties:
- epobufsizes : Array of buffer sizes for OUT endpoints when they differ
from the default size of 1024. The array is indexed by the OUT endpoint
number. If the property is present it typically contains one entry for
each OUT endpoint of the core. Fewer entries overrides the default sizes
only for as many endpoints as the array contains.
- epibufsizes : Array of buffer sizes for IN endpoints when they differ
from the default size of 1024. The array is indexed by the IN endpoint
number. If the property is present it typically contains one entry for
each IN endpoint of the core. Fewer entries overrides the default sizes
only for as many endpoints as the array contains.
For further information look in the documentation for the GLIB IP core library:
http://www.gaisler.com/products/grlib/grip.pdf
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Aeroflex Gaisler GRUSBDC
1-8이 문서는 Aeroflex Gaisler GRUSBDC용 USB Peripheral Controller driver를 설명합니다. GRUSBDC USB Device Controller core는 GRLIB VHDL IP core library에서 제공됩니다.
일반적인 Leon SPARC 환경에서는 이 속성들이 AMBA plug-and-play 정보로부터 구성됩니다.
이름, register와 interrupt
9-18필수 `name`은 `GAISLER_USBDC` 또는 `01_021`입니다. `reg`는 device register set의 address와 length입니다.
`interrupts`는 모든 interrupt에 공통 번호 하나를 쓰거나, status 관련·IN endpoint 관련·OUT endpoint 관련 번호를 각각 하나씩 지정합니다.
OUT·IN endpoint buffer 크기
19-31선택적 `epobufsizes`는 OUT endpoint buffer가 기본값 1024와 다를 때 크기를 담는 배열이며 OUT endpoint 번호로 index합니다. 보통 core의 각 OUT endpoint당 한 항목을 두고, 항목이 적으면 배열에 포함된 endpoint까지만 기본값을 덮어씁니다.
`epibufsizes`도 같은 규칙을 IN endpoint에 적용합니다. 기본 크기는 1024이고 IN endpoint 번호로 index하며, 제공된 항목 수만큼만 기본값을 덮어씁니다.
GRLIB IP core 문서
32-34추가 정보는 원문이 가리키는 GLIB IP core library 문서 `http://www.gaisler.com/products/grlib/grip.pdf`에서 확인할 수 있습니다.
요약과 해설
gr-udc.txt:1-34GRUSBDC controller의 AMBA 환경, interrupt 구성과 IN·OUT endpoint buffer 배열을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, clock, interrupt, GPIO, PHY, source path와 원문 줄 좌표를 원형대로 보존합니다.