[PATCH v2] arm64: dts: amlogic: Make mmc host controller interrupts level-sensitive
Jerome Brunet
jbrunet at baylibre.com
Tue Feb 7 01:18:03 PST 2023
On Tue 07 Feb 2023 at 09:22, neil.armstrong at linaro.org wrote:
> On 03/02/2023 09:03, Da Xue wrote:
>> On Fri, Jan 27, 2023 at 10:10 AM Jerome Brunet <jbrunet at baylibre.com> wrote:
>>>
>>>
>>> On Fri 27 Jan 2023 at 14:02, Heiner Kallweit <hkallweit1 at gmail.com> wrote:
>>>
>>>> On 27.01.2023 08:59, Neil Armstrong wrote:
>>>>> Hi,
>>>>>
>>>>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>>>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>>>>> see [0]. This was confirmed to be fixed by using level-triggered
>>>>>> interrupts.
>>>>>> The report was about SDIO. However, as the host controller is the same
>>>>>> for SD and MMC, apply the change to all mmc controller instances.
>>>>>
>>>>> Thanks, I applied it in for-next so it runs on the CI tests.
>>>>>
>>>>>>
>>>>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>>>>
>>>>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>>>>>
>>>>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>>>>> right commit adding the nodes for each family.
>>>>>
>>>> This would be the cleanest option, right. Practically it shouldn't make
>>>> much of a difference. The chosen commit is from 2019, SDIO interrupt
>>>> support has been added just recently, and regarding MMC/SD it seems no
>>>> problems caused by edge-triggered interrupts are known.
>>>
>>> ... Well, I wonder is this might be linked to instabilities seen with
>>> very high speed mode (such as SDR104) and DDR modes. We have seen quite
>>> a lot of those over the years. In any case, if it helps stabilize the
>>> MMC on amlogic, it would be great if it can be picked up by stable.
>> On S905X, I'm still getting SDR104 failures with this change at both
>> 208MHz and 150MHz so maybe not completely.
>> [ 9.071641] mmc1: tuning execution failed: -5
>> [ 9.579765] mmc1: tuning execution failed: -5
>> [ 9.761580] mmc1: tuning execution failed: -5
>> [ 9.871836] mmc1: tuning execution failed: -5
>
> Are these the same before the change ? or did those appear with the change ?
This is a change Da is carrying in his tree.
LePotato is limited to high speed mode @50Mhz in upstream due to
previous instabilities with the SDR modes
The error above shows a systematic failure to find a valid SDR tuning.
It is actually a lot better than an unstable success.
IMO, It's another hint that we need to look at high speed modes again with
this change.
>
>>
>>>
>>>>
>>>>> If the test doesn't report any breakage, I'll probably ask you that.
>>>>>
>>>> Sure.
>>>>
>>>>> Neil
>>>>>
>>>> Heiner
>>>
>>>
>>> _______________________________________________
>>> linux-amlogic mailing list
>>> linux-amlogic at lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/linux-amlogic
More information about the linux-arm-kernel
mailing list