Commit f241340d authored by Ciprian Marian Costea's avatar Ciprian Marian Costea Committed by Shawn Guo
Browse files

arm64: dts: s32g: Add S32G2/S32G3 uSDHC pinmux



Adding 100mhz & 200mhz pinmux support for uSDHC helps to enable
higher speed modes for SD (SDR50, DDR50, SDR104) and
eMMC (such as HS200, HS400/HS400ES).

Signed-off-by: default avatarRadu Pirea <radu-nicolae.pirea@nxp.com>
Signed-off-by: default avatarCiprian Marian Costea <ciprianmarian.costea@oss.nxp.com>
Reviewed-by: default avatarMatthias Brugger <mbrugger@suse.com>
Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
parent 14fce36d
Loading
Loading
Loading
Loading
+153 −0
Original line number Diff line number Diff line
@@ -162,6 +162,159 @@ jtag-grp4 {
					slew-rate = <166>;
				};
			};

			pinctrl_usdhc0: usdhc0grp-pins {
				usdhc0-grp0 {
					pinmux = <0x2e1>,
						 <0x381>;
					output-enable;
					bias-pull-down;
					slew-rate = <150>;
				};

				usdhc0-grp1 {
					pinmux = <0x2f1>,
						 <0x301>,
						 <0x311>,
						 <0x321>,
						 <0x331>,
						 <0x341>,
						 <0x351>,
						 <0x361>,
						 <0x371>;
					output-enable;
					input-enable;
					bias-pull-up;
					slew-rate = <150>;
				};

				usdhc0-grp2 {
					pinmux = <0x391>;
					output-enable;
					slew-rate = <150>;
				};

				usdhc0-grp3 {
					pinmux = <0x3a0>;
					input-enable;
					slew-rate = <150>;
				};

				usdhc0-grp4 {
					pinmux = <0x2032>,
						 <0x2042>,
						 <0x2052>,
						 <0x2062>,
						 <0x2072>,
						 <0x2082>,
						 <0x2092>,
						 <0x20a2>,
						 <0x20b2>,
						 <0x20c2>;
				};
			};

			pinctrl_usdhc0_100mhz: usdhc0-100mhzgrp-pins {
				usdhc0-100mhz-grp0 {
					pinmux = <0x2e1>,
						 <0x381>;
					output-enable;
					bias-pull-down;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp1 {
					pinmux = <0x2f1>,
						 <0x301>,
						 <0x311>,
						 <0x321>,
						 <0x331>,
						 <0x341>,
						 <0x351>,
						 <0x361>,
						 <0x371>;
					output-enable;
					input-enable;
					bias-pull-up;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp2 {
					pinmux = <0x391>;
					output-enable;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp3 {
					pinmux = <0x3a0>;
					input-enable;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp4 {
					pinmux = <0x2032>,
						 <0x2042>,
						 <0x2052>,
						 <0x2062>,
						 <0x2072>,
						 <0x2082>,
						 <0x2092>,
						 <0x20a2>,
						 <0x20b2>,
						 <0x20c2>;
				};
			};

			pinctrl_usdhc0_200mhz: usdhc0-200mhzgrp-pins {
				usdhc0-200mhz-grp0 {
					pinmux = <0x2e1>,
						 <0x381>;
					output-enable;
					bias-pull-down;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp1 {
					pinmux = <0x2f1>,
						 <0x301>,
						 <0x311>,
						 <0x321>,
						 <0x331>,
						 <0x341>,
						 <0x351>,
						 <0x361>,
						 <0x371>;
					output-enable;
					input-enable;
					bias-pull-up;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp2 {
					pinmux = <0x391>;
					output-enable;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp3 {
					pinmux = <0x3a0>;
					input-enable;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp4 {
					pinmux = <0x2032>,
						 <0x2042>,
						 <0x2052>,
						 <0x2062>,
						 <0x2072>,
						 <0x2082>,
						 <0x2092>,
						 <0x20a2>,
						 <0x20b2>,
						 <0x20c2>;
				};
			};
		};

		uart0: serial@401c8000 {
+4 −0
Original line number Diff line number Diff line
@@ -34,6 +34,10 @@ &uart0 {
};

&usdhc0 {
	pinctrl-names = "default", "state_100mhz", "state_200mhz";
	pinctrl-0 = <&pinctrl_usdhc0>;
	pinctrl-1 = <&pinctrl_usdhc0_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc0_200mhz>;
	disable-wp;
	status = "okay";
};
+4 −0
Original line number Diff line number Diff line
@@ -40,6 +40,10 @@ &uart1 {
};

&usdhc0 {
	pinctrl-names = "default", "state_100mhz", "state_200mhz";
	pinctrl-0 = <&pinctrl_usdhc0>;
	pinctrl-1 = <&pinctrl_usdhc0_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc0_200mhz>;
	disable-wp;
	status = "okay";
};
+153 −0
Original line number Diff line number Diff line
@@ -219,6 +219,159 @@ jtag-grp4 {
					slew-rate = <166>;
				};
			};

			pinctrl_usdhc0: usdhc0grp-pins {
				usdhc0-grp0 {
					pinmux = <0x2e1>,
						 <0x381>;
					output-enable;
					bias-pull-down;
					slew-rate = <150>;
				};

				usdhc0-grp1 {
					pinmux = <0x2f1>,
						 <0x301>,
						 <0x311>,
						 <0x321>,
						 <0x331>,
						 <0x341>,
						 <0x351>,
						 <0x361>,
						 <0x371>;
					output-enable;
					input-enable;
					bias-pull-up;
					slew-rate = <150>;
				};

				usdhc0-grp2 {
					pinmux = <0x391>;
					output-enable;
					slew-rate = <150>;
				};

				usdhc0-grp3 {
					pinmux = <0x3a0>;
					input-enable;
					slew-rate = <150>;
				};

				usdhc0-grp4 {
					pinmux = <0x2032>,
						 <0x2042>,
						 <0x2052>,
						 <0x2062>,
						 <0x2072>,
						 <0x2082>,
						 <0x2092>,
						 <0x20a2>,
						 <0x20b2>,
						 <0x20c2>;
				};
			};

			pinctrl_usdhc0_100mhz: usdhc0-100mhzgrp-pins {
				usdhc0-100mhz-grp0 {
					pinmux = <0x2e1>,
						 <0x381>;
					output-enable;
					bias-pull-down;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp1 {
					pinmux = <0x2f1>,
						 <0x301>,
						 <0x311>,
						 <0x321>,
						 <0x331>,
						 <0x341>,
						 <0x351>,
						 <0x361>,
						 <0x371>;
					output-enable;
					input-enable;
					bias-pull-up;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp2 {
					pinmux = <0x391>;
					output-enable;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp3 {
					pinmux = <0x3a0>;
					input-enable;
					slew-rate = <150>;
				};

				usdhc0-100mhz-grp4 {
					pinmux = <0x2032>,
						 <0x2042>,
						 <0x2052>,
						 <0x2062>,
						 <0x2072>,
						 <0x2082>,
						 <0x2092>,
						 <0x20a2>,
						 <0x20b2>,
						 <0x20c2>;
				};
			};

			pinctrl_usdhc0_200mhz: usdhc0-200mhzgrp-pins {
				usdhc0-200mhz-grp0 {
					pinmux = <0x2e1>,
						 <0x381>;
					output-enable;
					bias-pull-down;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp1 {
					pinmux = <0x2f1>,
						 <0x301>,
						 <0x311>,
						 <0x321>,
						 <0x331>,
						 <0x341>,
						 <0x351>,
						 <0x361>,
						 <0x371>;
					output-enable;
					input-enable;
					bias-pull-up;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp2 {
					pinmux = <0x391>;
					output-enable;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp3 {
					pinmux = <0x3a0>;
					input-enable;
					slew-rate = <208>;
				};

				usdhc0-200mhz-grp4 {
					pinmux = <0x2032>,
						 <0x2042>,
						 <0x2052>,
						 <0x2062>,
						 <0x2072>,
						 <0x2082>,
						 <0x2092>,
						 <0x20a2>,
						 <0x20b2>,
						 <0x20c2>;
				};
			};
		};

		uart0: serial@401c8000 {
+4 −0
Original line number Diff line number Diff line
@@ -40,6 +40,10 @@ &uart1 {
};

&usdhc0 {
	pinctrl-names = "default", "state_100mhz", "state_200mhz";
	pinctrl-0 = <&pinctrl_usdhc0>;
	pinctrl-1 = <&pinctrl_usdhc0_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc0_200mhz>;
	bus-width = <8>;
	disable-wp;
	status = "okay";