mach-stm32: Enable SPL_RESET_SUPPORT flag
[oweals/u-boot.git] / arch / arm / lib / psci-dt.c
index 45af037f0a4833cd161cfd82ffdd1f7c78f1252c..825fe1eefb3cc04610f1d5321e837a18258d31df 100644 (file)
@@ -1,11 +1,10 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright 2016 NXP Semiconductor, Inc.
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #include <common.h>
-#include <libfdt.h>
+#include <linux/libfdt.h>
 #include <fdt_support.h>
 #include <linux/sizes.h>
 #include <linux/kernel.h>
@@ -17,7 +16,7 @@
 int fdt_psci(void *fdt)
 {
 #if defined(CONFIG_ARMV7_PSCI) || defined(CONFIG_ARMV8_PSCI) || \
-       defined(CONFIG_FSL_PPA_ARMV8_PSCI)
+       defined(CONFIG_SEC_FIRMWARE_ARMV8_PSCI)
        int nodeoff;
        unsigned int psci_ver = 0;
        int tmp;
@@ -69,22 +68,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 +107,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)