xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mmc/amlogic,meson-mx-sdio.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun* Amlogic Meson6, Meson8 and Meson8b SDIO/MMC controller
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunThe highspeed MMC host controller on Amlogic SoCs provides an interface
4*4882a593Smuzhiyunfor MMC, SD, SDIO and SDHC types of memory cards.
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunSupported maximum speeds are the ones of the eMMC standard 4.41 as well
7*4882a593Smuzhiyunas the speed of SD standard 2.0.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunThe hardware provides an internal "mux" which allows up to three slots
10*4882a593Smuzhiyunto be controlled. Only one slot can be accessed at a time.
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunRequired properties:
13*4882a593Smuzhiyun - compatible : must be one of
14*4882a593Smuzhiyun	- "amlogic,meson8-sdio"
15*4882a593Smuzhiyun	- "amlogic,meson8b-sdio"
16*4882a593Smuzhiyun	along with the generic "amlogic,meson-mx-sdio"
17*4882a593Smuzhiyun - reg : mmc controller base registers
18*4882a593Smuzhiyun - interrupts : mmc controller interrupt
19*4882a593Smuzhiyun - #address-cells : must be 1
20*4882a593Smuzhiyun - size-cells : must be 0
21*4882a593Smuzhiyun - clocks : phandle to clock providers
22*4882a593Smuzhiyun - clock-names : must contain "core" and "clkin"
23*4882a593Smuzhiyun
24*4882a593SmuzhiyunRequired child nodes:
25*4882a593SmuzhiyunA node for each slot provided by the MMC controller is required.
26*4882a593SmuzhiyunNOTE: due to a driver limitation currently only one slot (= child node)
27*4882a593Smuzhiyun      is supported!
28*4882a593Smuzhiyun
29*4882a593SmuzhiyunRequired properties on each child node (= slot):
30*4882a593Smuzhiyun - compatible : must be "mmc-slot" (see mmc.txt within this directory)
31*4882a593Smuzhiyun - reg : the slot (or "port") ID
32*4882a593Smuzhiyun
33*4882a593SmuzhiyunOptional properties on each child node (= slot):
34*4882a593Smuzhiyun - bus-width : must be 1 or 4 (8-bit bus is not supported)
35*4882a593Smuzhiyun - for cd and all other additional generic mmc parameters
36*4882a593Smuzhiyun   please refer to mmc.txt within this directory
37*4882a593Smuzhiyun
38*4882a593SmuzhiyunExamples:
39*4882a593Smuzhiyun	mmc@c1108c20 {
40*4882a593Smuzhiyun		compatible = "amlogic,meson8-sdio", "amlogic,meson-mx-sdio";
41*4882a593Smuzhiyun		reg = <0xc1108c20 0x20>;
42*4882a593Smuzhiyun		interrupts = <0 28 1>;
43*4882a593Smuzhiyun		#address-cells = <1>;
44*4882a593Smuzhiyun		#size-cells = <0>;
45*4882a593Smuzhiyun		clocks = <&clkc CLKID_SDIO>, <&clkc CLKID_CLK81>;
46*4882a593Smuzhiyun		clock-names = "core", "clkin";
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun		slot@1 {
49*4882a593Smuzhiyun			compatible = "mmc-slot";
50*4882a593Smuzhiyun			reg = <1>;
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun			bus-width = <4>;
53*4882a593Smuzhiyun		};
54*4882a593Smuzhiyun	};
55