xref: /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mmc/cavium-mmc.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun* Cavium Octeon & ThunderX MMC controller
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunThe highspeed MMC host controller on Caviums SoCs provides an interface
4*4882a593Smuzhiyunfor MMC and SD 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 4.0. Only 3.3 Volt is supported.
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunRequired properties:
10*4882a593Smuzhiyun - compatible : should be one of:
11*4882a593Smuzhiyun   cavium,octeon-6130-mmc
12*4882a593Smuzhiyun   cavium,octeon-7890-mmc
13*4882a593Smuzhiyun   cavium,thunder-8190-mmc
14*4882a593Smuzhiyun   cavium,thunder-8390-mmc
15*4882a593Smuzhiyun   mmc-slot
16*4882a593Smuzhiyun - reg : mmc controller base registers
17*4882a593Smuzhiyun - clocks : phandle
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunOptional properties:
20*4882a593Smuzhiyun - for cd, bus-width and additional generic mmc parameters
21*4882a593Smuzhiyun   please refer to mmc.txt within this directory
22*4882a593Smuzhiyun - cavium,cmd-clk-skew : number of coprocessor clocks before sampling command
23*4882a593Smuzhiyun - cavium,dat-clk-skew : number of coprocessor clocks before sampling data
24*4882a593Smuzhiyun
25*4882a593SmuzhiyunDeprecated properties:
26*4882a593Smuzhiyun- spi-max-frequency : use max-frequency instead
27*4882a593Smuzhiyun- cavium,bus-max-width : use bus-width instead
28*4882a593Smuzhiyun- power-gpios : use vmmc-supply instead
29*4882a593Smuzhiyun- cavium,octeon-6130-mmc-slot : use mmc-slot instead
30*4882a593Smuzhiyun
31*4882a593SmuzhiyunExamples:
32*4882a593Smuzhiyun	mmc_1_4: mmc@1,4 {
33*4882a593Smuzhiyun		compatible = "cavium,thunder-8390-mmc";
34*4882a593Smuzhiyun		reg = <0x0c00 0 0 0 0>;	/* DEVFN = 0x0c (1:4) */
35*4882a593Smuzhiyun		#address-cells = <1>;
36*4882a593Smuzhiyun		#size-cells = <0>;
37*4882a593Smuzhiyun		clocks = <&sclk>;
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun		mmc-slot@0 {
40*4882a593Smuzhiyun			compatible = "mmc-slot";
41*4882a593Smuzhiyun			reg = <0>;
42*4882a593Smuzhiyun			vmmc-supply = <&mmc_supply_3v3>;
43*4882a593Smuzhiyun			max-frequency = <42000000>;
44*4882a593Smuzhiyun			bus-width = <4>;
45*4882a593Smuzhiyun			cap-sd-highspeed;
46*4882a593Smuzhiyun		};
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun		mmc-slot@1 {
49*4882a593Smuzhiyun			compatible = "mmc-slot";
50*4882a593Smuzhiyun			reg = <1>;
51*4882a593Smuzhiyun			vmmc-supply = <&mmc_supply_3v3>;
52*4882a593Smuzhiyun			max-frequency = <42000000>;
53*4882a593Smuzhiyun			bus-width = <8>;
54*4882a593Smuzhiyun			cap-mmc-highspeed;
55*4882a593Smuzhiyun			non-removable;
56*4882a593Smuzhiyun		};
57*4882a593Smuzhiyun	};
58