[U-Boot] [PATCH v1 0/2] Allow platform specific service handling on PSCI

Ang, Chee Hong chee.hong.ang at intel.com
Tue Mar 5 07:18:23 UTC 2019


On Tue, 2019-02-12 at 00:27 -0800, chee.hong.ang at intel.com wrote:
> From: "Ang, Chee Hong" <chee.hong.ang at intel.com>
Hi Tom/Albert,

       Any comment on this patch ?

Best Regards,
Ang
> 
> Currently u-boot only support standard PSCI functions for power
> management
> and lack of convenient method to allow the users to extend the PSCI
> functions
> to support platform specific services. Most of the u-boot users still
> rely
> on ATF (ARM Trusted Firmware) to handle the standard power management
> and
> platform specific PSCI services.
> The purpose of this patchsets is to allow u-boot users to support
> their
> own platform specific secure SMC/PSCI services without making any
> SMC calls to ATF. This will benefit the users who need to use u-boot
> as the
> only bootloader and secure service provider without relying on ATF.
> 
> Below is a simple code example for adding your own PSCI functions:
> 
> #include <common.h>
> #include <errno.h>
> #include <asm/io.h>
> #include <asm/psci.h>
> #include <asm/secure.h>
> 
> #define PSCI_SMC64_FUNC_ID1	0xC2000001
> #define PSCI_SMC64_FUNC_ID2	0xC2000002
> 
> static void __secure psci_plat_specific_func1(unsigned long
> function_id)
> {
> 	/* Your code for handling the SMC/PSCI platform specific
> service 1 */
> }
> 
> static void __secure psci_plat_specific_func2(unsigned long
> function_id)
> {
> 	/* Your code for handling the SMC/PSCI platform specific
> service 2 */
> }
> 
> DECLARE_SECURE_SVC(plat_specific_func1, PSCI_SMC64_FUNC_ID1,
> 		   psci_plat_specific_func1);
> DECLARE_SECURE_SVC(plat_specific_func2, PSCI_SMC64_FUNC_ID2,
> 		   psci_plat_specific_func2);
> 
> Ang, Chee Hong (1):
>   ARMv8: Disable fwcall when PSCI is enabled
> 
> Chee Hong Ang (1):
>   ARMv8: Allow SiP service extensions on top of PSCI code
> 
>  arch/arm/cpu/armv8/Makefile   |  2 ++
>  arch/arm/cpu/armv8/psci.S     | 33 +++++++++++++++++++++++++++------
>  arch/arm/cpu/armv8/u-boot.lds |  4 ++++
>  arch/arm/include/asm/secure.h | 31 +++++++++++++++++++++++++++++++
>  4 files changed, 64 insertions(+), 6 deletions(-)
> 


More information about the U-Boot mailing list