efi: split efisubsystem from efivars
commita9499fa7cd3fd4824a7202d00c766b269fa3bda6
authorTom Gundersen <teg@jklm.no>
Fri, 8 Feb 2013 15:37:06 +0000 (8 15:37 +0000)
committerMatt Fleming <matt.fleming@intel.com>
Wed, 17 Apr 2013 12:27:06 +0000 (17 13:27 +0100)
tree02d1ba3dcf46f6dd1765ef645b223ea0d4758ae6
parentd68772b7c83f4b518be15ae96f4827c8ed02f684
efi: split efisubsystem from efivars

This registers /sys/firmware/efi/{,systab,efivars/} whenever EFI is enabled
and the system is booted with EFI.

This allows
 *) userspace to check for the existence of /sys/firmware/efi as a way
    to determine whether or it is running on an EFI system.
 *) 'mount -t efivarfs none /sys/firmware/efi/efivars' without manually
    loading any modules.

[ Also, move the efivar API into vars.c and unconditionally compile it.
  This allows us to move efivars.c, which now only contains the sysfs
  variable code, into the firmware/efi directory. Note that the efivars.c
  filename is kept to maintain backwards compatability with the old
  efivars.ko module. With this patch it is now possible for efivarfs
  to be built without CONFIG_EFI_VARS - Matt ]

Cc: Seiji Aguchi <seiji.aguchi@hds.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Mike Waychison <mikew@google.com>
Cc: Kay Sievers <kay@vrfy.org>
Cc: Jeremy Kerr <jk@ozlabs.org>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: Chun-Yi Lee <jlee@suse.com>
Cc: Andy Whitcroft <apw@canonical.com>
Cc: Tobias Powalowski <tpowa@archlinux.org>
Signed-off-by: Tom Gundersen <teg@jklm.no>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
MAINTAINERS
drivers/firmware/Makefile
drivers/firmware/efi/Makefile
drivers/firmware/efi/efi.c [new file with mode: 0644]
drivers/firmware/efi/efivars.c [new file with mode: 0644]
drivers/firmware/efi/vars.c [moved from drivers/firmware/efivars.c with 58% similarity]
fs/efivarfs/Kconfig
include/linux/efi.h