forked from Minki/linux
8aa576a8ee
HI3670 SoC is architecturally same as the HI3660 SoC. Hence, the same K3 specific designware driver is reused for HI3670 SoC and the binding is documented with fallback approach for compatible property. Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Reviewed-by: Rob Herring <robh@kernel.org> Signed-off-by: Wei Xu <xuwei5@hisilicon.com>
74 lines
2.3 KiB
Plaintext
74 lines
2.3 KiB
Plaintext
* Hisilicon specific extensions to the Synopsys Designware Mobile
|
|
Storage Host Controller
|
|
|
|
Read synopsys-dw-mshc.txt for more details
|
|
|
|
The Synopsys designware mobile storage host controller is used to interface
|
|
a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
|
|
differences between the core Synopsys dw mshc controller properties described
|
|
by synopsys-dw-mshc.txt and the properties used by the Hisilicon specific
|
|
extensions to the Synopsys Designware Mobile Storage Host Controller.
|
|
|
|
Required Properties:
|
|
|
|
* compatible: should be one of the following.
|
|
- "hisilicon,hi3660-dw-mshc": for controllers with hi3660 specific extensions.
|
|
- "hisilicon,hi3670-dw-mshc", "hisilicon,hi3660-dw-mshc": for controllers
|
|
with hi3670 specific extensions.
|
|
- "hisilicon,hi4511-dw-mshc": for controllers with hi4511 specific extensions.
|
|
- "hisilicon,hi6220-dw-mshc": for controllers with hi6220 specific extensions.
|
|
|
|
Optional Properties:
|
|
- hisilicon,peripheral-syscon: phandle of syscon used to control peripheral.
|
|
|
|
Example:
|
|
|
|
/* 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>;
|
|
};
|