All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex Thorlton <athorlton@sgi.com>
To: linux-kernel@vger.kernel.org
Cc: Alex Thorlton <athorlton@sgi.com>,
	Matt Fleming <matt@codeblueprint.co.uk>,
	Russ Anderson <rja@sgi.com>, Dimitri Sivanich <sivanich@sgi.com>,
	Russell King <linux@armlinux.org.uk>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Will Deacon <will.deacon@arm.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Mark Rutland <mark.rutland@arm.com>,
	Roy Franz <roy.franz@linaro.org>,
	linux-arm-kernel@lists.infradead.org, linux-efi@vger.kernel.org,
	x86@kernel.org
Subject: [PATCHv2 0/3] x86/UV, x86/efi: Re-factor efi_call_virt for general use
Date: Wed, 15 Jun 2016 14:04:12 -0500	[thread overview]
Message-ID: <1466017455-236934-1-git-send-email-athorlton@sgi.com> (raw)

Hey guys,

This patchset creates a general purpose version of the efi_call_virt
macro that does not assume that the function pointer being passed in is
inside of efi.systab->runtime.  It also fixes up uv_bios_call to use the
new functionality, and does a bit of cleanup in the efi_thunk macro.

Quick breakdown of the patches:

Patch 1) Move necessary macros to locations where we can access them.
	 Remove hard-coded efi.systab reference from efi_call_virt.
	 Rename/create new macros as needed.
Patch 2) Simple change to allow UV code to utilize the new
	 functionality.  Included a detailed explanation of how we got
	 here.
Patch 3) Replace a few bits of the efi_thunk macro with the
	 arch_efi_call_setup/teardown macros.

The first two have been tested on simulators and hardware, but the third
has only been compile-tested.  I don't have any hardware to test that
on.

Updates for v2:

- Fix up arm and arm64 versions of arch_efi_call_virt.  I missed these
  on my first pass 
- Add some more detail to the commit message for the uv_bios_call fix.
- Change the third patch to use the arch_efi_call_setup/teardown macros
  inside of the efi_thunk macro, instead of replacing efi_thunk entirely
  for the CONFIG_EFI_MIXED case.

Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Russ Anderson <rja@sgi.com>
Cc: Dimitri Sivanich <sivanich@sgi.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Roy Franz <roy.franz@linaro.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-efi@vger.kernel.org
Cc: x86@kernel.org

Alex Thorlton (3):
  Convert efi_call_virt to efi_call_virt_pointer
  Update uv_bios_call to use efi_call_virt_pointer
  Update efi_thunk to use the the arch_efi_call_virt* macros

 arch/arm/include/asm/efi.h              |  4 +--
 arch/arm64/include/asm/efi.h            |  4 +--
 arch/x86/include/asm/efi.h              |  9 +++---
 arch/x86/platform/efi/efi_64.c          | 11 ++-----
 arch/x86/platform/uv/bios_uv.c          |  3 +-
 drivers/firmware/efi/runtime-wrappers.c | 53 +++++++--------------------------
 include/linux/efi.h                     | 51 +++++++++++++++++++++++++++++++
 7 files changed, 73 insertions(+), 62 deletions(-)

-- 
1.8.5.6

WARNING: multiple messages have this Message-ID (diff)
From: athorlton@sgi.com (Alex Thorlton)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv2 0/3] x86/UV, x86/efi: Re-factor efi_call_virt for general use
Date: Wed, 15 Jun 2016 14:04:12 -0500	[thread overview]
Message-ID: <1466017455-236934-1-git-send-email-athorlton@sgi.com> (raw)

Hey guys,

This patchset creates a general purpose version of the efi_call_virt
macro that does not assume that the function pointer being passed in is
inside of efi.systab->runtime.  It also fixes up uv_bios_call to use the
new functionality, and does a bit of cleanup in the efi_thunk macro.

Quick breakdown of the patches:

Patch 1) Move necessary macros to locations where we can access them.
	 Remove hard-coded efi.systab reference from efi_call_virt.
	 Rename/create new macros as needed.
Patch 2) Simple change to allow UV code to utilize the new
	 functionality.  Included a detailed explanation of how we got
	 here.
Patch 3) Replace a few bits of the efi_thunk macro with the
	 arch_efi_call_setup/teardown macros.

The first two have been tested on simulators and hardware, but the third
has only been compile-tested.  I don't have any hardware to test that
on.

Updates for v2:

- Fix up arm and arm64 versions of arch_efi_call_virt.  I missed these
  on my first pass 
- Add some more detail to the commit message for the uv_bios_call fix.
- Change the third patch to use the arch_efi_call_setup/teardown macros
  inside of the efi_thunk macro, instead of replacing efi_thunk entirely
  for the CONFIG_EFI_MIXED case.

Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Russ Anderson <rja@sgi.com>
Cc: Dimitri Sivanich <sivanich@sgi.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Roy Franz <roy.franz@linaro.org>
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-efi at vger.kernel.org
Cc: x86 at kernel.org

Alex Thorlton (3):
  Convert efi_call_virt to efi_call_virt_pointer
  Update uv_bios_call to use efi_call_virt_pointer
  Update efi_thunk to use the the arch_efi_call_virt* macros

 arch/arm/include/asm/efi.h              |  4 +--
 arch/arm64/include/asm/efi.h            |  4 +--
 arch/x86/include/asm/efi.h              |  9 +++---
 arch/x86/platform/efi/efi_64.c          | 11 ++-----
 arch/x86/platform/uv/bios_uv.c          |  3 +-
 drivers/firmware/efi/runtime-wrappers.c | 53 +++++++--------------------------
 include/linux/efi.h                     | 51 +++++++++++++++++++++++++++++++
 7 files changed, 73 insertions(+), 62 deletions(-)

-- 
1.8.5.6

             reply	other threads:[~2016-06-15 19:04 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-15 19:04 Alex Thorlton [this message]
2016-06-15 19:04 ` [PATCHv2 0/3] x86/UV, x86/efi: Re-factor efi_call_virt for general use Alex Thorlton
2016-06-15 19:04 ` [PATCH 1/3] Convert efi_call_virt to efi_call_virt_pointer Alex Thorlton
2016-06-15 19:04   ` Alex Thorlton
2016-06-15 19:04 ` [PATCH 2/3] Update uv_bios_call to use efi_call_virt_pointer Alex Thorlton
2016-06-15 19:04   ` Alex Thorlton
2016-06-15 19:04 ` [PATCH 3/3] Update efi_thunk to use the the arch_efi_call_virt* macros Alex Thorlton
2016-06-15 19:04   ` Alex Thorlton
2016-06-15 19:04   ` Alex Thorlton
2016-06-23 12:44 ` [PATCHv2 0/3] x86/UV, x86/efi: Re-factor efi_call_virt for general use Matt Fleming
2016-06-23 12:44   ` Matt Fleming
2016-06-23 12:44   ` Matt Fleming

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1466017455-236934-1-git-send-email-athorlton@sgi.com \
    --to=athorlton@sgi.com \
    --cc=ard.biesheuvel@linaro.org \
    --cc=catalin.marinas@arm.com \
    --cc=hpa@zytor.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mark.rutland@arm.com \
    --cc=matt@codeblueprint.co.uk \
    --cc=mingo@redhat.com \
    --cc=rja@sgi.com \
    --cc=roy.franz@linaro.org \
    --cc=sivanich@sgi.com \
    --cc=tglx@linutronix.de \
    --cc=will.deacon@arm.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.