* [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table
@ 2018-06-28 3:38 Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16 Bin Meng
` (6 more replies)
0 siblings, 7 replies; 14+ messages in thread
From: Bin Meng @ 2018-06-28 3:38 UTC (permalink / raw)
To: u-boot
On x86 traditional E820 table is used to pass the memory information
to kernel. With EFI loader we can build the EFI memory map from it.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
Changes in v3: None
Changes in v2: None
arch/x86/lib/e820.c | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/arch/x86/lib/e820.c b/arch/x86/lib/e820.c
index 9a9ec99..8b34f67 100644
--- a/arch/x86/lib/e820.c
+++ b/arch/x86/lib/e820.c
@@ -4,6 +4,7 @@
*/
#include <common.h>
+#include <efi_loader.h>
#include <asm/e820.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -34,3 +35,41 @@ __weak unsigned int install_e820_map(unsigned int max_entries,
return 4;
}
+
+#if defined(CONFIG_EFI_LOADER) && !defined(CONFIG_SPL_BUILD)
+void efi_add_known_memory(void)
+{
+ struct e820_entry e820[E820MAX];
+ unsigned int i, num;
+ u64 start, pages;
+ int type;
+
+ num = install_e820_map(ARRAY_SIZE(e820), e820);
+
+ for (i = 0; i < num; ++i) {
+ start = e820[i].addr;
+ pages = ALIGN(e820[i].size, EFI_PAGE_SIZE) >> EFI_PAGE_SHIFT;
+
+ switch (e820[i].type) {
+ case E820_RAM:
+ type = EFI_CONVENTIONAL_MEMORY;
+ break;
+ case E820_RESERVED:
+ type = EFI_RESERVED_MEMORY_TYPE;
+ break;
+ case E820_ACPI:
+ type = EFI_ACPI_RECLAIM_MEMORY;
+ break;
+ case E820_NVS:
+ type = EFI_ACPI_MEMORY_NVS;
+ break;
+ case E820_UNUSABLE:
+ default:
+ type = EFI_UNUSABLE_MEMORY;
+ break;
+ }
+
+ efi_add_memory_map(start, pages, type, false);
+ }
+}
+#endif /* defined(EFI_LOADER) && !defined(CONFIG_SPL_BUILD) */
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
@ 2018-06-28 3:38 ` Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 3/6] efi_loader: Install ACPI configuration tables Bin Meng
` (5 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Bin Meng @ 2018-06-28 3:38 UTC (permalink / raw)
To: u-boot
At present the number of configuration tables is set to 2. By
looking at which tables the Linux EFI stub or iPXE can process,
it looks 16 is a reasonable number.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
Changes in v3: None
Changes in v2:
- new patch "increase number of configuration tables to 16"
lib/efi_loader/efi_boottime.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/efi_loader/efi_boottime.c b/lib/efi_loader/efi_boottime.c
index 50d3115..261d66d 100644
--- a/lib/efi_loader/efi_boottime.c
+++ b/lib/efi_loader/efi_boottime.c
@@ -43,7 +43,7 @@ static bool efi_is_direct_boot = true;
* In most cases we want to pass an FDT to the payload, so reserve one slot of
* config table space for it. The pointer gets populated by do_bootefi_exec().
*/
-static struct efi_configuration_table __efi_runtime_data efi_conf_table[2];
+static struct efi_configuration_table __efi_runtime_data efi_conf_table[16];
#ifdef CONFIG_ARM
/*
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 3/6] efi_loader: Install ACPI configuration tables
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16 Bin Meng
@ 2018-06-28 3:38 ` Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table Bin Meng
` (4 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Bin Meng @ 2018-06-28 3:38 UTC (permalink / raw)
To: u-boot
ACPI tables can be passed via EFI configuration table to an EFI
application. This is only supported on x86 so far.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
Changes in v3:
- Use UEFI spec 2.7 provided ACPI table name
Changes in v2: None
cmd/bootefi.c | 5 +++++
include/efi_api.h | 4 ++++
include/efi_loader.h | 8 ++++++++
lib/efi_loader/Makefile | 1 +
lib/efi_loader/efi_acpi.c | 42 ++++++++++++++++++++++++++++++++++++++++++
5 files changed, 60 insertions(+)
create mode 100644 lib/efi_loader/efi_acpi.c
diff --git a/cmd/bootefi.c b/cmd/bootefi.c
index f55a40d..cd755b6 100644
--- a/cmd/bootefi.c
+++ b/cmd/bootefi.c
@@ -61,6 +61,11 @@ efi_status_t efi_init_obj_list(void)
if (ret != EFI_SUCCESS)
goto out;
#endif
+#ifdef CONFIG_GENERATE_ACPI_TABLE
+ ret = efi_acpi_register();
+ if (ret != EFI_SUCCESS)
+ goto out;
+#endif
#ifdef CONFIG_GENERATE_SMBIOS_TABLE
ret = efi_smbios_register();
if (ret != EFI_SUCCESS)
diff --git a/include/efi_api.h b/include/efi_api.h
index 094be6e..0c3dd3c 100644
--- a/include/efi_api.h
+++ b/include/efi_api.h
@@ -282,6 +282,10 @@ struct efi_runtime_services {
EFI_GUID(0xb1b621d5, 0xf19c, 0x41a5, \
0x83, 0x0b, 0xd9, 0x15, 0x2c, 0x69, 0xaa, 0xe0)
+#define EFI_ACPI_TABLE_GUID \
+ EFI_GUID(0x8868e871, 0xe4f1, 0x11d3, \
+ 0xbc, 0x22, 0x00, 0x80, 0xc7, 0x3c, 0x88, 0x81)
+
#define SMBIOS_TABLE_GUID \
EFI_GUID(0xeb9d2d31, 0x2d88, 0x11d3, \
0x9a, 0x16, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d)
diff --git a/include/efi_loader.h b/include/efi_loader.h
index c66252a..d837e7b 100644
--- a/include/efi_loader.h
+++ b/include/efi_loader.h
@@ -215,6 +215,14 @@ efi_status_t efi_net_register(void);
efi_status_t efi_watchdog_register(void);
/* Called by bootefi to make SMBIOS tables available */
/**
+ * efi_acpi_register() - write out ACPI tables
+ *
+ * Called by bootefi to make ACPI tables available
+ *
+ * @return 0 if OK, -ENOMEM if no memory is available for the tables
+ */
+efi_status_t efi_acpi_register(void);
+/**
* efi_smbios_register() - write out SMBIOS tables
*
* Called by bootefi to make SMBIOS tables available
diff --git a/lib/efi_loader/Makefile b/lib/efi_loader/Makefile
index c6046e3..d6402c4 100644
--- a/lib/efi_loader/Makefile
+++ b/lib/efi_loader/Makefile
@@ -22,4 +22,5 @@ obj-$(CONFIG_LCD) += efi_gop.o
obj-$(CONFIG_DM_VIDEO) += efi_gop.o
obj-$(CONFIG_PARTITIONS) += efi_disk.o
obj-$(CONFIG_NET) += efi_net.o
+obj-$(CONFIG_GENERATE_ACPI_TABLE) += efi_acpi.o
obj-$(CONFIG_GENERATE_SMBIOS_TABLE) += efi_smbios.o
diff --git a/lib/efi_loader/efi_acpi.c b/lib/efi_loader/efi_acpi.c
new file mode 100644
index 0000000..a4e5e53
--- /dev/null
+++ b/lib/efi_loader/efi_acpi.c
@@ -0,0 +1,42 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * EFI application ACPI tables support
+ *
+ * Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
+ */
+
+#include <common.h>
+#include <efi_loader.h>
+#include <asm/acpi_table.h>
+
+static const efi_guid_t acpi_guid = EFI_ACPI_TABLE_GUID;
+
+/*
+ * Install the ACPI table as a configuration table.
+ *
+ * @return status code
+ */
+efi_status_t efi_acpi_register(void)
+{
+ /* Map within the low 32 bits, to allow for 32bit ACPI tables */
+ u64 acpi = U32_MAX;
+ efi_status_t ret;
+
+ /* Reserve 64kiB page for ACPI */
+ ret = efi_allocate_pages(EFI_ALLOCATE_MAX_ADDRESS,
+ EFI_RUNTIME_SERVICES_DATA, 16, &acpi);
+ if (ret != EFI_SUCCESS)
+ return ret;
+
+ /*
+ * Generate ACPI tables - we know that efi_allocate_pages() returns
+ * a 4k-aligned address, so it is safe to assume that
+ * write_acpi_tables() will write the table at that address.
+ */
+ assert(!(acpi & 0xf));
+ write_acpi_tables(acpi);
+
+ /* And expose them to our EFI payload */
+ return efi_install_configuration_table(&acpi_guid,
+ (void *)(uintptr_t)acpi);
+}
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16 Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 3/6] efi_loader: Install ACPI configuration tables Bin Meng
@ 2018-06-28 3:38 ` Bin Meng
2018-06-28 5:48 ` Heinrich Schuchardt
2018-06-28 3:38 ` [U-Boot] [PATCH v3 5/6] x86: doc: Update EFI loader support Bin Meng
` (3 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Bin Meng @ 2018-06-28 3:38 UTC (permalink / raw)
To: u-boot
Output ACPI configuration table if it exists.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
---
Changes in v3:
- Use UEFI spec 2.7 provided ACPI table name
Changes in v2:
- new patch "output ACPI configuration table"
lib/efi_loader/helloworld.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/lib/efi_loader/helloworld.c b/lib/efi_loader/helloworld.c
index 046b46a..3b8de5b 100644
--- a/lib/efi_loader/helloworld.c
+++ b/lib/efi_loader/helloworld.c
@@ -14,6 +14,7 @@
static const efi_guid_t loaded_image_guid = LOADED_IMAGE_GUID;
static const efi_guid_t fdt_guid = EFI_FDT_GUID;
+static const efi_guid_t acpi_guid = EFI_ACPI_TABLE_GUID;
static const efi_guid_t smbios_guid = SMBIOS_TABLE_GUID;
static int hw_memcmp(const void *buf1, const void *buf2, size_t length)
@@ -79,6 +80,9 @@ efi_status_t EFIAPI efi_main(efi_handle_t handle,
if (!hw_memcmp(&systable->tables[i].guid, &fdt_guid,
sizeof(efi_guid_t)))
con_out->output_string(con_out, L"Have device tree\n");
+ if (!hw_memcmp(&systable->tables[i].guid, &acpi_guid,
+ sizeof(efi_guid_t)))
+ con_out->output_string(con_out, L"Have ACPI 2.0 table\n");
if (!hw_memcmp(&systable->tables[i].guid, &smbios_guid,
sizeof(efi_guid_t)))
con_out->output_string(con_out, L"Have SMBIOS table\n");
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 5/6] x86: doc: Update EFI loader support
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
` (2 preceding siblings ...)
2018-06-28 3:38 ` [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table Bin Meng
@ 2018-06-28 3:38 ` Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 6/6] doc: vxworks: Mention chain-loading an x86 kernel via 'bootefi' Bin Meng
` (2 subsequent siblings)
6 siblings, 1 reply; 14+ messages in thread
From: Bin Meng @ 2018-06-28 3:38 UTC (permalink / raw)
To: u-boot
CONFIG_EFI_LOADER is fully supported on x86 now.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Alexander Graf <agraf@suse.de>
---
Changes in v3: None
Changes in v2: None
doc/README.x86 | 29 +++++++++++++++++++++++++++--
1 file changed, 27 insertions(+), 2 deletions(-)
diff --git a/doc/README.x86 b/doc/README.x86
index 9f657df..9162ea1 100644
--- a/doc/README.x86
+++ b/doc/README.x86
@@ -1136,9 +1136,34 @@ EFI Support
U-Boot supports booting as a 32-bit or 64-bit EFI payload, e.g. with UEFI.
This is enabled with CONFIG_EFI_STUB to boot from both 32-bit and 64-bit
UEFI BIOS. U-Boot can also run as an EFI application, with CONFIG_EFI_APP.
-The CONFIG_EFI_LOADER option, where U-Booot provides an EFI environment to
+The CONFIG_EFI_LOADER option, where U-Boot provides an EFI environment to
the kernel (i.e. replaces UEFI completely but provides the same EFI run-time
-services) is not currently supported on x86.
+services) is supported too. For example, we can even use 'bootefi' command
+to load a 'u-boot-payload.efi', see below test logs on QEMU.
+
+ => load ide 0 3000000 u-boot-payload.efi
+ 489787 bytes read in 138 ms (3.4 MiB/s)
+ => bootefi 3000000
+ Scanning disk ide.blk#0...
+ Found 2 disks
+ WARNING: booting without device tree
+ ## Starting EFI application at 03000000 ...
+ U-Boot EFI Payload
+
+
+ U-Boot 2018.07-rc2 (Jun 23 2018 - 17:12:58 +0800)
+
+ CPU: x86_64, vendor AMD, device 663h
+ DRAM: 2 GiB
+ MMC:
+ Video: 1024x768x32
+ Model: EFI x86 Payload
+ Net: e1000: 52:54:00:12:34:56
+
+ Warning: e1000#0 using MAC address from ROM
+ eth0: e1000#0
+ No controllers found
+ Hit any key to stop autoboot: 0
See README.u-boot_on_efi and README.uefi for details of EFI support in U-Boot.
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 6/6] doc: vxworks: Mention chain-loading an x86 kernel via 'bootefi'
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
` (3 preceding siblings ...)
2018-06-28 3:38 ` [U-Boot] [PATCH v3 5/6] x86: doc: Update EFI loader support Bin Meng
@ 2018-06-28 3:38 ` Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 6:38 ` [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
2018-07-02 1:28 ` Bin Meng
6 siblings, 1 reply; 14+ messages in thread
From: Bin Meng @ 2018-06-28 3:38 UTC (permalink / raw)
To: u-boot
This updates the doc to mention chain-loading an x86 kernel via
'bootefi' command, along with several typos fix.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Alexander Graf <agraf@suse.de>
---
Changes in v3: None
Changes in v2: None
doc/README.vxworks | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/doc/README.vxworks b/doc/README.vxworks
index 1aa8e44..3e08711 100644
--- a/doc/README.vxworks
+++ b/doc/README.vxworks
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (C) 2013, Miao Yan <miao.yan@windriver.com>
-# Copyright (C) 2015, Bin Meng <bmeng.cn@gmail.com>
+# Copyright (C) 2015-2018, Bin Meng <bmeng.cn@gmail.com>
VxWorks Support
===============
@@ -15,10 +15,13 @@ For booting old kernels (6.9.x) on PowerPC and ARM, and all kernel versions
on other architectures, 'bootvx' shall be used. For booting VxWorks 7 kernels
on PowerPC and ARM, 'bootm' shall be used.
+With CONFIG_EFI_LOADER option, it's possible to chain load a VxWorks x86 kernel
+via the UEFI boot loader application for VxWorks loaded by 'bootefi' command.
+
VxWorks 7 on PowerPC and ARM
---------------------------
-From VxWorks 7, VxWorks starts adopting device tree as its hardware decription
-mechansim (for PowerPC and ARM), thus requiring boot interface changes.
+From VxWorks 7, VxWorks starts adopting device tree as its hardware description
+mechanism (for PowerPC and ARM), thus requiring boot interface changes.
This section will describe the new interface.
For PowerPC, the calling convention of the new VxWorks entry point conforms to
@@ -53,6 +56,9 @@ gatewayip, hostname, othbootargs.
When using 'bootm', just define "bootargs" in the environment and U-Boot will
handle bootline fix up for the kernel dtb automatically.
+When using 'bootefi' to chain load an x86 kernel, the UEFI boot loader
+application for VxWorks takes care of the kernel bootline preparation.
+
Serial console
--------------
It's very common that VxWorks BSPs configure a different baud rate for the
@@ -63,9 +69,9 @@ look like VxWorks hangs somewhere as nothing outputs on the serial console.
x86-specific information
------------------------
-Before loading an x86 kernel, one additional environment variable need to be
-provided. This is "vx_phys_mem_base", which represent the physical memory
-base address of VxWorks.
+Before direct loading an x86 kernel via 'bootvx', one additional environment
+variable need to be provided. This is "vx_phys_mem_base", which represent the
+physical memory base address of VxWorks.
Check VxWorks kernel configuration to look for LOCAL_MEM_LOCAL_ADRS. For
VxWorks 7, this is normally a virtual address and you need find out its
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table
2018-06-28 3:38 ` [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table Bin Meng
@ 2018-06-28 5:48 ` Heinrich Schuchardt
2018-07-02 1:28 ` Bin Meng
0 siblings, 1 reply; 14+ messages in thread
From: Heinrich Schuchardt @ 2018-06-28 5:48 UTC (permalink / raw)
To: u-boot
On 06/28/2018 05:38 AM, Bin Meng wrote:
> Output ACPI configuration table if it exists.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
` (4 preceding siblings ...)
2018-06-28 3:38 ` [U-Boot] [PATCH v3 6/6] doc: vxworks: Mention chain-loading an x86 kernel via 'bootefi' Bin Meng
@ 2018-06-28 6:38 ` Bin Meng
2018-07-02 1:28 ` Bin Meng
6 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-06-28 6:38 UTC (permalink / raw)
To: u-boot
Hi Alex,
On Thu, Jun 28, 2018 at 11:38 AM, Bin Meng <bmeng.cn@gmail.com> wrote:
> On x86 traditional E820 table is used to pass the memory information
> to kernel. With EFI loader we can build the EFI memory map from it.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
>
> Changes in v3: None
> Changes in v2: None
>
> arch/x86/lib/e820.c | 39 +++++++++++++++++++++++++++++++++++++++
> 1 file changed, 39 insertions(+)
>
Do you have any issue with this series? If not, which tree would you
like to take this in? I can take this via the u-boot-x86 tree, but if
you want to take this via the efi-loader tree, this series should be
applied before Heinrich's efi-loader series [1].
[1] http://patchwork.ozlabs.org/project/uboot/list/?series=52519
Regards,
Bin
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
` (5 preceding siblings ...)
2018-06-28 6:38 ` [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
@ 2018-07-02 1:28 ` Bin Meng
6 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-07-02 1:28 UTC (permalink / raw)
To: u-boot
On Thu, Jun 28, 2018 at 11:38 AM, Bin Meng <bmeng.cn@gmail.com> wrote:
> On x86 traditional E820 table is used to pass the memory information
> to kernel. With EFI loader we can build the EFI memory map from it.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> ---
>
> Changes in v3: None
> Changes in v2: None
>
> arch/x86/lib/e820.c | 39 +++++++++++++++++++++++++++++++++++++++
> 1 file changed, 39 insertions(+)
>
applied to u-boot-x86, thanks!
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16
2018-06-28 3:38 ` [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16 Bin Meng
@ 2018-07-02 1:28 ` Bin Meng
0 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-07-02 1:28 UTC (permalink / raw)
To: u-boot
On Thu, Jun 28, 2018 at 11:38 AM, Bin Meng <bmeng.cn@gmail.com> wrote:
> At present the number of configuration tables is set to 2. By
> looking at which tables the Linux EFI stub or iPXE can process,
> it looks 16 is a reasonable number.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
>
> ---
>
> Changes in v3: None
> Changes in v2:
> - new patch "increase number of configuration tables to 16"
>
> lib/efi_loader/efi_boottime.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
applied to u-boot-x86, thanks!
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 3/6] efi_loader: Install ACPI configuration tables
2018-06-28 3:38 ` [U-Boot] [PATCH v3 3/6] efi_loader: Install ACPI configuration tables Bin Meng
@ 2018-07-02 1:28 ` Bin Meng
0 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-07-02 1:28 UTC (permalink / raw)
To: u-boot
On Thu, Jun 28, 2018 at 11:38 AM, Bin Meng <bmeng.cn@gmail.com> wrote:
> ACPI tables can be passed via EFI configuration table to an EFI
> application. This is only supported on x86 so far.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
>
> ---
>
> Changes in v3:
> - Use UEFI spec 2.7 provided ACPI table name
>
> Changes in v2: None
>
> cmd/bootefi.c | 5 +++++
> include/efi_api.h | 4 ++++
> include/efi_loader.h | 8 ++++++++
> lib/efi_loader/Makefile | 1 +
> lib/efi_loader/efi_acpi.c | 42 ++++++++++++++++++++++++++++++++++++++++++
> 5 files changed, 60 insertions(+)
> create mode 100644 lib/efi_loader/efi_acpi.c
>
applied to u-boot-x86, thanks!
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table
2018-06-28 5:48 ` Heinrich Schuchardt
@ 2018-07-02 1:28 ` Bin Meng
0 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-07-02 1:28 UTC (permalink / raw)
To: u-boot
On Thu, Jun 28, 2018 at 1:48 PM, Heinrich Schuchardt <xypron.glpk@gmx.de> wrote:
> On 06/28/2018 05:38 AM, Bin Meng wrote:
>> Output ACPI configuration table if it exists.
>>
>> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
>
> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
applied to u-boot-x86, thanks!
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 5/6] x86: doc: Update EFI loader support
2018-06-28 3:38 ` [U-Boot] [PATCH v3 5/6] x86: doc: Update EFI loader support Bin Meng
@ 2018-07-02 1:28 ` Bin Meng
0 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-07-02 1:28 UTC (permalink / raw)
To: u-boot
On Thu, Jun 28, 2018 at 11:38 AM, Bin Meng <bmeng.cn@gmail.com> wrote:
> CONFIG_EFI_LOADER is fully supported on x86 now.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Alexander Graf <agraf@suse.de>
> ---
>
> Changes in v3: None
> Changes in v2: None
>
> doc/README.x86 | 29 +++++++++++++++++++++++++++--
> 1 file changed, 27 insertions(+), 2 deletions(-)
>
applied to u-boot-x86, thanks!
^ permalink raw reply [flat|nested] 14+ messages in thread
* [U-Boot] [PATCH v3 6/6] doc: vxworks: Mention chain-loading an x86 kernel via 'bootefi'
2018-06-28 3:38 ` [U-Boot] [PATCH v3 6/6] doc: vxworks: Mention chain-loading an x86 kernel via 'bootefi' Bin Meng
@ 2018-07-02 1:28 ` Bin Meng
0 siblings, 0 replies; 14+ messages in thread
From: Bin Meng @ 2018-07-02 1:28 UTC (permalink / raw)
To: u-boot
On Thu, Jun 28, 2018 at 11:38 AM, Bin Meng <bmeng.cn@gmail.com> wrote:
> This updates the doc to mention chain-loading an x86 kernel via
> 'bootefi' command, along with several typos fix.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Alexander Graf <agraf@suse.de>
>
> ---
>
> Changes in v3: None
> Changes in v2: None
>
> doc/README.vxworks | 18 ++++++++++++------
> 1 file changed, 12 insertions(+), 6 deletions(-)
>
applied to u-boot-x86, thanks!
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2018-07-02 1:28 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-28 3:38 [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 2/6] efi_loader: Increase number of configuration tables to 16 Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 3/6] efi_loader: Install ACPI configuration tables Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 4/6] efi_loader: helloworld: Output ACPI configuration table Bin Meng
2018-06-28 5:48 ` Heinrich Schuchardt
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 5/6] x86: doc: Update EFI loader support Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 3:38 ` [U-Boot] [PATCH v3 6/6] doc: vxworks: Mention chain-loading an x86 kernel via 'bootefi' Bin Meng
2018-07-02 1:28 ` Bin Meng
2018-06-28 6:38 ` [U-Boot] [PATCH v3 1/6] x86: efi_loader: Build EFI memory map per E820 table Bin Meng
2018-07-02 1:28 ` Bin Meng
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.