요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
HiSilicon STB xHCI
The device node for HiSilicon STB xHCI host controller
Required properties:
- compatible: should be "hisilicon,hi3798cv200-xhci"
- reg: specifies physical base address and size of the registers
- interrupts : interrupt used by the controller
- clocks: a list of phandle + clock-specifier pairs, one for each
entry in clock-names
- clock-names: must contain
"bus": for bus clock
"utmi": for utmi clock
"pipe": for pipe clock
"suspend": for suspend clock
- resets: a list of phandle and reset specifier pairs as listed in
reset-names property.
- reset-names: must contain
"soft": for soft reset
- phys: a list of phandle + phy specifier pairs
- phy-names: must contain at least one of following:
"inno": for inno phy
"combo": for combo phy
Optional properties:
- usb2-lpm-disable: indicate if we don't want to enable USB2 HW LPM
- usb3-lpm-capable: determines if platform is USB3 LPM capable
- imod-interval-ns: default interrupt moderation interval is 40000ns
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";
};
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";
};
요약과 해설
hisilicon,histb-xhci.txt:1-45HiSilicon STB xHCI의 clock·reset·PHY 요구 사항과 LPM·interrupt moderation 옵션을 설명합니다. 접을 수 있는 영어 원문 전체와 한국어 전문 번역을 함께 제공하며, compatible, register, clock, interrupt, GPIO, PHY, source path와 원문 줄 좌표를 원형대로 보존합니다.