public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Daniel Schaefer" <daniel.schaefer@hpe.com>
To: "Ni, Ray" <ray.ni@intel.com>,
	"devel@edk2.groups.io" <devel@edk2.groups.io>,
	"chengchieh@google.com" <chengchieh@google.com>,
	Trammell Hudson <hudson@trmm.net>
Cc: "Ma, Maurice" <maurice.ma@intel.com>,
	"Dong, Guo" <guo.dong@intel.com>,
	"You, Benjamin" <benjamin.you@intel.com>
Subject: Re: [edk2-devel] [PATCH 0/6] UefiPayloadPkg: LinuxBoot Support in UefiPayload
Date: Thu, 22 Jul 2021 09:58:52 +0800	[thread overview]
Message-ID: <ab252c5b-8e1c-242c-a6ff-a4e8b0769555@hpe.com> (raw)
In-Reply-To: <CO1PR11MB493036D75DF0EDECB2A656D48CE49@CO1PR11MB4930.namprd11.prod.outlook.com>

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.

> 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 <chengchieh@google.com>; Schaefer, Daniel <daniel.schaefer@hpe.com>; Trammell Hudson
>> <hudson@trmm.net>; Ma, Maurice <maurice.ma@intel.com>; Dong, Guo <guo.dong@intel.com>; You, Benjamin
>> <benjamin.you@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 <chengchieh@google.com>
>> Cc: Daniel Schaefer <daniel.schaefer@hpe.com>
>> Cc: Trammell Hudson <hudson@trmm.net>
>> Cc: Maurice Ma <maurice.ma@intel.com>
>> Cc: Guo Dong <guo.dong@intel.com>
>> Cc: Benjamin You <benjamin.you@intel.com>
>> --
>> 2.32.0.402.g57bb445576-goog
>>
>>
>>
>> 
>>
> 

  reply	other threads:[~2021-07-22  1:59 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-21 13:23 [PATCH 0/6] UefiPayloadPkg: LinuxBoot Support in UefiPayload Cheng-Chieh Huang
2021-07-21 13:23 ` [PATCH v1 1/6] UefiPayloadPkg: Add LINUXBOOT payload target Cheng-Chieh Huang
2021-08-04  2:41   ` [edk2-devel] " Guo Dong
2021-07-21 13:23 ` [PATCH v1 2/6] UefiPayloadPkg: Use legacy timer in Linuxboot payload Cheng-Chieh Huang
2021-08-04  2:22   ` [edk2-devel] " Guo Dong
     [not found]   ` <1697F93BEFA774AB.32148@groups.io>
2021-08-04  2:52     ` Guo Dong
2021-07-21 13:23 ` [PATCH v1 3/6] UefiPayloadPkg: Update maximum logic processor to 256 Cheng-Chieh Huang
2021-08-04  2:22   ` [edk2-devel] " Guo Dong
     [not found]   ` <1697F92B243CA725.1963@groups.io>
2021-08-04  2:51     ` Guo Dong
2021-07-21 13:23 ` [PATCH v1 4/6] UefiPayloadPkg: Reserve Payload config in runtime services data Cheng-Chieh Huang
2021-08-04  2:44   ` [edk2-devel] " Guo Dong
2021-08-04  6:23     ` Cheng-Chieh Huang
2021-08-04 13:37       ` Guo Dong
2021-07-21 13:23 ` [PATCH v1 5/6] UefiPayloadPkg: Add DISABLE_MMX_SSE to avoid generating floating points operation Cheng-Chieh Huang
2021-07-21 16:34   ` [edk2-devel] " Michael D Kinney
2021-07-21 17:42     ` Cheng-Chieh Huang
2021-07-22  1:28       ` 回复: " gaoliming
2021-07-22  2:35         ` Cheng-Chieh Huang
2021-07-23 10:28           ` 回复: " gaoliming
2021-07-23 11:16             ` Cheng-Chieh Huang
2021-07-23 16:45               ` Michael D Kinney
2021-07-23 17:17                 ` Cheng-Chieh Huang
2021-07-23 18:38                   ` Michael D Kinney
2021-07-21 13:23 ` [PATCH v1 6/6] UefiPayloadPkg: LinuxBoot: use a text format for the configuration block Cheng-Chieh Huang
2021-07-21 17:09   ` [edk2-devel] " Marvin Häuser
2021-07-22 13:48     ` Cheng-Chieh Huang
2021-08-04  3:00   ` Guo Dong
2021-08-07 13:53     ` Cheng-Chieh Huang
2021-07-22  1:29 ` 回复: [edk2-devel] [PATCH 0/6] UefiPayloadPkg: LinuxBoot Support in UefiPayload gaoliming
2021-07-22  3:40   ` Cheng-Chieh Huang
2021-07-22  1:44 ` Ni, Ray
2021-07-22  1:58   ` Daniel Schaefer [this message]
2021-07-22  2:48     ` Cheng-Chieh Huang

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=ab252c5b-8e1c-242c-a6ff-a4e8b0769555@hpe.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