On 2018/5/4 22:50, Wolfram Sang wrote:
Hi, I really wonder about this: For both, MMC and SD, the MMC core bails out when tuning fails, i.e. we remove the card and report the error to the upper layers. Why don't we fall back to a slower speed which doesn't need tuning instead?
The hardware should at least has a little mergin window for passing the tuning. If it fails, the HW is questionable that how could you know if the following slower data transfer could work reliably. That hides the HW problem more deeply. But if you mean the HW itself can't support, for instance HS200, that's another question for why folks still add these caps to the DT.
I have seen this happening with HW failing to do the tuning. But I also "emulated" it by simply returning -EINVAL at the beginning of the execute_tuning callback of the driver. For people, having their rootfs on an HS200/400 capable eMMC, such a tuning failure means OOPS instead of just a slower speed. Is this intentional? Can we change this? Did I miss something? Thanks, Wolfram
-- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html