Hi Shawn, > > 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 From experience. One of my customers has a long-term test which works fine without HS200 and has occasional tuning problems with HS200. Of course, we are also debugging why HS200 fails in the first place. Still, there is this question why Linux doesn't fall back to something slower in the case tuning fails. If there is something wrong even at slower speeds, there are still mechanisms to catch that (CRC errors) and we can further bail out from that if they arise. Also, I see quite a ground for spcifically HS200 related problems (some memories not tuning with some controller because of HW bugs), so I don't think we should assume the whole eMMC/SD setup is broken only because the tuning fails. We should report the tuning error, of course. That was the point of my mail. But I am still looking for opinions here. Thanks, Wolfram
Attachment:
signature.asc
Description: PGP signature