Fixes for secondary CPU start-up.
Changes to make secondary CPU start-up work on NetBSD, which depends
on some specific behavior in the architecture specification:
- Change the internal swppal() function to take the new VPTPTR and
Procedure Value as explicit arguments. Adapt do_start() to the
new the new swppal() signature.
- In do_start_wait(), extract the new VPTPTR and PV from the relevant
HWRPB fields, which will have been initialized by the OS, and pass
them to swppal().
- In the SWPPAL PAL call, get the value to stuff into PV (r27) from
a4 (r20), and add a comment describing why this implementation detail
is allowed by the architecture specification.
Signed-off-by: Jason Thorpe <thorpej@me.com>
Message-Id: <20210603035317.6814-9-thorpej@me.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2 files changed