Skip to content

Commit 003080c

Browse files
rclaveau-techsuperna9999
authored andcommitted
arm64: dts: amlogic: t7: khadas-vim4: Add MMC nodes
Enable and configure the three MMC controllers for the Khadas VIM4 board: - sd_emmc_a: SDIO interface for the BCM43752 Wi-Fi module - sd_emmc_b: SD card slot - sd_emmc_c: eMMC storage Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Ronald Claveau <linux-kernel-dev@aliel.fr> Link: https://patch.msgid.link/20260326-add-emmc-t7-vim4-v5-9-d3f182b48e9d@aliel.fr Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
1 parent 4d2663f commit 003080c

1 file changed

Lines changed: 88 additions & 0 deletions

File tree

arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515

1616
aliases {
1717
serial0 = &uart_a;
18+
mmc0 = &sd_emmc_c;
19+
mmc1 = &sd_emmc_b;
20+
mmc2 = &sd_emmc_a;
1821
};
1922

2023
memory@0 {
@@ -160,6 +163,91 @@
160163
pinctrl-names = "default";
161164
};
162165

166+
/* SDIO */
167+
&sd_emmc_a {
168+
status = "okay";
169+
pinctrl-0 = <&sdio_pins>;
170+
pinctrl-1 = <&sdio_clk_gate_pins>;
171+
pinctrl-names = "default", "clk-gate";
172+
#address-cells = <1>;
173+
#size-cells = <0>;
174+
175+
bus-width = <4>;
176+
cap-sd-highspeed;
177+
sd-uhs-sdr12;
178+
sd-uhs-sdr25;
179+
sd-uhs-sdr50;
180+
sd-uhs-sdr104;
181+
cap-sdio-irq;
182+
max-frequency = <200000000>;
183+
non-removable;
184+
disable-wp;
185+
no-mmc;
186+
no-sd;
187+
188+
power-domains = <&pwrc PWRC_T7_SDIO_A_ID>;
189+
190+
keep-power-in-suspend;
191+
192+
mmc-pwrseq = <&sdio_pwrseq>;
193+
194+
vmmc-supply = <&vddao_3v3>;
195+
vqmmc-supply = <&vddao_1v8>;
196+
197+
brcmf: wifi@1 {
198+
reg = <1>;
199+
compatible = "brcm,bcm43752-fmac", "brcm,bcm4329-fmac";
200+
};
201+
};
202+
203+
/* SD card */
204+
&sd_emmc_b {
205+
status = "okay";
206+
pinctrl-0 = <&sdcard_pins>;
207+
pinctrl-1 = <&sdcard_clk_gate_pins>;
208+
pinctrl-names = "default", "clk-gate";
209+
210+
bus-width = <4>;
211+
cap-sd-highspeed;
212+
sd-uhs-sdr12;
213+
sd-uhs-sdr25;
214+
sd-uhs-sdr50;
215+
sd-uhs-sdr104;
216+
max-frequency = <200000000>;
217+
disable-wp;
218+
no-sdio;
219+
no-mmc;
220+
221+
power-domains = <&pwrc PWRC_T7_SDIO_B_ID>;
222+
223+
cd-gpios = <&gpio GPIOC_6 GPIO_ACTIVE_LOW>;
224+
vmmc-supply = <&sd_3v3>;
225+
vqmmc-supply = <&vddio_c>;
226+
};
227+
228+
/* eMMC */
229+
&sd_emmc_c {
230+
status = "okay";
231+
pinctrl-0 = <&emmc_ctrl_pins>, <&emmc_data_8b_pins>, <&emmc_ds_pins>;
232+
pinctrl-1 = <&emmc_clk_gate_pins>;
233+
pinctrl-names = "default", "clk-gate";
234+
235+
bus-width = <8>;
236+
cap-mmc-highspeed;
237+
mmc-ddr-1_8v;
238+
mmc-hs200-1_8v;
239+
max-frequency = <200000000>;
240+
disable-wp;
241+
non-removable;
242+
no-sdio;
243+
no-sd;
244+
245+
power-domains = <&pwrc PWRC_T7_EMMC_ID>;
246+
247+
vmmc-supply = <&vddio_3v3>;
248+
vqmmc-supply = <&vddio_1v8>;
249+
};
250+
163251
&uart_a {
164252
status = "okay";
165253
clocks = <&xtal>, <&xtal>, <&xtal>;

0 commit comments

Comments
 (0)