• Alex Thorlton's avatar
    efi: Convert efi_call_virt() to efi_call_virt_pointer() · 80e75596
    Alex Thorlton authored
    This commit makes a few slight modifications to the efi_call_virt() macro
    to get it to work with function pointers that are stored in locations
    other than efi.systab->runtime, and renames the macro to
    efi_call_virt_pointer().  The majority of the changes here are to pull
    these macros up into header files so that they can be accessed from
    outside of drivers/firmware/efi/runtime-wrappers.c.
    
    The most significant change not directly related to the code move is to
    add an extra "p" argument into the appropriate efi_call macros, and use
    that new argument in place of the, formerly hard-coded,
    efi.systab->runtime pointer.
    
    The last piece of the puzzle was to add an efi_call_virt() macro back into
    drivers/firmware/efi/runtime-wrappers.c to wrap around the new
    efi_call_virt_pointer() macro - this was mainly to keep the code from
    looking too cluttered by adding a bunch of extra references to
    efi.systab->runtime everywhere.
    
    Note that I also broke up the code in the efi_call_virt_pointer() macro a
    bit in the process of moving it.
    Signed-off-by: default avatarAlex Thorlton <athorlton@sgi.com>
    Signed-off-by: default avatarMatt Fleming <matt@codeblueprint.co.uk>
    Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Dimitri Sivanich <sivanich@sgi.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Roy Franz <roy.franz@linaro.org>
    Cc: Russ Anderson <rja@sgi.com>
    Cc: Russell King <linux@armlinux.org.uk>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Will Deacon <will.deacon@arm.com>
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: linux-efi@vger.kernel.org
    Link: http://lkml.kernel.org/r/1466839230-12781-5-git-send-email-matt@codeblueprint.co.ukSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
    80e75596
efi.h 2.32 KB