Open main menu

DAVE Developer's Wiki β

DESK-MX6-L/Pheripherals/SD

< DESK-MX6-L
History
Issue Date Notes

2021/07/16

First DESK-MX6-L release

2022/03/03

DESK-MX6-L 3.0.0 release
2023/04/11 DESK-MX6-L 4.0.0 release


Contents

Peripheral SDEdit

Device tree configurationEdit

Here below an example of device tree configuration used on standard DAVE's kit for the AXELLite SOM:

From imx6qdl-sbcx-revb-common.dtsi:

&usdhc1 {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_usdhc1_sbcx>;
    no-1-8-v;
    keep-power-in-suspend;
    enable-sdio-wakeup;
    cd-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>; /* GPIO3_19 */
    status = "okay";
};
...
...
&iomuxc {
...
...
    usdhc1 {
        pinctrl_usdhc1_sbcx: usdhc1grp-1{
            fsl,pins = <
                MX6QDL_PAD_SD1_CMD__SD1_CMD    0x17060
                MX6QDL_PAD_SD1_CLK__SD1_CLK    0x10060
                MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17060
                MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17060
                MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17060
                MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17060
                /* card detect */
                MX6QDL_PAD_EIM_D19__GPIO3_IO19  0x1b0b0
            >;
        };
    };
...
...
};

The USDHC interface is re-configured on carrier device tree because of the Card Detect pin (which is related to the real board hardware implementation).

Accessing the peripheralEdit

Once initialized, the SD device is mapped to the standard /dev/mmcblk0pX block device, depending on how many partition are created on the SD card.

Linux messages at boot timeEdit

If the microSd card is inserted at boot time, the kernel - once the USDHC interface has been initialized - prints the device information and the partition detected like p1, p2, etc.:

...
...
[    4.561266] sdhci: Secure Digital Host Controller Interface driver
[    4.567479] sdhci: Copyright(c) Pierre Ossman
[    4.571840] sdhci-pltfm: SDHCI platform and OF driver helper
[    4.615639] mmc0: SDHCI controller on 2190000.mmc [2190000.mmc] using ADMA
[    4.664698] mmc0: host does not support reading read-only switch, assuming write-enable
[    4.681355] mmc0: new high speed SDHC card at address aaaa
[    4.687736] mmcblk0: mmc0:aaaa SL32G 29.7 GiB 
...
...
[    4.710742]  mmcblk0: p1 p2
[    5.294335] EXT4-fs (mmcblk0p2): mounting ext3 file system using the ext4 subsystem
[    5.343233] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null). Quota mode: none.
[    8.611380] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null). Quota mode: none.
...
...

Additional informationEdit

If the root file system configuration does not automatically mount the partition, it is possible to mount the device using the following command:

root@desk-mx6:~# mkdir -p /mnt/boot
root@desk-mx6:~# mkdir -p /mnt/rfs
root@desk-mx6:~# mount /dev/mmcblk0p1 /mnt/boot
root@desk-mx6:~# mount /dev/mmcblk0p2 /mnt/rfs
root@desk-mx6:~#

and then the mounted partition are available on the /mnt/boot and /mnt/rfs root file system directories.