Skip to content

Commit a4a60f8

Browse files
Luke WangShawn Guo
authored andcommitted
arm64: dts: imx93-11x11-evk: add different usdhc pinctrl for different timing usage
imx93-11x11-evk dts use the strongest driver strength for default(high-speed), 100MHz(SDR50/DDR50/DDR52) and 200MHz(SDR104/HS200/HS400) timing. To make usdhc working appropriately for each timing, add X1 drive strength to default timing and X3 drive strength to 100MHz timing. Reviewed-by: Haibo Chen <haibo.chen@nxp.com> Signed-off-by: Luke Wang <ziniu.wang_1@nxp.com> Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
1 parent 3fa2405 commit a4a60f8

1 file changed

Lines changed: 64 additions & 4 deletions

File tree

arch/arm64/boot/dts/freescale/imx93-11x11-evk.dts

Lines changed: 64 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -273,8 +273,8 @@
273273
&usdhc1 {
274274
pinctrl-names = "default", "state_100mhz", "state_200mhz";
275275
pinctrl-0 = <&pinctrl_usdhc1>;
276-
pinctrl-1 = <&pinctrl_usdhc1>;
277-
pinctrl-2 = <&pinctrl_usdhc1>;
276+
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
277+
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
278278
bus-width = <8>;
279279
non-removable;
280280
status = "okay";
@@ -283,8 +283,8 @@
283283
&usdhc2 {
284284
pinctrl-names = "default", "state_100mhz", "state_200mhz";
285285
pinctrl-0 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
286-
pinctrl-1 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
287-
pinctrl-2 = <&pinctrl_usdhc2>, <&pinctrl_usdhc2_gpio>;
286+
pinctrl-1 = <&pinctrl_usdhc2_100mhz>, <&pinctrl_usdhc2_gpio>;
287+
pinctrl-2 = <&pinctrl_usdhc2_200mhz>, <&pinctrl_usdhc2_gpio>;
288288
cd-gpios = <&gpio3 00 GPIO_ACTIVE_LOW>;
289289
vmmc-supply = <&reg_usdhc2_vmmc>;
290290
bus-width = <4>;
@@ -510,6 +510,40 @@
510510

511511
/* need to config the SION for data and cmd pad, refer to ERR052021 */
512512
pinctrl_usdhc1: usdhc1grp {
513+
fsl,pins = <
514+
MX93_PAD_SD1_CLK__USDHC1_CLK 0x1582
515+
MX93_PAD_SD1_CMD__USDHC1_CMD 0x40001382
516+
MX93_PAD_SD1_DATA0__USDHC1_DATA0 0x40001382
517+
MX93_PAD_SD1_DATA1__USDHC1_DATA1 0x40001382
518+
MX93_PAD_SD1_DATA2__USDHC1_DATA2 0x40001382
519+
MX93_PAD_SD1_DATA3__USDHC1_DATA3 0x40001382
520+
MX93_PAD_SD1_DATA4__USDHC1_DATA4 0x40001382
521+
MX93_PAD_SD1_DATA5__USDHC1_DATA5 0x40001382
522+
MX93_PAD_SD1_DATA6__USDHC1_DATA6 0x40001382
523+
MX93_PAD_SD1_DATA7__USDHC1_DATA7 0x40001382
524+
MX93_PAD_SD1_STROBE__USDHC1_STROBE 0x1582
525+
>;
526+
};
527+
528+
/* need to config the SION for data and cmd pad, refer to ERR052021 */
529+
pinctrl_usdhc1_100mhz: usdhc1-100mhzgrp {
530+
fsl,pins = <
531+
MX93_PAD_SD1_CLK__USDHC1_CLK 0x158e
532+
MX93_PAD_SD1_CMD__USDHC1_CMD 0x4000138e
533+
MX93_PAD_SD1_DATA0__USDHC1_DATA0 0x4000138e
534+
MX93_PAD_SD1_DATA1__USDHC1_DATA1 0x4000138e
535+
MX93_PAD_SD1_DATA2__USDHC1_DATA2 0x4000138e
536+
MX93_PAD_SD1_DATA3__USDHC1_DATA3 0x4000138e
537+
MX93_PAD_SD1_DATA4__USDHC1_DATA4 0x4000138e
538+
MX93_PAD_SD1_DATA5__USDHC1_DATA5 0x4000138e
539+
MX93_PAD_SD1_DATA6__USDHC1_DATA6 0x4000138e
540+
MX93_PAD_SD1_DATA7__USDHC1_DATA7 0x4000138e
541+
MX93_PAD_SD1_STROBE__USDHC1_STROBE 0x158e
542+
>;
543+
};
544+
545+
/* need to config the SION for data and cmd pad, refer to ERR052021 */
546+
pinctrl_usdhc1_200mhz: usdhc1-200mhzgrp {
513547
fsl,pins = <
514548
MX93_PAD_SD1_CLK__USDHC1_CLK 0x15fe
515549
MX93_PAD_SD1_CMD__USDHC1_CMD 0x400013fe
@@ -539,6 +573,32 @@
539573

540574
/* need to config the SION for data and cmd pad, refer to ERR052021 */
541575
pinctrl_usdhc2: usdhc2grp {
576+
fsl,pins = <
577+
MX93_PAD_SD2_CLK__USDHC2_CLK 0x1582
578+
MX93_PAD_SD2_CMD__USDHC2_CMD 0x40001382
579+
MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x40001382
580+
MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x40001382
581+
MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x40001382
582+
MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x40001382
583+
MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e
584+
>;
585+
};
586+
587+
/* need to config the SION for data and cmd pad, refer to ERR052021 */
588+
pinctrl_usdhc2_100mhz: usdhc2-100mhzgrp {
589+
fsl,pins = <
590+
MX93_PAD_SD2_CLK__USDHC2_CLK 0x158e
591+
MX93_PAD_SD2_CMD__USDHC2_CMD 0x4000138e
592+
MX93_PAD_SD2_DATA0__USDHC2_DATA0 0x4000138e
593+
MX93_PAD_SD2_DATA1__USDHC2_DATA1 0x4000138e
594+
MX93_PAD_SD2_DATA2__USDHC2_DATA2 0x4000138e
595+
MX93_PAD_SD2_DATA3__USDHC2_DATA3 0x4000138e
596+
MX93_PAD_SD2_VSELECT__USDHC2_VSELECT 0x51e
597+
>;
598+
};
599+
600+
/* need to config the SION for data and cmd pad, refer to ERR052021 */
601+
pinctrl_usdhc2_200mhz: usdhc2-200mhzgrp {
542602
fsl,pins = <
543603
MX93_PAD_SD2_CLK__USDHC2_CLK 0x15fe
544604
MX93_PAD_SD2_CMD__USDHC2_CMD 0x400013fe

0 commit comments

Comments
 (0)