1 # SPDX-License-Identifier: GPL-2.0
4 $id: http://devicetree.org/schemas/mmc/rockchip-dw-mshc.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Rockchip designware mobile storage host controller device tree bindings
10 Rockchip uses the Synopsys designware mobile storage host controller
11 to interface a SoC with storage medium such as eMMC or SD/MMC cards.
12 This file documents the combined properties for the core Synopsys dw mshc
13 controller that are not already included in the synopsys-dw-mshc-common.yaml
14 file and the Rockchip specific extensions.
17 - $ref: "synopsys-dw-mshc-common.yaml#"
20 - Heiko Stuebner <heiko@sntech.de>
22 # Everything else is described in the common file
26 # for Rockchip RK2928 and before RK3288
27 - const: rockchip,rk2928-dw-mshc
29 - const: rockchip,rk3288-dw-mshc
33 - rockchip,px30-dw-mshc
35 - rockchip,rk3036-dw-mshc
37 - rockchip,rk3228-dw-mshc
39 - rockchip,rk3308-dw-mshc
41 - rockchip,rk3328-dw-mshc
43 - rockchip,rk3368-dw-mshc
45 - rockchip,rk3399-dw-mshc
47 - rockchip,rv1108-dw-mshc
48 - const: rockchip,rk3288-dw-mshc
60 Handle to "biu" and "ciu" clocks for the bus interface unit clock and
61 the card interface unit clock. If "ciu-drive" and "ciu-sample" are
62 specified in clock-names, it should also contain
63 handles to these clocks.
73 Apart from the clock-names "biu" and "ciu" two more clocks
74 "ciu-drive" and "ciu-sample" are supported. They are used
75 to control the clock phases, "ciu-sample" is required for tuning
78 rockchip,default-sample-phase:
80 - $ref: /schemas/types.yaml#/definitions/uint32
85 The default phase to set "ciu-sample" at probing,
86 low speeds or in case where all phases work at tuning time.
87 If not specified 0 deg will be used.
89 rockchip,desired-num-phases:
91 - $ref: /schemas/types.yaml#/definitions/uint32
96 The desired number of times that the host execute tuning when needed.
97 If not specified, the host will do tuning for 360 times,
98 namely tuning for each degree.
109 #include <dt-bindings/clock/rk3288-cru.h>
110 #include <dt-bindings/interrupt-controller/arm-gic.h>
111 #include <dt-bindings/interrupt-controller/irq.h>
112 sdmmc: mmc@ff0c0000 {
113 compatible = "rockchip,rk3288-dw-mshc";
114 reg = <0x0 0xff0c0000 0x0 0x4000>;
115 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
116 clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
117 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
118 clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
119 resets = <&cru SRST_MMC0>;
120 reset-names = "reset";
121 fifo-depth = <0x100>;
122 max-frequency = <150000000>;