diff mbox

[U-Boot,v2] x86: Fix Linux v4.7+ zimage booting (update bootparam.h)

Message ID 20160930071559.26676-1-sr@denx.de
State Accepted
Delegated to: Bin Meng
Headers show

Commit Message

Stefan Roese Sept. 30, 2016, 7:15 a.m. UTC
Booting Linux kernel v4.7+ does not work since commit Linux commit 974f221c
"x86/boot: Move compressed kernel to the end of the decompression buffer".

This patch adds the latest version of the setup_header struct, adding
"init_size" which is needed since this commit referenced above. With this
patch, booting Linux v4.8-rc8 does work again on x86 boards.

Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com>
---
v2:
- Specified that the refereced git commit is a Linux commit as
  suggested by Bin
  
 arch/x86/include/asm/bootparam.h | 3 +++
 1 file changed, 3 insertions(+)

Comments

Bin Meng Oct. 5, 2016, 6:38 a.m. UTC | #1
On Fri, Sep 30, 2016 at 3:15 PM, Stefan Roese <sr@denx.de> wrote:
> Booting Linux kernel v4.7+ does not work since commit Linux commit 974f221c
> "x86/boot: Move compressed kernel to the end of the decompression buffer".
>
> This patch adds the latest version of the setup_header struct, adding
> "init_size" which is needed since this commit referenced above. With this
> patch, booting Linux v4.8-rc8 does work again on x86 boards.
>
> Signed-off-by: Stefan Roese <sr@denx.de>
> Reviewed-by: Simon Glass <sjg@chromium.org>
> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
> Tested-by: Bin Meng <bmeng.cn@gmail.com>
> ---
> v2:
> - Specified that the refereced git commit is a Linux commit as
>   suggested by Bin
>
>  arch/x86/include/asm/bootparam.h | 3 +++
>  1 file changed, 3 insertions(+)
>

applied to u-boot-x86, thanks!
diff mbox

Patch

diff --git a/arch/x86/include/asm/bootparam.h b/arch/x86/include/asm/bootparam.h
index 1400951..a373a79 100644
--- a/arch/x86/include/asm/bootparam.h
+++ b/arch/x86/include/asm/bootparam.h
@@ -63,6 +63,9 @@  struct setup_header {
 	__u32	payload_offset;
 	__u32	payload_length;
 	__u64	setup_data;
+	__u64	pref_address;
+	__u32	init_size;
+	__u32	handover_offset;
 } __attribute__((packed));
 
 struct sys_desc_table {