18c2ecf20Sopenharmony_ci* Amlogic Meson6, Meson8 and Meson8b SDIO/MMC controller
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciThe highspeed MMC host controller on Amlogic SoCs provides an interface
48c2ecf20Sopenharmony_cifor MMC, SD, SDIO and SDHC types of memory cards.
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciSupported maximum speeds are the ones of the eMMC standard 4.41 as well
78c2ecf20Sopenharmony_cias the speed of SD standard 2.0.
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciThe hardware provides an internal "mux" which allows up to three slots
108c2ecf20Sopenharmony_cito be controlled. Only one slot can be accessed at a time.
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciRequired properties:
138c2ecf20Sopenharmony_ci - compatible : must be one of
148c2ecf20Sopenharmony_ci	- "amlogic,meson8-sdio"
158c2ecf20Sopenharmony_ci	- "amlogic,meson8b-sdio"
168c2ecf20Sopenharmony_ci	along with the generic "amlogic,meson-mx-sdio"
178c2ecf20Sopenharmony_ci - reg : mmc controller base registers
188c2ecf20Sopenharmony_ci - interrupts : mmc controller interrupt
198c2ecf20Sopenharmony_ci - #address-cells : must be 1
208c2ecf20Sopenharmony_ci - size-cells : must be 0
218c2ecf20Sopenharmony_ci - clocks : phandle to clock providers
228c2ecf20Sopenharmony_ci - clock-names : must contain "core" and "clkin"
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ciRequired child nodes:
258c2ecf20Sopenharmony_ciA node for each slot provided by the MMC controller is required.
268c2ecf20Sopenharmony_ciNOTE: due to a driver limitation currently only one slot (= child node)
278c2ecf20Sopenharmony_ci      is supported!
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ciRequired properties on each child node (= slot):
308c2ecf20Sopenharmony_ci - compatible : must be "mmc-slot" (see mmc.txt within this directory)
318c2ecf20Sopenharmony_ci - reg : the slot (or "port") ID
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ciOptional properties on each child node (= slot):
348c2ecf20Sopenharmony_ci - bus-width : must be 1 or 4 (8-bit bus is not supported)
358c2ecf20Sopenharmony_ci - for cd and all other additional generic mmc parameters
368c2ecf20Sopenharmony_ci   please refer to mmc.txt within this directory
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ciExamples:
398c2ecf20Sopenharmony_ci	mmc@c1108c20 {
408c2ecf20Sopenharmony_ci		compatible = "amlogic,meson8-sdio", "amlogic,meson-mx-sdio";
418c2ecf20Sopenharmony_ci		reg = <0xc1108c20 0x20>;
428c2ecf20Sopenharmony_ci		interrupts = <0 28 1>;
438c2ecf20Sopenharmony_ci		#address-cells = <1>;
448c2ecf20Sopenharmony_ci		#size-cells = <0>;
458c2ecf20Sopenharmony_ci		clocks = <&clkc CLKID_SDIO>, <&clkc CLKID_CLK81>;
468c2ecf20Sopenharmony_ci		clock-names = "core", "clkin";
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci		slot@1 {
498c2ecf20Sopenharmony_ci			compatible = "mmc-slot";
508c2ecf20Sopenharmony_ci			reg = <1>;
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci			bus-width = <4>;
538c2ecf20Sopenharmony_ci		};
548c2ecf20Sopenharmony_ci	};
55