Re: [edk2-devel] ArmCallSmc() and SMCCC specification

2024-06-04 Thread Ard Biesheuvel
On Tue, 4 Jun 2024 at 14:37, Marcin Juszkiewicz wrote: > > W dniu 3.06.2024 o 18:47, Leif Lindholm via groups.io pisze: > > >> In 2020 we got version C of spec (and then D, E, F) which allows to > >> use more registers: > >> > >> > Allow R4—R7 (SMC32/HVC32) to be used as result registers. > >> >

Re: [edk2-devel] ArmCallSmc() and SMCCC specification

2024-06-04 Thread Marcin Juszkiewicz
W dniu 3.06.2024 o 18:47, Leif Lindholm via groups.io pisze: In 2020 we got version C of spec (and then D, E, F) which allows to use more registers:  > Allow R4—R7 (SMC32/HVC32) to be used as result registers.  > Allow X8—X17 to be used as parameter registers in SMC64/HVC64.  > Allow X4—X17 to

Re: [edk2-devel] ArmCallSmc() and SMCCC specification

2024-06-03 Thread Leif Lindholm
Hi Marcin. A few high-level thoughs below. On 2024-05-31 08:14, Marcin Juszkiewicz wrote: EDK2/ArmPkg/Library/ArmSmcLib has code to do SMC calls. There are ArmCallSmc[0-3]() functions for up to 3 arguments/results and ArmCallSmc() function which can use 7 arguments and get 4 results back. T

[edk2-devel] ArmCallSmc() and SMCCC specification

2024-05-31 Thread Marcin Juszkiewicz
EDK2/ArmPkg/Library/ArmSmcLib has code to do SMC calls. There are ArmCallSmc[0-3]() functions for up to 3 arguments/results and ArmCallSmc() function which can use 7 arguments and get 4 results back. This implementation looks like version B (Nov 2016) of SMCCC specification [1] with one more