aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/psci/psci.c29
1 files changed, 15 insertions, 14 deletions
diff --git a/sys/dev/psci/psci.c b/sys/dev/psci/psci.c
index 4554fa6cd0fd..c5fe0fbc443e 100644
--- a/sys/dev/psci/psci.c
+++ b/sys/dev/psci/psci.c
@@ -288,20 +288,21 @@ psci_v0_2_init(device_t dev)
if (version == PSCI_RETVAL_NOT_SUPPORTED)
return (1);
- if ((PSCI_VER_MAJOR(version) != 0) && (PSCI_VER_MINOR(version) != 2)) {
- device_printf(dev, "PSCI version number mismatched with DT\n");
- return (1);
+ if ((PSCI_VER_MAJOR(version) == 0 && PSCI_VER_MINOR(version) == 2) ||
+ (PSCI_VER_MAJOR(version) == 1 && PSCI_VER_MINOR(version) == 0)) {
+ if (bootverbose)
+ device_printf(dev, "PSCI version 0.2 available\n");
+
+ /*
+ * We only register this for v0.2 since v0.1 doesn't support
+ * system_reset.
+ */
+ EVENTHANDLER_REGISTER(shutdown_final, psci_shutdown, sc,
+ SHUTDOWN_PRI_LAST);
+
+ return (0);
}
- if (bootverbose)
- device_printf(dev, "PSCI version 0.2 available\n");
-
- /*
- * We only register this for v0.2 since v0.1 doesn't support
- * system_reset.
- */
- EVENTHANDLER_REGISTER(shutdown_final, psci_shutdown, sc,
- SHUTDOWN_PRI_LAST);
-
- return (0);
+ device_printf(dev, "PSCI version number mismatched with DT\n");
+ return (1);
}