Re: [RFC 0/2] Add workaround for core wake-up on IPI for i.MX8MQ

From: Martin Kepplinger
Date: Wed Oct 30 2019 - 03:34:55 EST


On 30.10.19 07:11, Martin Kepplinger wrote:
> On 23.06.19 13:47, Martin Kepplinger wrote:
>> On 10.06.19 14:13, Abel Vesa wrote:
>>> This is another alternative for the RFC:
>>> https://lkml.org/lkml/2019/3/27/545
>>>
>>> This new workaround proposal is a little bit more hacky but more contained
>>> since everything is done within the irq-imx-gpcv2 driver.
>>>
>>> Basically, it 'hijacks' the registered gic_raise_softirq __smp_cross_call
>>> handler and registers instead a wrapper which calls in the 'hijacked'
>>> handler, after that calling into EL3 which will take care of the actual
>>> wake up. This time, instead of expanding the PSCI ABI, we use a new vendor SIP.
>>>
>>> I also have the patches ready for TF-A but I'll hold on to them until I see if
>>> this has a chance of getting in.
>>
>
> Hi Abel,
>
> Running this workaround doesn't seem to work anymore on 5.4-rcX. Linux
> doesn't boot, with ATF unchanged (includes your workaround changes). I
> can try to add more details to this...
>

When I run this change instead:
https://source.puri.sm/Librem5/linux-next/commit/e59807ae0e236512761b751abc84a9b129d7fcda
(again, with the same ATF) Linux 5.4 boots, but simply doesn't load a
cpuidle driver (cpu-sleep; and cpuidle in /sys/devices/system/cpu/cpu0).

Still, since this is starting with 5.4-rcX, my previous questions stay
the same :)

thanks,
martin