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