However, during the Mint install the internal eMMC starts throwing MMC timeouts and then filesystem read failures, and the installer ultimately dies at the bootloader step (GRUB). In dmesg I’m seeing messages like:
mmc0: mmc hs400 to hs200 failed, error -110
EXT4-fs (mmcblk0pX): unable to read superblock (repeats across multiple partitions)
Has anyone seen this on the C302CA specifically, or have a known workaround (e.g., forcing HS200 / disabling HS400, kernel params, different kernel version, etc.)?
Running Linux permanently from an external USB drive isn’t an acceptable long-term solution for me on a laptop—I’m trying to get a reliable internal install.
Similar problem over here. For what it’s worth, in my case I can install just fine (tested Debian 13 and Ubuntu 25.04). But it’s when booting the freshly installed system that, after about 5 minutes, I get kernel errors from the internal eMMC disk and eventually the root partition gets remounted read-only. See the details in the topic I just opened, (Mmc problems on Asus Flip C302 (UEFI Full ROM, Debian & Ubuntu).
I suspect that this did not happen with earlier kernels because I had used Debian 11 on this machine without problems for some time, although this was with RW_LEGACY and now I have UEFI. So now I am not sure whether this is the kernel’s fault or UEFI’s fault.
Thanks JL — this is very similar to what I’m seeing. On my C302CA units the Mint installer fails at grub-install /dev/mmcblk0, and dmesg shows HS400→HS200 timeouts followed by ext4 superblock read failures on multiple mmc partitions.
Your log is even clearer: mmc_select_hs400 failed (-84) / mmc_hs400_to_hs200 failed (-110) repeats, then cache flush error -110 → I/O error → ext4 journal abort/remount-ro. That could suggest an HS400 stability issue (timing/power/driver/firmware interaction) rather than simple “worn out” eMMC, since life/EOL counters can still look good.
Just in case, I checked the life/EOL of my drive, as you did:
root@asuscb:~# mmc extcsd read /dev/mmcblk0 | egrep -i 'life|eol'
eMMC Life Time Estimation A [EXT_CSD_DEVICE_LIFE_TIME_EST_TYP_A]: 0x01
eMMC Life Time Estimation B [EXT_CSD_DEVICE_LIFE_TIME_EST_TYP_B]: 0x01
eMMC Pre EOL information [EXT_CSD_PRE_EOL_INFO]: 0x01
I get the same output from the kernel (of course):
So the life time is fine (0x01 == 0–10% used) and the EOL is normal (0x01, less than 80% of reserved blocks consumed).
I think the issue has definitely something to to with the eMMC Sampling Tuning, although I’m really out of my depth here. I don’t know if the culprit is the UEFI ROM or the kernel. Searching around for similar problems, some people suggest trying to force the speed to HS200 in the UEFI settings, but I don’t see this setting.
Here’s some older threads that may be useful, although I’m really shooting in the dark here: