← Documents Documentation/devicetree/bindings/usb/hisilicon,histb-xhci.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings / USB

HiSilicon STB xHCI

HiSilicon STB xHCI의 clock·reset·PHY 요구 사항과 LPM·interrupt moderation 옵션을 설명합니다.

Source pathDocumentation/devicetree/bindings/usb/hisilicon,histb-xhci.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

hisilicon,histb-xhci.txt:1-45

HiSilicon STB xHCI의 clock·reset·PHY 요구 사항과 LPM·interrupt moderation 옵션을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, clock, interrupt, GPIO, PHY, source path와 원문 줄 좌표를 원형대로 보존합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 HiSilicon STB xHCI
2
3 The device node for HiSilicon STB xHCI host controller
4
5 Required properties:
6 - compatible: should be "hisilicon,hi3798cv200-xhci"
7 - reg: specifies physical base address and size of the registers
8 - interrupts : interrupt used by the controller
9 - clocks: a list of phandle + clock-specifier pairs, one for each
10 entry in clock-names
11 - clock-names: must contain
12 "bus": for bus clock
13 "utmi": for utmi clock
14 "pipe": for pipe clock
15 "suspend": for suspend clock
16 - resets: a list of phandle and reset specifier pairs as listed in
17 reset-names property.
18 - reset-names: must contain
19 "soft": for soft reset
20 - phys: a list of phandle + phy specifier pairs
21 - phy-names: must contain at least one of following:
22 "inno": for inno phy
23 "combo": for combo phy
24
25 Optional properties:
26 - usb2-lpm-disable: indicate if we don't want to enable USB2 HW LPM
27 - usb3-lpm-capable: determines if platform is USB3 LPM capable
28 - imod-interval-ns: default interrupt moderation interval is 40000ns
29
30 Example:
31
32 xhci0: xchi@f98a0000 {
33 compatible = "hisilicon,hi3798cv200-xhci";
34 reg = <0xf98a0000 0x10000>;
35 interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
36 clocks = <&crg HISTB_USB3_BUS_CLK>,
37 <&crg HISTB_USB3_UTMI_CLK>,
38 <&crg HISTB_USB3_PIPE_CLK>,
39 <&crg HISTB_USB3_SUSPEND_CLK>;
40 clock-names = "bus", "utmi", "pipe", "suspend";
41 resets = <&crg 0xb0 12>;
42 reset-names = "soft";
43 phys = <&usb2_phy1_port1 0>, <&combphy0 PHY_TYPE_USB3>;
44 phy-names = "inno", "combo";
45 };
46

3. 한국어 전문 번역

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

HiSilicon STB xHCI

1-4

이 문서는 HiSilicon STB xHCI host controller의 device node를 설명합니다.

필수 resource와 PHY

5-24

필수 `compatible`은 `hisilicon,hi3798cv200-xhci`입니다. `reg`는 register의 physical base address와 size, `interrupts`는 controller interrupt를 지정합니다.

clock 이름은 bus, UTMI, pipe, suspend clock용 `bus`, `utmi`, `pipe`, `suspend`입니다. reset 목록의 이름은 soft reset용 `soft`입니다.

`phys`는 PHY specifier 쌍 목록이고 `phy-names`에는 inno PHY용 `inno` 또는 combo PHY용 `combo` 중 최소 하나가 있어야 합니다.

LPM과 interrupt moderation

25-29

`usb2-lpm-disable`은 USB2 hardware LPM을 켜지 않도록 지정합니다. `usb3-lpm-capable`은 platform이 USB3 LPM을 지원하는지 나타냅니다. `imod-interval-ns`의 기본 interrupt moderation interval은 40,000 ns입니다.

Hi3798CV200 xHCI 예제

30-45

예제 node는 원문 이름 `xchi@f98a0000`, 0x10000-byte register 영역, level-high GIC SPI 69, bus·UTMI·pipe·suspend clock, soft reset을 사용합니다.

USB2 inno PHY와 USB3 combo PHY를 연결하고 이름을 `inno`, `combo`로 지정합니다.

Example:

xhci0: xchi@f98a0000 {
        compatible = "hisilicon,hi3798cv200-xhci";
        reg = <0xf98a0000 0x10000>;
        interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&crg HISTB_USB3_BUS_CLK>,
                 <&crg HISTB_USB3_UTMI_CLK>,
                 <&crg HISTB_USB3_PIPE_CLK>,
                 <&crg HISTB_USB3_SUSPEND_CLK>;
        clock-names = "bus", "utmi", "pipe", "suspend";
        resets = <&crg 0xb0 12>;
        reset-names = "soft";
        phys = <&usb2_phy1_port1 0>, <&combphy0 PHY_TYPE_USB3>;
        phy-names = "inno", "combo";
};