pmaports/device/archived/linux-nextbit-robin/01_psci_err.patch
Aelin cfbc1de3c7
treewide: archive unmaintained packages under device/
Command to reproduce:
grep -L '^maintainer="[^"]\+"$' device/{main,community,testing,downstream}/*/APKBUILD | sed 's/\/APKBUILD//' | xargs -i sh -c 'sed -i "1s;^;# Archived: unmaintained\n;" {}/APKBUILD && mv {} device/archived/ && git add {} && git add device/archived/'

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8883>
2026-06-22 19:26:47 +00:00

38 lines
1.3 KiB
Diff

diff --git a/arch/arm64/kernel/psci.c b/arch/arm64/kernel/psci.c
index f1dbca7..425cf78 100644
--- a/arch/arm64/kernel/psci.c
+++ b/arch/arm64/kernel/psci.c
@@ -113,9 +113,14 @@ static void psci_power_state_unpack(u32 power_state,
* The following two functions are invoked via the invoke_psci_fn pointer
* and will not be inlined, allowing us to piggyback on the AAPCS.
*/
-static noinline int __invoke_psci_fn_hvc(u64 function_id, u64 arg0, u64 arg1,
- u64 arg2)
+static noinline int __invoke_psci_fn_hvc(u64 _function_id, u64 _arg0,
+ u64 _arg1, u64 _arg2)
{
+ register u64 function_id asm("x0") = _function_id;
+ register u64 arg0 asm("x1") = _arg0;
+ register u64 arg1 asm("x2") = _arg1;
+ register u64 arg2 asm("x3") = _arg2;
+
asm volatile(
__asmeq("%0", "x0")
__asmeq("%1", "x1")
@@ -128,9 +133,14 @@ static noinline int __invoke_psci_fn_hvc(u64 function_id, u64 arg0, u64 arg1,
return function_id;
}
-static noinline int __invoke_psci_fn_smc(u64 function_id, u64 arg0, u64 arg1,
- u64 arg2)
+static noinline int __invoke_psci_fn_smc(u64 _function_id, u64 _arg0,
+ u64 _arg1, u64 _arg2)
{
+ register u64 function_id asm("x0") = _function_id;
+ register u64 arg0 asm("x1") = _arg0;
+ register u64 arg1 asm("x2") = _arg1;
+ register u64 arg2 asm("x3") = _arg2;
+
asm volatile(
__asmeq("%0", "x0")
__asmeq("%1", "x1")