mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-19 05:31:32 +00:00
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>
This commit is contained in:
parent
d877a6c50e
commit
678382c73a
1 changed files with 9 additions and 7 deletions
|
@ -69,22 +69,25 @@ init_psci_node:
|
||||||
#elif defined(CONFIG_ARMV7_PSCI_1_0) || defined(CONFIG_ARMV8_PSCI)
|
#elif defined(CONFIG_ARMV7_PSCI_1_0) || defined(CONFIG_ARMV8_PSCI)
|
||||||
psci_ver = ARM_PSCI_VER_1_0;
|
psci_ver = ARM_PSCI_VER_1_0;
|
||||||
#endif
|
#endif
|
||||||
switch (psci_ver) {
|
if (psci_ver >= ARM_PSCI_VER_1_0) {
|
||||||
case ARM_PSCI_VER_1_0:
|
|
||||||
tmp = fdt_setprop_string(fdt, nodeoff,
|
tmp = fdt_setprop_string(fdt, nodeoff,
|
||||||
"compatible", "arm,psci-1.0");
|
"compatible", "arm,psci-1.0");
|
||||||
if (tmp)
|
if (tmp)
|
||||||
return tmp;
|
return tmp;
|
||||||
case ARM_PSCI_VER_0_2:
|
}
|
||||||
|
|
||||||
|
if (psci_ver >= ARM_PSCI_VER_0_2) {
|
||||||
tmp = fdt_appendprop_string(fdt, nodeoff,
|
tmp = fdt_appendprop_string(fdt, nodeoff,
|
||||||
"compatible", "arm,psci-0.2");
|
"compatible", "arm,psci-0.2");
|
||||||
if (tmp)
|
if (tmp)
|
||||||
return tmp;
|
return tmp;
|
||||||
default:
|
}
|
||||||
|
|
||||||
|
#ifndef CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT
|
||||||
/*
|
/*
|
||||||
* The Secure firmware framework isn't able to support PSCI version 0.1.
|
* 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,
|
tmp = fdt_appendprop_string(fdt, nodeoff,
|
||||||
"compatible", "arm,psci");
|
"compatible", "arm,psci");
|
||||||
if (tmp)
|
if (tmp)
|
||||||
|
@ -105,9 +108,8 @@ init_psci_node:
|
||||||
ARM_PSCI_FN_MIGRATE);
|
ARM_PSCI_FN_MIGRATE);
|
||||||
if (tmp)
|
if (tmp)
|
||||||
return tmp;
|
return tmp;
|
||||||
#endif
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
tmp = fdt_setprop_string(fdt, nodeoff, "method", "smc");
|
tmp = fdt_setprop_string(fdt, nodeoff, "method", "smc");
|
||||||
if (tmp)
|
if (tmp)
|
||||||
|
|
Loading…
Add table
Reference in a new issue