linux/drivers/firmware
Matt Fleming 0c5ed61adb efi/reboot: Allow powering off machines using EFI
Not only can EfiResetSystem() be used to reboot, it can also be used to
power down machines.

By and large, this functionality doesn't work very well across the range
of EFI machines in the wild, so it should definitely only be used as a
last resort. In an ideal world, this wouldn't be needed at all.

Unfortunately, we're starting to see machines where EFI is the *only*
reliable way to power down, and nothing else, not PCI, not ACPI, works.

efi_poweroff_required() should be implemented on a per-architecture
basis, since exactly when we should be using EFI runtime services is a
platform-specific decision. There's no analogue for reboot because each
architecture handles reboot very differently - the x86 code in
particular is pretty complex.

Patches to enable this for specific classes of hardware will be
submitted separately.

Tested-by: Mark Salter <msalter@redhat.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
2014-07-18 21:23:52 +01:00
..
efi efi/reboot: Allow powering off machines using EFI 2014-07-18 21:23:52 +01:00
google firmware: google memconsole driver fixes 2014-02-15 11:30:28 -08:00
dcdbas.c initconst: Fix initconst mistake in dcdbas 2014-02-13 18:14:54 -08:00
dcdbas.h
dell_rbu.c
dmi_scan.c firmware/dmi_scan: generalize for use by other archs 2014-01-23 16:36:57 -08:00
dmi-id.c
dmi-sysfs.c firmware: dmi-sysfs: Remove "dmi" directory on module exit 2013-12-08 18:23:42 -08:00
edd.c
iscsi_ibft_find.c efi: Make 'efi_enabled' a function to query EFI facilities 2013-01-30 11:51:59 -08:00
iscsi_ibft.c iscsi_ibft: Fix finding Broadcom specific ibft sign 2014-05-13 14:54:14 -04:00
Kconfig ACPI and power management updates for 3.14-rc1 2014-01-24 15:51:02 -08:00
Makefile x86/efi: Don't select EFI from certain special ACPI drivers 2013-12-19 21:32:46 +01:00
memmap.c drivers/firmware/memmap.c: use memblock apis for early memory allocations 2014-01-21 16:19:47 -08:00
pcdp.c pcdp: use early_ioremap/early_iounmap to access pcdp table 2012-07-30 17:25:11 -07:00
pcdp.h