Commit e88cee37 authored by Marek Vasut's avatar Marek Vasut Committed by Alexandre Torgue
Browse files

ARM: dts: stm32: Add alternate pinmux for SDMMC pins on stm32mp15



Add another mux option for SDMMC1_D123DIR direction pins, SDMMC2 pins 4..7,
and SDMMC3 pins PD5_SDMMC3_D2 and PD0_SDMMC3_CMD, this is used on AV96 board.

Signed-off-by: default avatarMarek Vasut <marex@denx.de>
Cc: Alexandre Torgue <alexandre.torgue@st.com>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Maxime Coquelin <mcoquelin.stm32@gmail.com>
Cc: Patrice Chotard <patrice.chotard@st.com>
Cc: Patrick Delaunay <patrick.delaunay@st.com>
Cc: linux-stm32@st-md-mailman.stormreply.com
To: linux-arm-kernel@lists.infradead.org
Signed-off-by: default avatarAlexandre Torgue <alexandre.torgue@st.com>
parent 701f9e65
Loading
Loading
Loading
Loading
+99 −0
Original line number Diff line number Diff line
@@ -1084,6 +1084,30 @@
		};
	};

	sdmmc1_dir_pins_b: sdmmc1-dir-1 {
		pins1 {
			pinmux = <STM32_PINMUX('F', 2, AF11)>, /* SDMMC1_D0DIR */
				 <STM32_PINMUX('E', 14, AF11)>, /* SDMMC1_D123DIR */
				 <STM32_PINMUX('B', 9, AF11)>; /* SDMMC1_CDIR */
			slew-rate = <1>;
			drive-push-pull;
			bias-pull-up;
		};
		pins2{
			pinmux = <STM32_PINMUX('E', 4, AF8)>; /* SDMMC1_CKIN */
			bias-pull-up;
		};
	};

	sdmmc1_dir_sleep_pins_b: sdmmc1-dir-sleep-1 {
		pins {
			pinmux = <STM32_PINMUX('F', 2, ANALOG)>, /* SDMMC1_D0DIR */
				 <STM32_PINMUX('E', 14, ANALOG)>, /* SDMMC1_D123DIR */
				 <STM32_PINMUX('B', 9, ANALOG)>, /* SDMMC1_CDIR */
				 <STM32_PINMUX('E', 4, ANALOG)>; /* SDMMC1_CKIN */
		};
	};

	sdmmc2_b4_pins_a: sdmmc2-b4-0 {
		pins1 {
			pinmux = <STM32_PINMUX('B', 14, AF9)>, /* SDMMC2_D0 */
@@ -1223,6 +1247,27 @@
		};
	};

	sdmmc2_d47_pins_c: sdmmc2-d47-2 {
		pins {
			pinmux = <STM32_PINMUX('A', 8, AF9)>, /* SDMMC2_D4 */
				 <STM32_PINMUX('A', 15, AF9)>, /* SDMMC2_D5 */
				 <STM32_PINMUX('C', 6, AF10)>, /* SDMMC2_D6 */
				 <STM32_PINMUX('C', 7, AF10)>; /* SDMMC2_D7 */
			slew-rate = <1>;
			drive-push-pull;
			bias-pull-up;
		};
	};

	sdmmc2_d47_sleep_pins_c: sdmmc2-d47-sleep-2 {
		pins {
			pinmux = <STM32_PINMUX('A', 8, ANALOG)>, /* SDMMC2_D4 */
				 <STM32_PINMUX('A', 15, ANALOG)>, /* SDMMC2_D5 */
				 <STM32_PINMUX('C', 6, ANALOG)>, /* SDMMC2_D6 */
				 <STM32_PINMUX('C', 7, ANALOG)>; /* SDMMC2_D7 */
		};
	};

	sdmmc3_b4_pins_a: sdmmc3-b4-0 {
		pins1 {
			pinmux = <STM32_PINMUX('F', 0, AF9)>, /* SDMMC3_D0 */
@@ -1277,6 +1322,60 @@
		};
	};

	sdmmc3_b4_pins_b: sdmmc3-b4-1 {
		pins1 {
			pinmux = <STM32_PINMUX('F', 0, AF9)>, /* SDMMC3_D0 */
				 <STM32_PINMUX('F', 4, AF9)>, /* SDMMC3_D1 */
				 <STM32_PINMUX('D', 5, AF10)>, /* SDMMC3_D2 */
				 <STM32_PINMUX('D', 7, AF10)>, /* SDMMC3_D3 */
				 <STM32_PINMUX('D', 0, AF10)>; /* SDMMC3_CMD */
			slew-rate = <1>;
			drive-push-pull;
			bias-pull-up;
		};
		pins2 {
			pinmux = <STM32_PINMUX('G', 15, AF10)>; /* SDMMC3_CK */
			slew-rate = <2>;
			drive-push-pull;
			bias-pull-up;
		};
	};

	sdmmc3_b4_od_pins_b: sdmmc3-b4-od-1 {
		pins1 {
			pinmux = <STM32_PINMUX('F', 0, AF9)>, /* SDMMC3_D0 */
				 <STM32_PINMUX('F', 4, AF9)>, /* SDMMC3_D1 */
				 <STM32_PINMUX('D', 5, AF10)>, /* SDMMC3_D2 */
				 <STM32_PINMUX('D', 7, AF10)>; /* SDMMC3_D3 */
			slew-rate = <1>;
			drive-push-pull;
			bias-pull-up;
		};
		pins2 {
			pinmux = <STM32_PINMUX('G', 15, AF10)>; /* SDMMC3_CK */
			slew-rate = <2>;
			drive-push-pull;
			bias-pull-up;
		};
		pins3 {
			pinmux = <STM32_PINMUX('D', 0, AF10)>; /* SDMMC2_CMD */
			slew-rate = <1>;
			drive-open-drain;
			bias-pull-up;
		};
	};

	sdmmc3_b4_sleep_pins_b: sdmmc3-b4-sleep-1 {
		pins {
			pinmux = <STM32_PINMUX('F', 0, ANALOG)>, /* SDMMC3_D0 */
				 <STM32_PINMUX('F', 4, ANALOG)>, /* SDMMC3_D1 */
				 <STM32_PINMUX('D', 5, ANALOG)>, /* SDMMC3_D2 */
				 <STM32_PINMUX('D', 7, ANALOG)>, /* SDMMC3_D3 */
				 <STM32_PINMUX('G', 15, ANALOG)>, /* SDMMC3_CK */
				 <STM32_PINMUX('D', 0, ANALOG)>; /* SDMMC3_CMD */
		};
	};

	spdifrx_pins_a: spdifrx-0 {
		pins {
			pinmux = <STM32_PINMUX('G', 12, AF8)>; /* SPDIF_IN1 */