How to activate SDIO on the M2 slot of the i.MX8 LPDDR4 DVK of NXP

Answer

After building a default image for the NXP i.MX8 LPDDR4 DVK device tree is such that M2 slot provides PCIe connectivity.

However, SDIO device tree is generated and available in the image.

The parameter "fdtfile=" in U-Boot needs to be changed.

Change "fdtfile=imx8mp-evk-revb4.dtb" to "fdtfile=imx8mp-evk-usdhc1-m2.dtb" by:

u-boot=> setenv fdtfile imx8mp-evk-revb4-usdhc1-m2.dtb
u-boot=> saveenv

Reference:

root@imx8mp-lpddr4-evk:~# ls /dev/mmc*
/dev/mmcblk2       /dev/mmcblk2boot0  /dev/mmcblk2boot1  /dev/mmcblk2p1     /dev/mmcblk2p2     /dev/mmcblk2rpmb
root@imx8mp-lpddr4-evk:~# mount /dev/mmcblk2p1 /media/
root@imx8mp-lpddr4-evk:~# ls /media | grep usdhc
imx8mp-evk-revb4-usdhc1-m2.dtb
imx8mp-evk-usdhc1-m2.dtb