aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/psci
diff options
context:
space:
mode:
authorAndrew Turner <andrew@FreeBSD.org>2018-01-09 15:57:09 +0000
committerAndrew Turner <andrew@FreeBSD.org>2018-01-09 15:57:09 +0000
commit8ab09f8a4e7e47cc83bcec1b599741f53c6b6172 (patch)
tree422215ab711bd854b147e5a5a93647b5fb812446 /sys/dev/psci
parent4bb409fb8d8757d8c3cc0221d65150a57e444139 (diff)
Notes
Diffstat (limited to 'sys/dev/psci')
-rw-r--r--sys/dev/psci/psci.c13
-rw-r--r--sys/dev/psci/psci.h1
2 files changed, 12 insertions, 2 deletions
diff --git a/sys/dev/psci/psci.c b/sys/dev/psci/psci.c
index 83c9bdb9a1a4..36f5db9427cb 100644
--- a/sys/dev/psci/psci.c
+++ b/sys/dev/psci/psci.c
@@ -314,7 +314,7 @@ psci_attach(device_t dev, psci_initfn_t psci_init)
}
static int
-psci_get_version(struct psci_softc *sc)
+_psci_get_version(struct psci_softc *sc)
{
uint32_t fnid;
@@ -326,6 +326,15 @@ psci_get_version(struct psci_softc *sc)
return (PSCI_RETVAL_NOT_SUPPORTED);
}
+int
+psci_get_version(void)
+{
+
+ if (psci_softc == NULL)
+ return (PSCI_RETVAL_NOT_SUPPORTED);
+ return (_psci_get_version(psci_softc));
+}
+
#ifdef FDT
static int
psci_fdt_callfn(psci_callfn_t *callfn)
@@ -487,7 +496,7 @@ psci_v0_2_init(device_t dev)
sc->psci_fnids[PSCI_FN_SYSTEM_OFF] = PSCI_FNID_SYSTEM_OFF;
sc->psci_fnids[PSCI_FN_SYSTEM_RESET] = PSCI_FNID_SYSTEM_RESET;
- version = psci_get_version(sc);
+ version = _psci_get_version(sc);
if (version == PSCI_RETVAL_NOT_SUPPORTED)
return (1);
diff --git a/sys/dev/psci/psci.h b/sys/dev/psci/psci.h
index af777bb6c380..8f6759137c5d 100644
--- a/sys/dev/psci/psci.h
+++ b/sys/dev/psci/psci.h
@@ -41,6 +41,7 @@ int psci_cpu_on(unsigned long, unsigned long, unsigned long);
int psci_hvc_despatch(register_t, register_t, register_t, register_t);
int psci_smc_despatch(register_t, register_t, register_t, register_t);
+int psci_get_version(void);
/*
* PSCI return codes.