mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-30 07:39:12 -04:00
ARM: dts: renesas: armadillo800eva: Enable SDHI1
The Armadillo-800EVA board provides an SD card slot and an AWL13 SDIO interface connected to the SDHI1 controller. Routing between these two interfaces is controlled by a mechanical DIP switch and a set of multiplexers. To support this, add: - A fixed 3.3V regulator for SDHI1 power, controlled by PORT16 (G2), - SDHI1 pinmux groups for data, control, and card detection, - A gpio-hog for PORT6 (J5) to control the SDHI1/AWLAN multiplexer. PORT176 (N21) is already configured as output-high in this DTS (via lcd0-mux-hog), routing the SDSLOT2_ENABLE signal to PORT6. Since the hardware includes an external 10k pull-up resistor (R94) on this line, PORT6 is configured as an input to allow the physical DIP switch to determine the routing without SoC interference. Both configurations have been verified: - SD card (CON8): detected as mmcblk1, high-speed SDHC, - SDIO (CON14): detected as mmc1, high-speed SDIO. Signed-off-by: bui duc phuc <phucduc.bui@gmail.com> Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Tested-by: Geert Uytterhoeven <geert+renesas@glider.be> Link: https://patch.msgid.link/20260224074532.60046-1-phucduc.bui@gmail.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
This commit is contained in:
committed by
Geert Uytterhoeven
parent
b2eaf45e12
commit
057c0944e0
@@ -65,6 +65,17 @@ vccq_sdhi0: regulator-vccq-sdhi0 {
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
vcc_sdhi1: regulator-vcc-sdhi1 {
|
||||
compatible = "regulator-fixed";
|
||||
|
||||
regulator-name = "SDHI1 Vcc";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
|
||||
gpio = <&pfc 16 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
reg_5p0v: regulator-5p0v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "fixed-5.0V";
|
||||
@@ -285,6 +296,11 @@ sdhi0_pins: sd0 {
|
||||
function = "sdhi0";
|
||||
};
|
||||
|
||||
sdhi1_pins: sd1 {
|
||||
groups = "sdhi1_data4", "sdhi1_ctrl", "sdhi1_cd", "sdhi1_wp";
|
||||
function = "sdhi1";
|
||||
};
|
||||
|
||||
fsia_pins: sounda {
|
||||
groups = "fsia_sclk_in", "fsia_mclk_out",
|
||||
"fsia_data_in_1", "fsia_data_out_0";
|
||||
@@ -302,6 +318,12 @@ lcd0-mux-hog {
|
||||
gpios = <176 0>;
|
||||
output-high;
|
||||
};
|
||||
|
||||
sdhi1-select-hog {
|
||||
gpio-hog;
|
||||
gpios = <6 0>;
|
||||
input;
|
||||
};
|
||||
};
|
||||
|
||||
&tpu {
|
||||
@@ -336,6 +358,15 @@ &sdhi0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sdhi1 {
|
||||
pinctrl-0 = <&sdhi1_pins>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
vmmc-supply = <&vcc_sdhi1>;
|
||||
bus-width = <4>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&sh_fsi2 {
|
||||
pinctrl-0 = <&fsia_pins>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
Reference in New Issue
Block a user