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