aboutsummaryrefslogtreecommitdiff
path: root/include/drivers
diff options
context:
space:
mode:
authorSamuel Holland <samuel@sholland.org>2021-01-16 00:56:48 -0600
committerSamuel Holland <samuel@sholland.org>2021-01-24 17:21:31 -0600
commitfe753c97408a92ba245239abd0c056050ae42630 (patch)
treed483c7d1d585ef20f07ca9eac569722db30a4d5c /include/drivers
parentdae98b3a986c69517e59e3a1eb08e2b22225cb2d (diff)
downloadtrusted-firmware-a-fe753c97408a92ba245239abd0c056050ae42630.tar.gz
allwinner: Split native and SCPI-based PSCI implementations
In order to keep SCP firmware as optional, the original, limited native PSCI implementation was kept around as a fallback. This turned out to be a good decision, as some newer SoCs omit the ARISC, and thus cannot run SCP firmware. However, keeping the two implementations in one file makes things unnecessarily messy. First, it is difficult to compile out the SCPI-based implementation where it is not applicable. Second the check is done in each callback, while scpi_available is only updated at boot. This makes the individual callbacks unnecessarily complicated. It is cleaner to provide two entirely separate implementations in two separate files. The native implementation does not support any kind of CPU suspend, so its callbacks are greatly simplified. One function, sunxi_validate_ns_entrypoint, is shared between the two implementations. Finally, the logic for choosing between implementations is kept in a third file, to provide for platforms where only one implementation is applicable and the other is compiled out. Change-Id: I4914f07d8e693dbce218e0e2394bef15c42945f8 Signed-off-by: Samuel Holland <samuel@sholland.org>
Diffstat (limited to 'include/drivers')
0 files changed, 0 insertions, 0 deletions