• Soby Mathew's avatar
    Introduce PSCI Library Interface · cf0b1492
    Soby Mathew authored
    This patch introduces the PSCI Library interface. The major changes
    introduced are as follows:
    
    * Earlier BL31 was responsible for Architectural initialization during cold
    boot via bl31_arch_setup() whereas PSCI was responsible for the same during
    warm boot. This functionality is now consolidated by the PSCI library
    and it does Architectural initialization via psci_arch_setup() during both
    cold and warm boots.
    
    * Earlier the warm boot entry point was always `psci_entrypoint()`. This was
    not flexible enough as a library interface. Now PSCI expects the runtime
    firmware to provide the entry point via `psci_setup()`. A new function
    `bl31_warm_entrypoint` is introduced in BL31 and the previous
    `psci_entrypoint()` is deprecated.
    
    * The `smc_helpers.h` is reorganized to separate the SMC Calling Convention
    defines from the Trusted Firmware SMC helpers. The former is now in a new
    header file `smcc.h` and the SMC helpers are moved to Architecture specific
    header.
    
    * The CPU context ...
    cf0b1492
bl31.mk 2.22 KB