← Documents Documentation/devicetree/bindings/usb/ti,keystone-dwc3.yaml GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / USB

TI Keystone SoC USB Controller

Keystone DWC3 wrapper의 power domain, USB3 PHY, DMA와 child 구성을 설명합니다.

Source pathDocumentation/devicetree/bindings/usb/ti,keystone-dwc3.yaml
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약과 해설

ti,keystone-dwc3.yaml:1-92

Keystone DWC3 wrapper의 power domain, USB3 PHY, DMA와 child 구성을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, interrupt, PHY, firmware, graph endpoint, source path와 원문 줄 좌표를 원형대로 보존합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/usb/ti,keystone-dwc3.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: TI Keystone Soc USB Controller
8
9 maintainers:
10 - Roger Quadros <[email protected]>
11
12 properties:
13 compatible:
14 items:
15 - enum:
16 - ti,keystone-dwc3
17 - ti,am654-dwc3
18
19 reg:
20 maxItems: 1
21
22 '#address-cells':
23 const: 1
24
25 '#size-cells':
26 const: 1
27
28 ranges: true
29
30 interrupts:
31 maxItems: 1
32
33 clocks:
34 minItems: 1
35 maxItems: 2
36
37 power-domains:
38 maxItems: 1
39 description: Should contain a phandle to a PM domain provider node
40 and an args specifier containing the USB device id
41 value. This property is as per the binding,
42 Documentation/devicetree/bindings/soc/ti/sci-pm-domain.yaml
43
44 phys:
45 maxItems: 1
46 description:
47 PHY specifier for the USB3.0 PHY. Some SoCs need the USB3.0 PHY
48 to be turned on before the controller.
49 Documentation/devicetree/bindings/phy/phy-bindings.txt
50
51 phy-names:
52 items:
53 - const: usb3-phy
54
55 dma-coherent: true
56
57 dma-ranges: true
58
59 patternProperties:
60 "usb@[a-f0-9]+$":
61 $ref: snps,dwc3.yaml#
62
63 required:
64 - compatible
65 - reg
66 - "#address-cells"
67 - "#size-cells"
68 - ranges
69 - interrupts
70
71 additionalProperties: false
72
73 examples:
74 - |
75 #include <dt-bindings/interrupt-controller/arm-gic.h>
76
77 dwc3@2680000 {
78 compatible = "ti,keystone-dwc3";
79 #address-cells = <1>;
80 #size-cells = <1>;
81 reg = <0x2680000 0x10000>;
82 clocks = <&clkusb>;
83 interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;
84 ranges;
85
86 usb@2690000 {
87 compatible = "snps,dwc3";
88 reg = <0x2690000 0x70000>;
89 interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;
90 usb-phy = <&usb_phy>, <&usb_phy>;
91 };
92 };
93

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

TI Keystone SoC USB controller

1-11

GPL-2.0-only 또는 BSD-2-Clause로 배포되는 이 스키마는 TI Keystone SoC USB controller를 정의합니다. 관리자는 Roger Quadros입니다.

compatible과 controller 자원

12-42

compatible은 `ti,keystone-dwc3` 또는 `ti,am654-dwc3`입니다. register와 interrupt는 각각 하나이고 address·size cell 수는 모두 1입니다. `ranges`로 child address space를 변환하며 clock은 한 개 또는 두 개입니다.

`power-domains`에는 PM domain provider phandle과 USB device id 인수를 하나 지정합니다. 상세 형식은 `Documentation/devicetree/bindings/soc/ti/sci-pm-domain.yaml`을 따릅니다.

properties:
  compatible:
    items:
      - enum:
          - ti,keystone-dwc3
          - ti,am654-dwc3

  reg:
    maxItems: 1

  '#address-cells':
    const: 1

  '#size-cells':
    const: 1

  ranges: true

  interrupts:
    maxItems: 1

  clocks:
    minItems: 1
    maxItems: 2

  power-domains:
    maxItems: 1
    description: Should contain a phandle to a PM domain provider node
      and an args specifier containing the USB device id
      value. This property is as per the binding,
      Documentation/devicetree/bindings/soc/ti/sci-pm-domain.yaml

USB3 PHY, DMA와 DWC3 child

43-62

`phys`는 USB 3.0 PHY 지정자 하나입니다. 일부 SoC에서는 controller보다 USB3.0 PHY를 먼저 켜야 합니다. PHY 이름은 `usb3-phy`입니다.

DMA coherent와 `dma-ranges`를 사용할 수 있습니다. `usb@<hex-address>` child는 `snps,dwc3.yaml`을 따릅니다.


  phys:
    maxItems: 1
    description:
      PHY specifier for the USB3.0 PHY. Some SoCs need the USB3.0 PHY
      to be turned on before the controller.
      Documentation/devicetree/bindings/phy/phy-bindings.txt

  phy-names:
    items:
      - const: usb3-phy

  dma-coherent: true

  dma-ranges: true

patternProperties:
  "usb@[a-f0-9]+$":
    $ref: snps,dwc3.yaml#

필수 속성과 확장 제한

63-72

필수 속성은 compatible, register, address·size cell 수, ranges와 interrupt입니다. 추가 속성은 허용하지 않습니다.

required:
  - compatible
  - reg
  - "#address-cells"
  - "#size-cells"
  - ranges
  - interrupts

additionalProperties: false

Keystone DWC3 wrapper 예제

73-92

예제 `dwc3@2680000`은 0x10000-byte wrapper register, `clkusb`, rising-edge SPI 393과 빈 `ranges`를 사용합니다.

내부 `usb@2690000`은 `snps,dwc3` controller로 0x70000-byte 영역, 같은 interrupt와 USB2·USB3용 `usb_phy` 두 항목을 지정합니다.

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    dwc3@2680000 {
      compatible = "ti,keystone-dwc3";
      #address-cells = <1>;
      #size-cells = <1>;
      reg = <0x2680000 0x10000>;
      clocks = <&clkusb>;
      interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;
      ranges;

      usb@2690000 {
        compatible = "snps,dwc3";
        reg = <0x2690000 0x70000>;
        interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;
        usb-phy = <&usb_phy>, <&usb_phy>;
      };
    };