Commit 4d7624fc authored by Lad Prabhakar's avatar Lad Prabhakar Committed by Geert Uytterhoeven
Browse files

arm64: dts: renesas: rzt2h-rzn2h-evk: Enable eMMC



Enable eMMC on RZ/T2H and RZ/N2H EVKs. As SDHI0 can be connected to
either eMMC0/SD0 `SD0_EMMC` macro is added.

Signed-off-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/20250820200659.2048755-8-prabhakar.mahadev-lad.rj@bp.renesas.com


Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
parent 0176c9e8
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -8,6 +8,15 @@
/dts-v1/;

#include "r9a09g077m44.dtsi"

/*
 * SD0 can be connected to either eMMC (IC49) or SD card slot CN31
 * Lets by default enable the eMMC, note we need the below SW settings
 * for eMMC.
 * SW2[1] = ON; SW2[2] = ON
 */
#define SD0_EMMC	1

#include "rzt2h-n2h-evk-common.dtsi"

/ {
+10 −0
Original line number Diff line number Diff line
@@ -8,6 +8,16 @@
/dts-v1/;

#include "r9a09g087m44.dtsi"

/*
 * SD0 can be connected to either eMMC (U33) or SD card slot CN21
 * Lets by default enable the eMMC, note we need the below SW settings
 * for eMMC.
 * DSW5[1] = ON; DSW5[2] = ON
 * DSW17[5] = OFF; DSW17[6] = ON
 */
#define SD0_EMMC       1

#include "rzt2h-n2h-evk-common.dtsi"

/*
+62 −0
Original line number Diff line number Diff line
@@ -13,12 +13,31 @@ / {
	aliases {
		i2c0 = &i2c0;
		i2c1 = &i2c1;
		mmc0 = &sdhi0;
		serial0 = &sci0;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	reg_1p8v: regulator-1p8v {
		compatible = "regulator-fixed";
		regulator-name = "fixed-1.8V";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
		regulator-boot-on;
		regulator-always-on;
	};

	reg_3p3v: regulator-3p3v {
		compatible = "regulator-fixed";
		regulator-name = "fixed-3.3V";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-boot-on;
		regulator-always-on;
	};
};

&extal_clk {
@@ -46,6 +65,34 @@ sci0_pins: sci0-pins {
		pinmux = <RZT2H_PORT_PINMUX(27, 4, 0x14)>,
			 <RZT2H_PORT_PINMUX(27, 5, 0x14)>;
	};

#if SD0_EMMC
	sdhi0-emmc-iovs-hog {
		gpio-hog;
		gpios = <RZT2H_GPIO(2, 6) GPIO_ACTIVE_HIGH>;
		output-high;
		line-name = "SD0_IOVS";
	};
#endif

	sdhi0_emmc_pins: sd0-emmc-group {
		data-pins {
			pinmux = <RZT2H_PORT_PINMUX(12, 2, 0x29)>, /* SD0_DATA0 */
				 <RZT2H_PORT_PINMUX(12, 3, 0x29)>, /* SD0_DATA1 */
				 <RZT2H_PORT_PINMUX(12, 4, 0x29)>, /* SD0_DATA2 */
				 <RZT2H_PORT_PINMUX(12, 5, 0x29)>, /* SD0_DATA3 */
				 <RZT2H_PORT_PINMUX(12, 6, 0x29)>, /* SD0_DATA4 */
				 <RZT2H_PORT_PINMUX(12, 7, 0x29)>, /* SD0_DATA5 */
				 <RZT2H_PORT_PINMUX(13, 0, 0x29)>, /* SD0_DATA6 */
				 <RZT2H_PORT_PINMUX(13, 1, 0x29)>; /* SD0_DATA7 */
		};

		ctrl-pins {
			pinmux = <RZT2H_PORT_PINMUX(12, 0, 0x29)>, /* SD0_CLK */
				 <RZT2H_PORT_PINMUX(12, 1, 0x29)>, /* SD0_CMD */
				 <RZT2H_PORT_PINMUX(13, 2, 0x29)>; /* SD0_RST# */
		};
	};
};

&sci0 {
@@ -53,3 +100,18 @@ &sci0 {
	pinctrl-names = "default";
	status = "okay";
};

#if SD0_EMMC
&sdhi0 {
	pinctrl-0 = <&sdhi0_emmc_pins>;
	pinctrl-1 = <&sdhi0_emmc_pins>;
	pinctrl-names = "default", "state_uhs";
	vmmc-supply = <&reg_3p3v>;
	vqmmc-supply = <&reg_1p8v>;
	bus-width = <8>;
	non-removable;
	mmc-hs200-1_8v;
	fixed-emmc-driver-type = <1>;
	status = "okay";
};
#endif