Hi,
Title: Did you mean "Enable spin table"?
On 02/05/2023 11:58, Ayan Kumar Halder wrote:
On some of the Arm32 based systems (eg Cortex-R52), smpboot is supported.
Same here.
In these systems PSCI may not always be supported. In case of Cortex-R52, there
is no EL3 or secure mode. Thus, PSCI is not supported as it requires EL3.
Thus, we use 'spin-table' mechanism to boot the secondary cpus. The primary
cpu provides the startup address of the secondary cores. This address is
provided using the 'cpu-release-addr' property.
To support smpboot, we have copied the code from xen/arch/arm/arm64/smpboot.c
I would rather prefer if we don't duplicate the code but instead move
the logic in common code.
with the following changes :-
1. 'enable-method' is an optional property. Refer to the comment in
https://www.kernel.org/doc/Documentation/devicetree/bindings/arm/cpus.yaml
" # On ARM 32-bit systems this property is optional"
Looking at this list, "spin-table" doesn't seem to be supported
for 32-bit systems. Can you point me to the discussion/patch where this
would be added?
2. psci is not currently supported as a value for 'enable-method'.
3. update_identity_mapping() is not invoked as we are not sure if it is
required.
This is not necessary at the moment for 32-bit. This may change in the
future as we make the 32-bit boot code more compliant. For now, I would
not add it.
Cheers,
--
Julien Grall