From: Leif Lindholm <leif.lindholm@linaro.org>
To: Laszlo Ersek <lersek@redhat.com>
Cc: edk2-devel-01 <edk2-devel@ml01.01.org>,
Ard Biesheuvel <ard.biesheuvel@linaro.org>,
Jordan Justen <jordan.l.justen@intel.com>
Subject: Re: [PATCH v2 3/6] ArmVirtPkg, OvmfPkg: QemuFwCfgLib: move DMA-related defs to lib class
Date: Mon, 5 Dec 2016 10:29:47 +0000 [thread overview]
Message-ID: <20161205102947.GF27069@bivouac.eciton.net> (raw)
In-Reply-To: <20161202202059.5061-4-lersek@redhat.com>
On Fri, Dec 02, 2016 at 09:20:56PM +0100, Laszlo Ersek wrote:
> Move the type and macro definitions related to QEMU's DMA-like fw_cfg
> access method to the library class header.
>
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> Cc: Jordan Justen <jordan.l.justen@intel.com>
> Cc: Leif Lindholm <leif.lindholm@linaro.org>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Ard may be back from holiday, but fwiw:
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
> ---
>
> Notes:
> v2:
> - move definitions to lib class header rather than to a new
> IndustryStandard include [Jordan]
> - because ArmVirtPkg's library instance already includes the lib class
> header, the code movement must be atomic and straddle both packages
> - restrict patch to code movement solely; FW_CFG_F_DMA and
> FW_CFG_DMA_CTL_WRITE will be added separately
>
> OvmfPkg/Include/Library/QemuFwCfgLib.h | 19 +++++++++++++++++++
> ArmVirtPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c | 20 --------------------
> 2 files changed, 19 insertions(+), 20 deletions(-)
>
> diff --git a/OvmfPkg/Include/Library/QemuFwCfgLib.h b/OvmfPkg/Include/Library/QemuFwCfgLib.h
> index 7c29422fbd72..40a07456c530 100644
> --- a/OvmfPkg/Include/Library/QemuFwCfgLib.h
> +++ b/OvmfPkg/Include/Library/QemuFwCfgLib.h
> @@ -23,6 +23,14 @@
> //
> #define QEMU_FW_CFG_FNAME_SIZE 56
>
> +//
> +// Macros for the FW_CFG_DMA_ACCESS.Control bitmap (in native encoding).
> +//
> +#define FW_CFG_DMA_CTL_ERROR BIT0
> +#define FW_CFG_DMA_CTL_READ BIT1
> +#define FW_CFG_DMA_CTL_SKIP BIT2
> +#define FW_CFG_DMA_CTL_SELECT BIT3
> +
> typedef enum {
> QemuFwCfgItemSignature = 0x0000,
> QemuFwCfgItemInterfaceVersion = 0x0001,
> @@ -59,6 +67,17 @@ typedef enum {
>
> } FIRMWARE_CONFIG_ITEM;
>
> +//
> +// Communication structure for the DMA access method. All fields are encoded in
> +// big endian.
> +//
> +#pragma pack (1)
> +typedef struct {
> + UINT32 Control;
> + UINT32 Length;
> + UINT64 Address;
> +} FW_CFG_DMA_ACCESS;
> +#pragma pack ()
>
> /**
> Returns a boolean indicating if the firmware configuration interface
> diff --git a/ArmVirtPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c b/ArmVirtPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c
> index 2fd8d9050566..6033a2a14c42 100644
> --- a/ArmVirtPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c
> +++ b/ArmVirtPkg/Library/QemuFwCfgLib/QemuFwCfgLib.c
> @@ -53,26 +53,6 @@ STATIC READ_BYTES_FUNCTION DmaReadBytes;
> //
> STATIC READ_BYTES_FUNCTION *InternalQemuFwCfgReadBytes = MmioReadBytes;
>
> -//
> -// Communication structure for DmaReadBytes(). All fields are encoded in big
> -// endian.
> -//
> -#pragma pack (1)
> -typedef struct {
> - UINT32 Control;
> - UINT32 Length;
> - UINT64 Address;
> -} FW_CFG_DMA_ACCESS;
> -#pragma pack ()
> -
> -//
> -// Macros for the FW_CFG_DMA_ACCESS.Control bitmap (in native encoding).
> -//
> -#define FW_CFG_DMA_CTL_ERROR BIT0
> -#define FW_CFG_DMA_CTL_READ BIT1
> -#define FW_CFG_DMA_CTL_SKIP BIT2
> -#define FW_CFG_DMA_CTL_SELECT BIT3
> -
>
> /**
> Returns a boolean indicating if the firmware configuration interface
> --
> 2.9.2
>
>
next prev parent reply other threads:[~2016-12-05 10:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-02 20:20 [PATCH v2 0/6] OvmfPkg/QemuFwCfgLib: support the DMA-like interface Laszlo Ersek
2016-12-02 20:20 ` [PATCH v2 1/6] ArmVirtPkg/QemuFwCfgLib: remove superfluous InternalQemuFwCfgIsAvailable() Laszlo Ersek
2016-12-02 20:20 ` [PATCH v2 2/6] OvmfPkg/QemuFwCfgLib: move InternalQemuFwCfgIsAvailable() to lib instances Laszlo Ersek
2016-12-02 20:20 ` [PATCH v2 3/6] ArmVirtPkg, OvmfPkg: QemuFwCfgLib: move DMA-related defs to lib class Laszlo Ersek
2016-12-05 10:29 ` Leif Lindholm [this message]
2016-12-02 20:20 ` [PATCH v2 4/6] OvmfPkg/QemuFwCfgLib: extend lib class header with more definitions Laszlo Ersek
2016-12-05 10:30 ` Leif Lindholm
2016-12-02 20:20 ` [PATCH v2 5/6] ArmVirtPkg/QemuFwCfgLib: rebase lib instance to updated lib class header Laszlo Ersek
2016-12-05 10:30 ` Leif Lindholm
2016-12-05 10:51 ` Laszlo Ersek
2016-12-02 20:20 ` [PATCH v2 6/6] OvmfPkg/QemuFwCfgLib: support QEMU's DMA-like fw_cfg access method Laszlo Ersek
2016-12-05 15:37 ` [PATCH v2 0/6] OvmfPkg/QemuFwCfgLib: support the DMA-like interface Ard Biesheuvel
2016-12-05 15:55 ` Laszlo Ersek
2016-12-05 18:28 ` Jordan Justen
2016-12-05 18:55 ` Laszlo Ersek
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-list 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=20161205102947.GF27069@bivouac.eciton.net \
--to=devel@edk2.groups.io \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox