← Documents Documentation/devicetree/bindings/mmc/k3-dw-mshc.txt GitHub 원문 ↗

Linux 6.18.37 · Devicetree Bindings

HiSilicon DesignWare MSHC Extensions

HiSilicon SoC 전용 DesignWare MSHC와 peripheral syscon 바인딩입니다.

Source pathDocumentation/devicetree/bindings/mmc/k3-dw-mshc.txt
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

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

1. 요약·해설

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

요약과 해설

k3-dw-mshc.txt:1-73

Hi3660·Hi3670·Hi4511·Hi6220 호환성과 두 board 예제를 설명합니다.

2. 영어 원문 전체

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

원문 전체 펼치기
1 * Hisilicon specific extensions to the Synopsys Designware Mobile
2 Storage Host Controller
3
4 Read synopsys-dw-mshc.txt for more details
5
6 The Synopsys designware mobile storage host controller is used to interface
7 a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
8 differences between the core Synopsys dw mshc controller properties described
9 by synopsys-dw-mshc.txt and the properties used by the Hisilicon specific
10 extensions to the Synopsys Designware Mobile Storage Host Controller.
11
12 Required Properties:
13
14 * compatible: should be one of the following.
15 - "hisilicon,hi3660-dw-mshc": for controllers with hi3660 specific extensions.
16 - "hisilicon,hi3670-dw-mshc", "hisilicon,hi3660-dw-mshc": for controllers
17 with hi3670 specific extensions.
18 - "hisilicon,hi4511-dw-mshc": for controllers with hi4511 specific extensions.
19 - "hisilicon,hi6220-dw-mshc": for controllers with hi6220 specific extensions.
20
21 Optional Properties:
22 - hisilicon,peripheral-syscon: phandle of syscon used to control peripheral.
23
24 Example:
25
26 /* for Hi3620 */
27
28 /* SoC portion */
29 dwmmc_0: dwmmc0@fcd03000 {
30 compatible = "hisilicon,hi4511-dw-mshc";
31 reg = <0xfcd03000 0x1000>;
32 interrupts = <0 16 4>;
33 #address-cells = <1>;
34 #size-cells = <0>;
35 clocks = <&mmc_clock HI3620_SD_CIUCLK>, <&clock HI3620_DDRC_PER_CLK>;
36 clock-names = "ciu", "biu";
37 };
38
39 /* Board portion */
40 dwmmc0@fcd03000 {
41 vmmc-supply = <&ldo12>;
42 fifo-depth = <0x100>;
43 pinctrl-names = "default";
44 pinctrl-0 = <&sd_pmx_pins &sd_cfg_func1 &sd_cfg_func2>;
45 bus-width = <4>;
46 disable-wp;
47 cd-gpios = <&gpio10 3 0>;
48 cap-mmc-highspeed;
49 cap-sd-highspeed;
50 };
51
52 /* for Hi6220 */
53
54 dwmmc_1: dwmmc1@f723e000 {
55 compatible = "hisilicon,hi6220-dw-mshc";
56 bus-width = <0x4>;
57 disable-wp;
58 cap-sd-highspeed;
59 sd-uhs-sdr12;
60 sd-uhs-sdr25;
61 card-detect-delay = <200>;
62 hisilicon,peripheral-syscon = <&ao_ctrl>;
63 reg = <0x0 0xf723e000 0x0 0x1000>;
64 interrupts = <0x0 0x49 0x4>;
65 clocks = <&clock_sys HI6220_MMC1_CIUCLK>, <&clock_sys HI6220_MMC1_CLK>;
66 clock-names = "ciu", "biu";
67 cd-gpios = <&gpio1 0 1>;
68 pinctrl-names = "default", "idle";
69 pinctrl-0 = <&sd_pmx_func &sd_clk_cfg_func &sd_cfg_func>;
70 pinctrl-1 = <&sd_pmx_idle &sd_clk_cfg_idle &sd_cfg_idle>;
71 vqmmc-supply = <&ldo7>;
72 vmmc-supply = <&ldo10>;
73 };
74

3. 한국어 전문 번역

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

HiSilicon DesignWare MSHC 확장

1-11

파일 이름은 `k3-dw-mshc.txt`이지만 문서는 HiSilicon 전용 Synopsys DesignWare Mobile Storage Host Controller 확장을 설명합니다. 공통 core 속성은 `synopsys-dw-mshc.txt`를 따릅니다.

DesignWare MSHC는 SoC를 eMMC 또는 SD/MMC storage에 연결하며 여기서는 core controller와 HiSilicon 전용 확장의 차이를 다룹니다.

HiSilicon storage path
HiSilicon SoCSoC-specific extension
Peripheral sysconSoC-specific extension
SoC-specific extensionSynopsys DW MSHC
DW MSHCeMMC / SD / MMC

HiSilicon 확장이 공통 DesignWare MSHC core와 peripheral syscon을 연결합니다.

Hi3660·Hi3670·Hi4511·Hi6220

12-20

필수 `compatible`은 Hi3660에 `hisilicon,hi3660-dw-mshc`, Hi3670에 `hisilicon,hi3670-dw-mshc`와 fallback `hisilicon,hi3660-dw-mshc`, Hi4511에 `hisilicon,hi4511-dw-mshc`, Hi6220에 `hisilicon,hi6220-dw-mshc`입니다.

HiSilicon DW MSHC compatible
SoC호환 문자열
Hi3660hisilicon,hi3660-dw-mshc
Hi3670hisilicon,hi3670-dw-mshc, hisilicon,hi3660-dw-mshc
Hi4511hisilicon,hi4511-dw-mshc
Hi6220hisilicon,hi6220-dw-mshc

SoC별 호환 문자열과 fallback입니다.

Peripheral syscon

21-23

선택 `hisilicon,peripheral-syscon`은 peripheral을 제어하는 syscon의 phandle입니다.

Hi3620·Hi6220 예제

24-73

Hi3620 SoC portion은 `hisilicon,hi4511-dw-mshc`, register `0xfcd03000`, interrupt 16, `ciu`와 `biu` clock을 정의합니다. Board portion은 LDO12 supply, FIFO depth 256, 4-bit bus, card-detect GPIO와 MMC·SD high-speed capability를 더합니다.

Hi6220 예제는 register `0xf723e000`, interrupt `0x49`, 4-bit bus, SD high-speed와 UHS SDR12·SDR25, 200ms card-detect delay, AO control syscon, `ciu`·`biu` clock, default·idle pinctrl, LDO7 I/O supply와 LDO10 card supply를 지정합니다.

/* for Hi3620 */

/* SoC portion */
dwmmc_0: dwmmc0@fcd03000 {
        compatible = "hisilicon,hi4511-dw-mshc";
        reg = <0xfcd03000 0x1000>;
        interrupts = <0 16 4>;
        #address-cells = <1>;
        #size-cells = <0>;
        clocks = <&mmc_clock HI3620_SD_CIUCLK>, <&clock HI3620_DDRC_PER_CLK>;
        clock-names = "ciu", "biu";
};

/* Board portion */
dwmmc0@fcd03000 {
        vmmc-supply = <&ldo12>;
        fifo-depth = <0x100>;
        pinctrl-names = "default";
        pinctrl-0 = <&sd_pmx_pins &sd_cfg_func1 &sd_cfg_func2>;
        bus-width = <4>;
        disable-wp;
        cd-gpios = <&gpio10 3 0>;
        cap-mmc-highspeed;
        cap-sd-highspeed;
};

/* for Hi6220 */

dwmmc_1: dwmmc1@f723e000 {
        compatible = "hisilicon,hi6220-dw-mshc";
        bus-width = <0x4>;
        disable-wp;
        cap-sd-highspeed;
        sd-uhs-sdr12;
        sd-uhs-sdr25;
        card-detect-delay = <200>;
        hisilicon,peripheral-syscon = <&ao_ctrl>;
        reg = <0x0 0xf723e000 0x0 0x1000>;
        interrupts = <0x0 0x49 0x4>;
        clocks = <&clock_sys HI6220_MMC1_CIUCLK>, <&clock_sys HI6220_MMC1_CLK>;
        clock-names = "ciu", "biu";
        cd-gpios = <&gpio1 0 1>;
        pinctrl-names = "default", "idle";
        pinctrl-0 = <&sd_pmx_func &sd_clk_cfg_func &sd_cfg_func>;
        pinctrl-1 = <&sd_pmx_idle &sd_clk_cfg_idle &sd_cfg_idle>;
        vqmmc-supply = <&ldo7>;
        vmmc-supply = <&ldo10>;
};