mirror of
https://github.com/linuxboot/heads.git
synced 2024-12-22 14:22:26 +00:00
b71f3757c1
* modules/linux: add support for building with kernel 5.4.69 Add support to module, port patches from 4.19.139. Needed for newer platforms not supported by 4.19 kernel. Signed-off-by: Matt DeVillier <matt.devillier@puri.sm> * CircleCI: add rysnc dependency for building kernel 5.x Signed-off-by: Matt DeVillier <matt.devillier@puri.sm> * Migrate all Librem boards to kernel 5.x, common config Update linux-librem_common.config from 4.x to 5.x, and add CONFIG items needed to support the librem_l1um (AST DRM drivers, serial port output). Tested on Librem 13v4, Librem Mini, and Librem Server L1UM. Signed-off-by: Matt DeVillier <matt.devillier@puri.sm>
55 lines
1.9 KiB
Diff
55 lines
1.9 KiB
Diff
diff -u --recursive ../../clean/linux-4.14.62/arch/x86/boot/compressed/eboot.c linux-4.14.62/arch/x86/boot/compressed/eboot.c
|
|
--- ../../clean/linux-4.14.62/arch/x86/boot/compressed/eboot.c 2018-08-09 06:16:40.000000000 -0400
|
|
+++ linux-4.14.62/arch/x86/boot/compressed/eboot.c 2018-08-09 10:13:11.801000000 -0400
|
|
@@ -390,8 +390,8 @@
|
|
int options_size = 0;
|
|
efi_status_t status;
|
|
char *cmdline_ptr;
|
|
- unsigned long ramdisk_addr;
|
|
- unsigned long ramdisk_size;
|
|
+ unsigned long ramdisk_addr = 0;
|
|
+ unsigned long ramdisk_size = 0;
|
|
|
|
efi_early = c;
|
|
sys_table = (efi_system_table_t *)(unsigned long)efi_early->table;
|
|
@@ -447,9 +447,6 @@
|
|
/* Fill in upper bits of command line address, NOP on 32 bit */
|
|
boot_params->ext_cmd_line_ptr = (u64)(unsigned long)cmdline_ptr >> 32;
|
|
|
|
- hdr->ramdisk_image = 0;
|
|
- hdr->ramdisk_size = 0;
|
|
-
|
|
/* Clear APM BIOS info */
|
|
memset(bi, 0, sizeof(*bi));
|
|
|
|
@@ -476,10 +473,16 @@
|
|
|
|
if (status != EFI_SUCCESS)
|
|
goto fail2;
|
|
- hdr->ramdisk_image = ramdisk_addr & 0xffffffff;
|
|
- hdr->ramdisk_size = ramdisk_size & 0xffffffff;
|
|
- boot_params->ext_ramdisk_image = (u64)ramdisk_addr >> 32;
|
|
- boot_params->ext_ramdisk_size = (u64)ramdisk_size >> 32;
|
|
+
|
|
+ // don't overwrite the bzImage or loader provided ramdisk pointer
|
|
+ // unless the kernel command line specified a different one.
|
|
+ if (ramdisk_addr != 0)
|
|
+ {
|
|
+ hdr->ramdisk_image = ramdisk_addr & 0xffffffff;
|
|
+ hdr->ramdisk_size = ramdisk_size & 0xffffffff;
|
|
+ boot_params->ext_ramdisk_image = (u64)ramdisk_addr >> 32;
|
|
+ boot_params->ext_ramdisk_size = (u64)ramdisk_size >> 32;
|
|
+ }
|
|
|
|
return boot_params;
|
|
fail2:
|
|
--- clean/linux-4.14.62/arch/x86/boot/compressed/early_serial_console.c 2018-08-09 12:16:40.000000000 +0200
|
|
+++ linux-4.14.62/arch/x86/boot/compressed/early_serial_console.c 2018-09-28 11:59:36.824015244 +0200
|
|
@@ -1,5 +1,5 @@
|
|
#include "misc.h"
|
|
|
|
-int early_serial_base;
|
|
+int early_serial_base = 0x3f8;
|
|
|
|
#include "../early_serial_console.c"
|