public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Laszlo Ersek" <lersek@redhat.com>
To: devel@edk2.groups.io, rebecca@bsdio.com
Cc: Jordan Justen <jordan.l.justen@intel.com>,
	Ard Biesheuvel <ard.biesheuvel@arm.com>
Subject: Re: [edk2-devel] [PATCH 06/13] OvmfPkg: add QemuFwCfgPeiLibNull
Date: Fri, 17 Apr 2020 18:57:55 +0200	[thread overview]
Message-ID: <08096899-e08d-269e-9cd8-96459f783652@redhat.com> (raw)
In-Reply-To: <06ecbeed65ce8487798a2a39a51ed45e899cc9ca.1586991816.git.rebecca@bsdio.com>

On 04/16/20 01:09, Rebecca Cran wrote:
> Add a null PEI implementation of QemuFwCfgLib for bhyve.
> 
> Signed-off-by: Rebecca Cran <rebecca@bsdio.com>
> ---
>  .../QemuFwCfgLibNull/QemuFwCfgPeiLibNull.inf  |  36 ++++++
>  .../QemuFwCfgLibNull/QemuFwCfgPeiNull.c       | 107 ++++++++++++++++++
>  2 files changed, 143 insertions(+)
>  create mode 100644 OvmfPkg/Library/QemuFwCfgLibNull/QemuFwCfgPeiLibNull.inf
>  create mode 100644 OvmfPkg/Library/QemuFwCfgLibNull/QemuFwCfgPeiNull.c

The Null instance is usually not specific to any firmware phase, such as
the PEI phase. The Null instance does nothing, and doing nothing is
possible in any phase.

Please introduce the following files:

- QemuFwCfgLibNull.inf
- QemuFwCfgNull.c

In the INF file, set LIBRARY_CLASS to bare "QemuFwCfgLib"; there is no
need for a module type restriction (such as "|PEIM").

In the C file, implement the APIs listed in the lib class header,
"OvmfPkg/Include/Library/QemuFwCfgLib.h":

- QemuFwCfgIsAvailable -> return constant FALSE directly

- QemuFwCfgSelectItem  -> ASSERT (FALSE)
- QemuFwCfgReadBytes   -> ditto
- QemuFwCfgWriteBytes  -> ditto
- QemuFwCfgSkipBytes   -> ditto

- QemuFwCfgRead8       -> ASSERT (FALSE); return 0
- QemuFwCfgRead16      -> ditto
- QemuFwCfgRead32      -> ditto
- QemuFwCfgRead64      -> ditto

- QemuFwCfgFindFile    -> return RETURN_UNSUPPORTED

Implement no other functions. (Helper functions are not needed.)

(If any of the ASSERTs is tripped in your testing, then we have a bug in
an fw-cfg consumer module, and we should fix that. Basically, an fw-cfg
consumer module is allowed to call QemuFwCfgIsAvailable or
QemuFwCfgFindFile first, and the rest of the functions only if one of
the former succeeds).

Thanks
Laszlo


  reply	other threads:[~2020-04-17 16:58 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-15 23:09 [PATCH 00/13] BhyvePkg - initial patch series for review Rebecca Cran
2020-04-15 23:09 ` [PATCH 01/13] OvmfPkg: Add bhyve support into AcpiTimerLib Rebecca Cran
2020-04-17  8:07   ` [edk2-devel] " Laszlo Ersek
2020-04-15 23:09 ` [PATCH 02/13] OvmfPkg: support powering off bhyve guests Rebecca Cran
2020-04-17  8:55   ` [edk2-devel] " Laszlo Ersek
2020-04-17 18:56     ` Rebecca Cran
2020-04-21 22:14     ` Rebecca Cran
2020-04-22 15:49       ` Laszlo Ersek
2020-04-15 23:09 ` [PATCH 03/13] BhyvePkg: Add BhyveFwCtlLibNull Rebecca Cran
2020-04-15 23:09 ` [PATCH 04/13] OvmfPkg: Add QemuFwCfgS3LibNull Rebecca Cran
2020-04-17 16:37   ` [edk2-devel] " Laszlo Ersek
2020-04-15 23:09 ` [PATCH 05/13] OvmfPkg: Add VBE2 mode info structure to LegacyVgaBios.h Rebecca Cran
2020-04-17 16:43   ` [edk2-devel] " Laszlo Ersek
2020-04-15 23:09 ` [PATCH 06/13] OvmfPkg: add QemuFwCfgPeiLibNull Rebecca Cran
2020-04-17 16:57   ` Laszlo Ersek [this message]
2020-04-15 23:09 ` [PATCH 07/13] OvmfPkg: add QemuFwCfgS3LibNull Rebecca Cran
2020-04-17 17:01   ` [edk2-devel] " Laszlo Ersek
2020-04-15 23:09 ` [PATCH 08/13] Add BhyvePkg, to support the bhyve hypervisor Rebecca Cran
2020-04-15 23:09 ` [PATCH 09/13] OvmfPkg: Add bhyve support to PlatformPei Rebecca Cran
2020-04-15 23:09 ` [PATCH 10/13] OvmfPkg: Add bhyve support to AcpiPlatformDxe Rebecca Cran
2020-04-15 23:09 ` [PATCH 11/13] BhyvePkg: Add InstrincsLib to BhyveFwCtlLib Rebecca Cran
2020-04-15 23:09 ` [PATCH 12/13] BhyvePkg: __attribute__ doesn't exist on MSVC toolchains Rebecca Cran
2020-04-15 23:09 ` [PATCH 13/13] BhyvePkg: fix BhyveSetGraphicsMode call for VS2019 build Rebecca Cran
2020-04-16 20:47 ` [edk2-devel] [PATCH 00/13] BhyvePkg - initial patch series for review Laszlo Ersek
2020-04-16 22:43   ` Laszlo Ersek
2020-04-17  6:46   ` Rebecca Cran
2020-04-17  6:55     ` Rebecca Cran
2020-04-20  9:51       ` Laszlo Ersek
2020-04-20  9:57     ` Laszlo Ersek
2020-04-21 17:12       ` Rebecca Cran
2020-04-17  7:55   ` Laszlo Ersek
2020-04-17 15:31     ` Rebecca Cran

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=08096899-e08d-269e-9cd8-96459f783652@redhat.com \
    --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