Re: Why no fallback when tuning fails?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2018/5/8 18:44, Wolfram Sang wrote:
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

I can't remember linux-mmc had a discussion about fallback for this,
so I guess it is just because nobody proposed patch(es) for that.
Honestly I thought of fallback last year, not just for tuning failure
but allow it from HS400(es) -> HS200 -> DDR52 -> SDRx etc, but never
start writing one bit for that.

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


Just like your case, could that confuse users that sometimes the
system I/O work slowly but sometime not? some boards luckily work fine
but some boards not, which make the user experience(probably production
quality) not so much consistent? The users seldom check the log to know
what happended but we/developers do, and we still need to help point out
what's wrong here.:)

Another one is, if the tuning works fine mostly, should we retry more
tuning to make is work? What we should do if the re-tuning fails but
tuning when booting works? I guess we need a power cycle and dynamic
speed mode fallback for runtime.

think we should assume the whole eMMC/SD setup is broken only because
the tuning fails. We should report the tuning error, of course.


 Ok, I got your point, and let's wait for some more input.

That was the point of my mail. But I am still looking for opinions here.

Thanks,

    Wolfram



--
Best Regards
Shawn Lin

--
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



[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux