aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEddie Huang <eddie.huang@mediatek.com>2015-07-16 07:36:20 -0400
committerMatthias Brugger <matthias.bgg@gmail.com>2015-07-21 04:11:21 -0400
commit9719fa5a3840b1b9de7f2c0aae57346cd6570ea7 (patch)
tree605eca77134ad95543fb19c65ce6aa6a89d1a027
parentc02e0e86d3043e63236d7cd2e9e4259f12ac6991 (diff)
arm64: dts: mediatek: Add MT8173 MMC dts
Add node mmc0 ~ mmc3 for mt8173.dtsi Add node mmc0, mmc1 for mt8173-evb.dts Signed-off-by: Chaotian Jing <chaotian.jing@mediatek.com> Signed-off-by: Eddie Huang <eddie.huang@mediatek.com> Reviewed-by: Daniel Kurtz <djkurtz@chromium.org> Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
-rw-r--r--arch/arm64/boot/dts/mediatek/mt8173-evb.dts126
-rw-r--r--arch/arm64/boot/dts/mediatek/mt8173.dtsi44
2 files changed, 170 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/mediatek/mt8173-evb.dts b/arch/arm64/boot/dts/mediatek/mt8173-evb.dts
index 986f25f0d534..4be66cadbc7c 100644
--- a/arch/arm64/boot/dts/mediatek/mt8173-evb.dts
+++ b/arch/arm64/boot/dts/mediatek/mt8173-evb.dts
@@ -64,6 +64,132 @@
64 }; 64 };
65}; 65};
66 66
67&mmc0 {
68 status = "okay";
69 pinctrl-names = "default", "state_uhs";
70 pinctrl-0 = <&mmc0_pins_default>;
71 pinctrl-1 = <&mmc0_pins_uhs>;
72 bus-width = <8>;
73 max-frequency = <50000000>;
74 cap-mmc-highspeed;
75 vmmc-supply = <&mt6397_vemc_3v3_reg>;
76 vqmmc-supply = <&mt6397_vio18_reg>;
77 non-removable;
78};
79
80&mmc1 {
81 status = "okay";
82 pinctrl-names = "default", "state_uhs";
83 pinctrl-0 = <&mmc1_pins_default>;
84 pinctrl-1 = <&mmc1_pins_uhs>;
85 bus-width = <4>;
86 max-frequency = <50000000>;
87 cap-sd-highspeed;
88 sd-uhs-sdr25;
89 cd-gpios = <&pio 132 0>;
90 vmmc-supply = <&mt6397_vmch_reg>;
91 vqmmc-supply = <&mt6397_vmc_reg>;
92};
93
94&pio {
95 mmc0_pins_default: mmc0default {
96 pins_cmd_dat {
97 pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
98 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
99 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
100 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
101 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
102 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
103 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
104 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
105 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
106 input-enable;
107 bias-pull-up;
108 };
109
110 pins_clk {
111 pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
112 bias-pull-down;
113 };
114
115 pins_rst {
116 pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
117 bias-pull-up;
118 };
119 };
120
121 mmc1_pins_default: mmc1default {
122 pins_cmd_dat {
123 pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
124 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
125 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
126 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
127 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
128 input-enable;
129 drive-strength = <MTK_DRIVE_4mA>;
130 bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
131 };
132
133 pins_clk {
134 pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
135 bias-pull-down;
136 drive-strength = <MTK_DRIVE_4mA>;
137 };
138
139 pins_insert {
140 pinmux = <MT8173_PIN_132_I2S0_DATA1__FUNC_GPIO132>;
141 bias-pull-up;
142 };
143 };
144
145 mmc0_pins_uhs: mmc0 {
146 pins_cmd_dat {
147 pinmux = <MT8173_PIN_57_MSDC0_DAT0__FUNC_MSDC0_DAT0>,
148 <MT8173_PIN_58_MSDC0_DAT1__FUNC_MSDC0_DAT1>,
149 <MT8173_PIN_59_MSDC0_DAT2__FUNC_MSDC0_DAT2>,
150 <MT8173_PIN_60_MSDC0_DAT3__FUNC_MSDC0_DAT3>,
151 <MT8173_PIN_61_MSDC0_DAT4__FUNC_MSDC0_DAT4>,
152 <MT8173_PIN_62_MSDC0_DAT5__FUNC_MSDC0_DAT5>,
153 <MT8173_PIN_63_MSDC0_DAT6__FUNC_MSDC0_DAT6>,
154 <MT8173_PIN_64_MSDC0_DAT7__FUNC_MSDC0_DAT7>,
155 <MT8173_PIN_66_MSDC0_CMD__FUNC_MSDC0_CMD>;
156 input-enable;
157 drive-strength = <MTK_DRIVE_2mA>;
158 bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
159 };
160
161 pins_clk {
162 pinmux = <MT8173_PIN_65_MSDC0_CLK__FUNC_MSDC0_CLK>;
163 drive-strength = <MTK_DRIVE_2mA>;
164 bias-pull-down = <MTK_PUPD_SET_R1R0_01>;
165 };
166
167 pins_rst {
168 pinmux = <MT8173_PIN_68_MSDC0_RST___FUNC_MSDC0_RSTB>;
169 bias-pull-up;
170 };
171 };
172
173 mmc1_pins_uhs: mmc1 {
174 pins_cmd_dat {
175 pinmux = <MT8173_PIN_73_MSDC1_DAT0__FUNC_MSDC1_DAT0>,
176 <MT8173_PIN_74_MSDC1_DAT1__FUNC_MSDC1_DAT1>,
177 <MT8173_PIN_75_MSDC1_DAT2__FUNC_MSDC1_DAT2>,
178 <MT8173_PIN_76_MSDC1_DAT3__FUNC_MSDC1_DAT3>,
179 <MT8173_PIN_78_MSDC1_CMD__FUNC_MSDC1_CMD>;
180 input-enable;
181 drive-strength = <MTK_DRIVE_4mA>;
182 bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
183 };
184
185 pins_clk {
186 pinmux = <MT8173_PIN_77_MSDC1_CLK__FUNC_MSDC1_CLK>;
187 drive-strength = <MTK_DRIVE_4mA>;
188 bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
189 };
190 };
191};
192
67&pwrap { 193&pwrap {
68 pmic: mt6397 { 194 pmic: mt6397 {
69 compatible = "mediatek,mt6397"; 195 compatible = "mediatek,mt6397";
diff --git a/arch/arm64/boot/dts/mediatek/mt8173.dtsi b/arch/arm64/boot/dts/mediatek/mt8173.dtsi
index 01033df1a149..d18ee4259ee5 100644
--- a/arch/arm64/boot/dts/mediatek/mt8173.dtsi
+++ b/arch/arm64/boot/dts/mediatek/mt8173.dtsi
@@ -443,6 +443,50 @@
443 assigned-clock-parents = <&topckgen CLK_TOP_APLL1>, 443 assigned-clock-parents = <&topckgen CLK_TOP_APLL1>,
444 <&topckgen CLK_TOP_APLL2>; 444 <&topckgen CLK_TOP_APLL2>;
445 }; 445 };
446
447 mmc0: mmc@11230000 {
448 compatible = "mediatek,mt8173-mmc",
449 "mediatek,mt8135-mmc";
450 reg = <0 0x11230000 0 0x1000>;
451 interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_LOW>;
452 clocks = <&pericfg CLK_PERI_MSDC30_0>,
453 <&topckgen CLK_TOP_MSDC50_0_H_SEL>;
454 clock-names = "source", "hclk";
455 status = "disabled";
456 };
457
458 mmc1: mmc@11240000 {
459 compatible = "mediatek,mt8173-mmc",
460 "mediatek,mt8135-mmc";
461 reg = <0 0x11240000 0 0x1000>;
462 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_LOW>;
463 clocks = <&pericfg CLK_PERI_MSDC30_1>,
464 <&topckgen CLK_TOP_AXI_SEL>;
465 clock-names = "source", "hclk";
466 status = "disabled";
467 };
468
469 mmc2: mmc@11250000 {
470 compatible = "mediatek,mt8173-mmc",
471 "mediatek,mt8135-mmc";
472 reg = <0 0x11250000 0 0x1000>;
473 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_LOW>;
474 clocks = <&pericfg CLK_PERI_MSDC30_2>,
475 <&topckgen CLK_TOP_AXI_SEL>;
476 clock-names = "source", "hclk";
477 status = "disabled";
478 };
479
480 mmc3: mmc@11260000 {
481 compatible = "mediatek,mt8173-mmc",
482 "mediatek,mt8135-mmc";
483 reg = <0 0x11260000 0 0x1000>;
484 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_LOW>;
485 clocks = <&pericfg CLK_PERI_MSDC30_3>,
486 <&topckgen CLK_TOP_MSDC50_2_H_SEL>;
487 clock-names = "source", "hclk";
488 status = "disabled";
489 };
446 }; 490 };
447}; 491};
448 492