I have a cm-3 based Raspberry Pi device that has eMMC and microSD card. I can access the eMMC with rpiboot.exe and see it as a external drive. How can I find out which one is in use? eMMC or MicroSD card?
1 Answer
With Raspberry pi OS if your device supports SD and eMMC concurrently then you'd expect the dmesg logs to differentiate between sd-vcm2823 and mmc-bcm2835 in the logs at which point you will be able to see which mmc device is mounting sd and which is mmc.
If you run 'lsblk' it will list all of the block devices with optional mount points.
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 88.1M 1 loop /snap/core/11996
loop1 7:1 0 25.4M 1 loop /snap/wifi-ap/361
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 256M 0 part /boot
└─sda2 8:2 0 119G 0 part /
mmcblk0 179:0 0 14.6G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part
└─mmcblk0p2 179:2 0 14.3G 0 part
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk
At which point you can pick out which mmc prefix devices from the ones from the dmesg output.
Secondly if you run the 'blkid' command it will list all of the UUID tags for the filesystems.
/dev/mmcblk0p1: LABEL_FATBOOT="boot" LABEL="boot" UUID="71DB-60DA" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="c765ca8b-01"
/dev/mmcblk0p2: LABEL="rootfs" UUID="1d91ff59-94c1-4271-a4d5-fdf142647058" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="c765ca8b-02"
/dev/sda1: LABEL_FATBOOT="boot" LABEL="boot" UUID="71DB-60DA" BLOCK_SIZE="512" TYPE="vfat" PARTUUID="c765ca8b-01"
/dev/sda2: LABEL="rootfs" UUID="8a040015-e14c-47d1-adbc-3b2d0026e6a6" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="c765ca8b-02"
/dev/loop0: TYPE="squashfs"
/dev/loop1: TYPE="squashfs"
If you look in your /boot/cmdline.txt it will have a argument such as 'root=UUID="8a040015-e14c-47d1-adbc-3b2d0026e6a6"' which indicates what the PARTUUID or UUID identifier is.