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.hei...@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) -- 2.16.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot