Hi, @hugh.breslin, thanks for the pointer to the updates regarding SD card switching!
I’m not sure if this is the same issue, but I’m still having trouble booting from the SD Card. Maybe I’m missing something like a kernel parameter?
I used FlashPro Express to update the board to reference design version 2020.11 (if I understand correctly, the updated HSS are included?).
Now I can see the following line in UART0 during boot:
[1.943274] HSS_MMCInit(): Attempting to select SDCARD ... Passed
Within U-Boot it looks like the SD Card is selected (“Capacity: 119.4 GiB”):
RISC-V # mmcinfo
Device: sd@20008000
Manufacturer ID: 1b
OEM: 534d
Name: ED2S5
Bus Speed: 50000000
Mode: SD High Speed (50MHz)
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 119.4 GiB
Bus Width: 4-bit
Erase Group Size: 512 Bytes
However, when the kernel is loaded, only the eMMC is available, mmcblk0 size is ~8GB (and I can see files which I created on the eMMC before):
root@icicle-kit-es:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 7.3G 0 disk
|-mmcblk0p1 179:1 0 18M 0 part
|-mmcblk0p2 179:2 0 8M 0 part
`-mmcblk0p3 179:3 0 1G 0 part /
mmcblk0boot0 179:8 0 4M 1 disk
mmcblk0boot1 179:16 0 4M 1 disk
So it looks like - at some point between leaving U-Boot / entering the kernel the mux is “switched back” to eMMC?
So what am I missing here in order to have the SD card available during Linux runtime? Is there a special kernel or image required? I’m currently using the version core-image-minimal-dev-icicle-kit-es-sd-20201127112434.rootfs.wic.gz
I’m very thankful for any pointers!