Lines Matching full:psci
30 * [PSCI]. The implementation adheres to version 0.2 of the PSCI specification
31 * but also supports v0.1. PSCI standardizes operations such as system reset, CPU
32 * on/off/suspend. PSCI requires a compliant firmware implementation.
34 * The PSCI specification used for this implementation is available at:
39 * - Add support for remaining PSCI calls [this implementation only
70 #include <dev/psci/psci.h>
120 {"arm,psci-1.0", (uintptr_t)&psci_v1_0_init_def},
121 {"arm,psci-0.2", (uintptr_t)&psci_v0_2_init_def},
122 {"arm,psci", (uintptr_t)&psci_v0_1_init_def},
142 printf("No PSCI/SMCCC call function found\n");
160 panic("No PSCI/SMCCC call function set");
175 "psci",
180 EARLY_DRIVER_MODULE(psci, simplebus, psci_fdt_driver, 0, 0,
182 EARLY_DRIVER_MODULE(psci, ofwbus, psci_fdt_driver, 0, 0,
196 printf("psci: PSCI conduit \"%s\" invalid\n", method);
198 printf("psci: PSCI conduit not supplied in the device tree\n");
249 "psci",
254 EARLY_DRIVER_MODULE(psci, acpi, psci_acpi_driver, 0, 0,
270 printf("psci: Unable to map the FADT\n");
290 printf("psci: PSCI conduit not supplied in the device tree\n");
305 BUS_PASS_CPU + BUS_PASS_ORDER_FIRST, "psci", -1);
341 KASSERT(psci_init != NULL, ("PSCI init function cannot be NULL"));
364 /* PSCI version wasn't supported in v0.1. */
457 /* The feature flags were added to PSCI 1.0 */
473 /* PSCI v0.1 and v0.2 both support cpu_on. */
517 /* Only support PSCI 0.1 on FDT */
532 /* PSCI v0.1 doesn't specify function IDs. Get them from DT */
557 device_printf(dev, "PSCI version 0.1 available\n");
569 /* PSCI v0.2 specifies explicit function IDs. */
584 * U-Boot PSCI implementation doesn't have psci_get_version()
593 printf("PSCI get_version() function is not implemented, "
602 device_printf(dev, "PSCI version 0.2 compatible\n");
618 device_printf(dev, "PSCI version number mismatched with DT\n");