[PATCH] arm64: zynqmp: Add label to pmu fwnode
Michal Simek
michal.simek at amd.com
Tue Feb 27 12:04:28 CET 2024
On 2/27/24 09:57, Lukas Funke wrote:
> On 27.02.2024 09:45, Michal Simek wrote:
>>
>>
>> On 2/27/24 09:40, lukas.funke-oss at weidmueller.com wrote:
>>> From: Lukas Funke <lukas.funke at weidmueller.com>
>>>
>>> Some zynqmp SoCs (the cg series) only have two cpus. Thus, for some
>>> cases the cpu-affinity has to adapted, because cpu3 and cpu4 are
>>
>> interrupt-affinity right?
>
> Duh. Can you update the message accordingly or should I send a new version?
new version please.
>
>>
>>
>>> missing. By adding a label to the pmu fwnode the cpu affinity can
>>> be adapted in a device specific dt.
>>
>> Why do you need to do it? What problem do you have if you don't change it?
>> It shouldn't be different compare to max_cpus=2 right?
>
> We remove the cpu nodes for our cg devices in order to have a dt that really
> reflects the hardware. This way one does not have to pass additional parameters
> to the kernel. Unfortunately if the cpu nodes are missing dtc complaits about
> them due to the interrupt-affinity property.
>
> Since you seem surprised by this: is this the correct way?
At the end of a day it is up to you which way you choose.
Removing unused cpus and aligning pmu is likely the best static way to go.
max_cpus=2 is another way.
And definitely I would also check that even on CG device you can have unchanged
DT and firmware will just reject psci up request for cpu2/cpu3. It means OS send
request for cpu2/3 up and firmware will reject that request.
Back to your system. I expect you are making product out of it that's why likely
make no sense to keep pmu even in DT. And for removing that node you don't need
to have pmu there at all.
/ {
/delete-node/ pmu;
};
What about this description?
ZynqMP CG series only have two cpus. When cpu3/4 are removed from DT there are
missing references to these nodes in pmu interrupt-affinity DT property. To make
alignment easier provide the label to pmu node for adaption in a device specific DT.
On production systems the whole pmu node should be likely removed or at least
disabled via status property that's why label can be also useful in this case.
Thanks,
Michal
More information about the U-Boot
mailing list