[U-Boot] [PATCH 2/2] sun7i: Add PSCI v0.2 support

Hans de Goede
2014-12-15T15:48:10Z

Hi,

On 15-12-14 16:27, Jan Kiszka wrote:
> On 2014-12-15 12:44, Hans de Goede wrote:
>> Hi,
>>
>> On 15-12-14 12:37, Jan Kiszka wrote:
>>> This extends the PSCI support for the A20 to a dual v0.2 and v0.1
>>> interface. Recent OSes will prefer v0.2, olders will still find the
>>> original interface, just at v0.2 service IDs.
>>>
>>> In addition to the existing services, v0.2 requires us to implement both
>>> system off and reset. At least Linux will make use of them in favor of
>>> its own implementations and, thus, fail if they do not work.
>>
>> Ugh, that may be a problem, as at least power off is highly SoC specific
>> (different pmics, and newer pmics have a different bus) and somewhat board
>> specific.
>
> Yes, that was my first thought as well.
>
>>
>> I think we may avoid adding any board specific stuff for now, since we
>> only want PSCI support on A20 and later and the only boards I know
>> of which are not using the standard axp pmics are all A10 / A13 boards,
>> but this might come back to bite us in the future.
>
> Good - so this is a conceptual ack for this patch?

I guess so I'm still not enthusiastic, but given that there seems no other
way (as you indicate below) and that for now I do not foresee any issues,
as long as we do a different psci.S per SoC (one for each of sun6i sun7i
and sun8i at least), we should be able to make this work.

So yes I can live with this. Note it still does not make me happy though
(not your fault).

>
>>
>> Can't we just return -ENOTSUPPORTED or some such ?
>
> Unfortunately not. I don't know what was the intention of the designed
> of this spec regarding mandatory SYSTEM_OFF and SYSTEM_RESET support.
> Both functions are not supposed to return at all, and the kernel panics
> when you return from SYSTEM_OFF.

Not nice, but nothing we can do to fix the retroactively.

Regards,

Hans