[U-Boot] [PATCH] arm/PSCI: support PSCI versions greater than 1.0

ATF recently began announcing PSCI v1.1. Since that version is unknown to u-boot, the PSCI device nodes were not updated.
Switch from the case statement to a greater/less-than comparison so that v1.1, as well as future versions, get at least the compatible nodes of known versions.
PSCI v1.1 doesn't seem to have introduced a new corresponding compatible.
Signed-off-by: Andre Heider a.heider@gmail.com --- arch/arm/lib/psci-dt.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/arch/arm/lib/psci-dt.c b/arch/arm/lib/psci-dt.c index 05e0ad6e70..7f228537f6 100644 --- a/arch/arm/lib/psci-dt.c +++ b/arch/arm/lib/psci-dt.c @@ -69,22 +69,25 @@ init_psci_node: #elif defined(CONFIG_ARMV7_PSCI_1_0) || defined(CONFIG_ARMV8_PSCI) psci_ver = ARM_PSCI_VER_1_0; #endif - switch (psci_ver) { - case ARM_PSCI_VER_1_0: + if (psci_ver >= ARM_PSCI_VER_1_0) { tmp = fdt_setprop_string(fdt, nodeoff, "compatible", "arm,psci-1.0"); if (tmp) return tmp; - case ARM_PSCI_VER_0_2: + } + + if (psci_ver >= ARM_PSCI_VER_0_2) { tmp = fdt_appendprop_string(fdt, nodeoff, "compatible", "arm,psci-0.2"); if (tmp) return tmp; - default: + } + +#ifndef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT /* * The Secure firmware framework isn't able to support PSCI version 0.1. */ -#ifndef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT + if (psci_ver < ARM_PSCI_VER_0_2) { tmp = fdt_appendprop_string(fdt, nodeoff, "compatible", "arm,psci"); if (tmp) @@ -105,9 +108,8 @@ init_psci_node: ARM_PSCI_FN_MIGRATE); if (tmp) return tmp; -#endif - break; } +#endif
tmp = fdt_setprop_string(fdt, nodeoff, "method", "smc"); if (tmp)

On Fri, Feb 09, 2018 at 08:10:22AM +0100, Andre Heider wrote:
ATF recently began announcing PSCI v1.1. Since that version is unknown to u-boot, the PSCI device nodes were not updated.
Switch from the case statement to a greater/less-than comparison so that v1.1, as well as future versions, get at least the compatible nodes of known versions.
PSCI v1.1 doesn't seem to have introduced a new corresponding compatible.
Signed-off-by: Andre Heider a.heider@gmail.com
Applied to u-boot/master, thanks!
participants (2)
-
Andre Heider
-
Tom Rini