On Thu, Jul 22, 2021 at 9:59 AM Daniel Schaefer <daniel.schae...@hpe.com> wrote:
> On 7/22/21 9:44 AM, Ni, Ray wrote: > > Cheng-Chieh, > > Thanks for the detailed explanation in doc > https://docs.google.com/document/d/1mU6ICHTh0ot8U45uuRENKOGI8cVzizdyWHGYHpEguVg/edit#heading=h.xzptrog8pyxf > . > > > > My original thought was LinuxBoot is a payload that aims to boot OS. > > But the idea of chaining UefiPayload producing UEFI services is very > brilliant. > > It can be and it is. The main usage of LinuxBoot is to load/boot another > Linux using the kexec mechanism. But in order to be able to boot > Windows, ESXI, ... a UEFI interface is required. > There have been a few proposals and POCs (like implementing UEFI > services in Linux) but UefiPayload is the most practical and easy way to > do it, for now. > > > Have you considered to produce the universal payload interfaces ( > https://universalpayload.github.io/documentation/ ) from LinuxBoot so no > LbParseLib is required? > > I don't think we've looked at it. But we liked it to be a string because > it allows easy forward compatibility and not having to recreate the > structs in higher-level languages like Go. > > Agree to Daniel. In the future, we can look for supporting HOB structure in u-root, but for now, we prefer to stick with the current approach. -- Cheng-Chieh > > Thanks, > > Ray > > > >> -----Original Message----- > >> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of > Cheng-Chieh Huang via groups.io > >> Sent: Wednesday, July 21, 2021 9:23 PM > >> To: devel@edk2.groups.io > >> Cc: Cheng-Chieh Huang <chengch...@google.com>; Schaefer, Daniel < > daniel.schae...@hpe.com>; Trammell Hudson > >> <hud...@trmm.net>; Ma, Maurice <maurice...@intel.com>; Dong, Guo < > guo.d...@intel.com>; You, Benjamin > >> <benjamin....@intel.com> > >> Subject: [edk2-devel] [PATCH 0/6] UefiPayloadPkg: LinuxBoot Support in > UefiPayload > >> > >> These are necessary patches to Support LinuxBoot in UefiPayload. > >> With these paches, we can boot to ESXi and Windows from a linux in QEMU. > >> > >> LinuxBoot README: > >> > https://github.com/linuxboot/edk2/blob/uefipayload/UefiPayloadPkg/README.md > >> > >> PR to tianocore: > >> https://github.com/tianocore/edk2/pull/1820 > >> > >> Cheng-Chieh Huang (5): > >> Add LINUXBOOT payload target > >> Use legacy timer in Linuxboot payload > >> Update maximum logic processor to 256 > >> Reserve Payload config in runtime services data > >> Add DISABLE_MMX_SSE to avoid generating floating points operation > >> > >> Trammell Hudson (1): > >> LinuxBoot: use a text format for the configuration block. > >> > >> UefiPayloadPkg/UefiPayloadPkg.dsc | 29 +- > >> UefiPayloadPkg/UefiPayloadPkg.fdf | 5 + > >> .../Library/LbParseLib/LbParseLib.inf | 39 ++ > >> UefiPayloadPkg/Include/Linuxboot.h | 58 +++ > >> .../Library/LbParseLib/LbParseLib.c | 348 ++++++++++++++++++ > >> .../PciHostBridgeLib/PciHostBridgeSupport.c | 6 +- > >> .../UefiPayloadEntry/UefiPayloadEntry.c | 2 + > >> CryptoPkg/Library/OpensslLib/openssl | 2 +- > >> 8 files changed, 480 insertions(+), 9 deletions(-) > >> create mode 100644 UefiPayloadPkg/Library/LbParseLib/LbParseLib.inf > >> create mode 100644 UefiPayloadPkg/Include/Linuxboot.h > >> create mode 100644 UefiPayloadPkg/Library/LbParseLib/LbParseLib.c > >> > >> Cc: Cheng-Chieh Huang <chengch...@google.com> > >> Cc: Daniel Schaefer <daniel.schae...@hpe.com> > >> Cc: Trammell Hudson <hud...@trmm.net> > >> Cc: Maurice Ma <maurice...@intel.com> > >> Cc: Guo Dong <guo.d...@intel.com> > >> Cc: Benjamin You <benjamin....@intel.com> > >> -- > >> 2.32.0.402.g57bb445576-goog > >> > >> > >> > >> > >> > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#78053): https://edk2.groups.io/g/devel/message/78053 Mute This Topic: https://groups.io/mt/84357532/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-