2018.11 RC3
This commit is contained in:
parent
5ffeca0670
commit
6ce6803ef8
|
@ -11,6 +11,7 @@ firefly-rk3399
|
|||
geekbox
|
||||
hikey
|
||||
khadas-vim
|
||||
khadas-vim2
|
||||
libretech-cc
|
||||
libretech_all_h3_cc_h5
|
||||
mvebu_espressobin-88f3720
|
||||
|
|
|
@ -1,17 +1,17 @@
|
|||
From fbd0bffb20ca5edd21bbeb7cc20e24d091ab4280 Mon Sep 17 00:00:00 2001
|
||||
From 8b0274a733cd1ce39ad9ad18e1bd8efdd02a40b7 Mon Sep 17 00:00:00 2001
|
||||
From: Rob Clark <robdclark@gmail.com>
|
||||
Date: Wed, 21 Jun 2017 14:21:15 -0400
|
||||
Subject: [PATCH 1/4] WIP: fix usb
|
||||
Subject: [PATCH 1/3] WIP: fix usb
|
||||
|
||||
---
|
||||
common/usb_storage.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/common/usb_storage.c b/common/usb_storage.c
|
||||
index a91b1c0d2f..caea87a09f 100644
|
||||
index d92ebb6eb19..9df3c3daaf4 100644
|
||||
--- a/common/usb_storage.c
|
||||
+++ b/common/usb_storage.c
|
||||
@@ -1018,7 +1018,7 @@ static int usb_request_sense(struct scsi_cmd *srb, struct us_data *ss)
|
||||
@@ -1016,7 +1016,7 @@ static int usb_request_sense(struct scsi_cmd *srb, struct us_data *ss)
|
||||
|
||||
static int usb_test_unit_ready(struct scsi_cmd *srb, struct us_data *ss)
|
||||
{
|
||||
|
@ -20,7 +20,7 @@ index a91b1c0d2f..caea87a09f 100644
|
|||
|
||||
do {
|
||||
memset(&srb->cmd[0], 0, 12);
|
||||
@@ -1041,7 +1041,7 @@ static int usb_test_unit_ready(struct scsi_cmd *srb, struct us_data *ss)
|
||||
@@ -1039,7 +1039,7 @@ static int usb_test_unit_ready(struct scsi_cmd *srb, struct us_data *ss)
|
||||
if ((srb->sense_buf[2] == 0x02) &&
|
||||
(srb->sense_buf[12] == 0x3a))
|
||||
return -1;
|
||||
|
@ -30,12 +30,12 @@ index a91b1c0d2f..caea87a09f 100644
|
|||
|
||||
return -1;
|
||||
--
|
||||
2.14.3
|
||||
2.19.1
|
||||
|
||||
From d1b25b8d6461c5278228d657de9c24e0979e4b9d Mon Sep 17 00:00:00 2001
|
||||
From 7bf41d74ca9d58bc2243b7688f8987c1d373ea56 Mon Sep 17 00:00:00 2001
|
||||
From: Rob Clark <robdclark@gmail.com>
|
||||
Date: Mon, 3 Jul 2017 08:34:37 -0400
|
||||
Subject: [PATCH 2/4] HACK: disable emmc
|
||||
Subject: [PATCH 2/3] HACK: disable emmc
|
||||
|
||||
Hitting some timeout which makes boot take much longer. And
|
||||
uefi/boot/rootfs partitions will be on sd-card or usb disk, etc,
|
||||
|
@ -45,18 +45,18 @@ so we can just ignore emmc.
|
|||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/dts/dragonboard410c.dts b/arch/arm/dts/dragonboard410c.dts
|
||||
index 5ccfe7f8c8..9e2d3f5d9b 100644
|
||||
index fa348bc621e..bfe7f15d5ed 100644
|
||||
--- a/arch/arm/dts/dragonboard410c.dts
|
||||
+++ b/arch/arm/dts/dragonboard410c.dts
|
||||
@@ -67,6 +67,7 @@
|
||||
reg = <0x78d9000 0x400>;
|
||||
@@ -106,6 +106,7 @@
|
||||
#phy-cells = <0>;
|
||||
};
|
||||
|
||||
+/*
|
||||
sdhci@07824000 {
|
||||
compatible = "qcom,sdhci-msm-v4";
|
||||
reg = <0x7824900 0x11c 0x7824000 0x800>;
|
||||
@@ -76,6 +77,7 @@
|
||||
@@ -115,6 +116,7 @@
|
||||
clock = <&clkc 0>;
|
||||
clock-frequency = <100000000>;
|
||||
};
|
||||
|
@ -65,22 +65,23 @@ index 5ccfe7f8c8..9e2d3f5d9b 100644
|
|||
sdhci@07864000 {
|
||||
compatible = "qcom,sdhci-msm-v4";
|
||||
--
|
||||
2.14.3
|
||||
From 6baac1d73a20f880cb91f3bc03fe4f9cf88c61f6 Mon Sep 17 00:00:00 2001
|
||||
2.19.1
|
||||
|
||||
From 871fe802cf3ab593b9332c4f36ab2b3f179d51ae Mon Sep 17 00:00:00 2001
|
||||
From: Peter Robinson <pbrobinson@gmail.com>
|
||||
Date: Tue, 4 Sep 2018 12:21:59 +0100
|
||||
Subject: [PATCH] add options for dm410c config
|
||||
Subject: [PATCH 3/3] add options for dm410c config
|
||||
|
||||
---
|
||||
configs/dragonboard410c_defconfig | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/configs/dragonboard410c_defconfig b/configs/dragonboard410c_defconfig
|
||||
index 96a831443a..d167c765b1 100644
|
||||
index a55abaf8df5..4ece0cafbe4 100644
|
||||
--- a/configs/dragonboard410c_defconfig
|
||||
+++ b/configs/dragonboard410c_defconfig
|
||||
@@ -6,6 +6,8 @@ CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_NR_DRAM_BANKS=1
|
||||
@@ -7,6 +7,8 @@ CONFIG_NR_DRAM_BANKS=1
|
||||
# CONFIG_ANDROID_BOOT_IMAGE is not set
|
||||
CONFIG_FIT=y
|
||||
CONFIG_OF_BOARD_SETUP=y
|
||||
+CONFIG_FAT_WRITE=y
|
||||
|
@ -88,7 +89,7 @@ index 96a831443a..d167c765b1 100644
|
|||
CONFIG_MISC_INIT_R=y
|
||||
# CONFIG_DISPLAY_CPUINFO is not set
|
||||
# CONFIG_DISPLAY_BOARDINFO is not set
|
||||
@@ -35,6 +37,13 @@ CONFIG_DM_PMIC=y
|
||||
@@ -41,6 +43,13 @@ CONFIG_DM_PMIC=y
|
||||
CONFIG_PMIC_PM8916=y
|
||||
CONFIG_MSM_SERIAL=y
|
||||
CONFIG_SPMI_MSM=y
|
||||
|
@ -102,7 +103,7 @@ index 96a831443a..d167c765b1 100644
|
|||
CONFIG_USB=y
|
||||
CONFIG_DM_USB=y
|
||||
CONFIG_USB_EHCI_HCD=y
|
||||
@@ -46,5 +55,6 @@ CONFIG_USB_HOST_ETHER=y
|
||||
@@ -57,5 +66,6 @@ CONFIG_USB_HOST_ETHER=y
|
||||
CONFIG_USB_ETHER_ASIX=y
|
||||
CONFIG_USB_ETHER_ASIX88179=y
|
||||
CONFIG_USB_ETHER_MCS7830=y
|
||||
|
@ -110,5 +111,5 @@ index 96a831443a..d167c765b1 100644
|
|||
CONFIG_USB_ETHER_SMSC95XX=y
|
||||
CONFIG_OF_LIBFDT_OVERLAY=y
|
||||
--
|
||||
2.19.0.rc0
|
||||
2.19.1
|
||||
|
||||
|
|
|
@ -1,103 +0,0 @@
|
|||
From patchwork Thu Apr 26 06:43:06 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot] rockchip: make_fit_atf: fix warning unit_address_vs_reg
|
||||
X-Patchwork-Submitter: Kever Yang <kever.yang@rock-chips.com>
|
||||
X-Patchwork-Id: 904884
|
||||
Message-Id: <1524724986-28497-1-git-send-email-kever.yang@rock-chips.com>
|
||||
To: u-boot@lists.denx.de
|
||||
Date: Thu, 26 Apr 2018 14:43:06 +0800
|
||||
From: Kever Yang <kever.yang@rock-chips.com>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
Patch fix warning:
|
||||
/builddir/BUILD/u-boot-2018.05-rc2/"arch/arm/mach-rockchip/make_fit_atf.py" \
|
||||
arch/arm/dts/rk3399-firefly.dtb > u-boot.its
|
||||
./tools/mkimage -f u-boot.its -E u-boot.itb >/dev/null && cat
|
||||
/dev/null
|
||||
u-boot.itb.tmp: Warning (unit_address_vs_reg): Node /images/uboot@1
|
||||
has a unit name, but no reg property
|
||||
u-boot.itb.tmp: Warning (unit_address_vs_reg): Node /images/atf@1 has
|
||||
a unit name, but no reg property
|
||||
u-boot.itb.tmp: Warning (unit_address_vs_reg): Node /images/atf@2 has
|
||||
a unit name, but no reg property
|
||||
u-boot.itb.tmp: Warning (unit_address_vs_reg): Node /images/atf@3 has
|
||||
a unit name, but no reg property
|
||||
u-boot.itb.tmp: Warning (unit_address_vs_reg): Node /images/fdt@1 has
|
||||
a unit name, but no reg property
|
||||
u-boot.itb.tmp: Warning (unit_address_vs_reg): Node
|
||||
/configurations/config@1 has a unit name, but no reg property
|
||||
make[1]: Leaving directory
|
||||
'/builddir/BUILD/u-boot-2018.05-rc2/builds/firefly-rk3399'
|
||||
|
||||
Reported-by: Peter Robinson <pbrobinson@gmail.com>
|
||||
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
|
||||
---
|
||||
|
||||
arch/arm/mach-rockchip/make_fit_atf.py | 18 +++++++++---------
|
||||
1 file changed, 9 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-rockchip/make_fit_atf.py b/arch/arm/mach-rockchip/make_fit_atf.py
|
||||
index 7c6dd57..513e088 100755
|
||||
--- a/arch/arm/mach-rockchip/make_fit_atf.py
|
||||
+++ b/arch/arm/mach-rockchip/make_fit_atf.py
|
||||
@@ -37,7 +37,7 @@ DT_HEADER="""/*
|
||||
#address-cells = <1>;
|
||||
|
||||
images {
|
||||
- uboot@1 {
|
||||
+ uboot {
|
||||
description = "U-Boot (64-bit)";
|
||||
data = /incbin/("u-boot-nodtb.bin");
|
||||
type = "standalone";
|
||||
@@ -61,7 +61,7 @@ def append_atf_node(file, atf_index, phy_addr):
|
||||
Append ATF DT node to input FIT dts file.
|
||||
"""
|
||||
data = 'bl31_0x%08x.bin' % phy_addr
|
||||
- print >> file, '\t\tatf@%d {' % atf_index
|
||||
+ print >> file, '\t\tatf_%d {' % atf_index
|
||||
print >> file, '\t\t\tdescription = \"ARM Trusted Firmware\";'
|
||||
print >> file, '\t\t\tdata = /incbin/("%s");' % data
|
||||
print >> file, '\t\t\ttype = "firmware";'
|
||||
@@ -81,7 +81,7 @@ def append_fdt_node(file, dtbs):
|
||||
cnt = 1
|
||||
for dtb in dtbs:
|
||||
dtname = os.path.basename(dtb)
|
||||
- print >> file, '\t\tfdt@%d {' % cnt
|
||||
+ print >> file, '\t\tfdt_%d {' % cnt
|
||||
print >> file, '\t\t\tdescription = "%s";' % dtname
|
||||
print >> file, '\t\t\tdata = /incbin/("%s");' % dtb
|
||||
print >> file, '\t\t\ttype = "flat_dt";'
|
||||
@@ -91,17 +91,17 @@ def append_fdt_node(file, dtbs):
|
||||
cnt = cnt + 1
|
||||
|
||||
def append_conf_section(file, cnt, dtname, atf_cnt):
|
||||
- print >> file, '\t\tconfig@%d {' % cnt
|
||||
+ print >> file, '\t\tconfig_%d {' % cnt
|
||||
print >> file, '\t\t\tdescription = "%s";' % dtname
|
||||
- print >> file, '\t\t\tfirmware = "atf@1";'
|
||||
- print >> file, '\t\t\tloadables = "uboot@1",',
|
||||
+ print >> file, '\t\t\tfirmware = "atf_1";'
|
||||
+ print >> file, '\t\t\tloadables = "uboot",',
|
||||
for i in range(1, atf_cnt):
|
||||
- print >> file, '"atf@%d"' % (i+1),
|
||||
+ print >> file, '"atf_%d"' % (i+1),
|
||||
if i != (atf_cnt - 1):
|
||||
print >> file, ',',
|
||||
else:
|
||||
print >> file, ';'
|
||||
- print >> file, '\t\t\tfdt = "fdt@1";'
|
||||
+ print >> file, '\t\t\tfdt = "fdt_1";'
|
||||
print >> file, '\t\t};'
|
||||
print >> file, ''
|
||||
|
||||
@@ -111,7 +111,7 @@ def append_conf_node(file, dtbs, atf_cnt):
|
||||
"""
|
||||
cnt = 1
|
||||
print >> file, '\tconfigurations {'
|
||||
- print >> file, '\t\tdefault = "config@1";'
|
||||
+ print >> file, '\t\tdefault = "config_1";'
|
||||
for dtb in dtbs:
|
||||
dtname = os.path.basename(dtb)
|
||||
append_conf_section(file, cnt, dtname, atf_cnt)
|
|
@ -1,81 +0,0 @@
|
|||
From patchwork Wed May 16 16:44:33 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot] rockchip: make_fit_atf: use elf entry point
|
||||
X-Patchwork-Submitter: Mian Yousaf Kaukab <yousaf.kaukab@suse.com>
|
||||
X-Patchwork-Id: 914901
|
||||
Message-Id: <20180516164433.30998-1-yousaf.kaukab@suse.com>
|
||||
To: u-boot@lists.denx.de
|
||||
Cc: Mian Yousaf Kaukab <yousaf.kaukab@suse.com>
|
||||
Date: Wed, 16 May 2018 18:44:33 +0200
|
||||
From: Mian Yousaf Kaukab <yousaf.kaukab@suse.com>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
make_fit_atf.py uses physical address of first segment as the
|
||||
entry point to bl31. It is incorrect and causes following abort
|
||||
when bl31_entry() is called:
|
||||
|
||||
U-Boot SPL board initTrying to boot from MMC1
|
||||
"Synchronous Abort" handler, esr 0x02000000
|
||||
elr: 0000000000000000 lr : 00000000ff8c7e8c
|
||||
x 0: 00000000ff8e0000 x 1: 0000000000000000
|
||||
x 2: 0000000000000000 x 3: 00000000ff8e0180
|
||||
x 4: 0000000000000000 x 5: 0000000000000000
|
||||
x 6: 0000000000000030 x 7: 00000000ff8e0188
|
||||
x 8: 00000000000001e0 x 9: 0000000000000000
|
||||
x10: 000000000007fcdc x11: 00000000002881b8
|
||||
x12: 00000000000001a2 x13: 0000000000000198
|
||||
x14: 000000000007fdcc x15: 00000000002881b8
|
||||
x16: 00000000003c0724 x17: 00000000003c0718
|
||||
x18: 000000000007fe80 x19: 00000000ff8e0000
|
||||
x20: 0000000000200000 x21: 00000000ff8e0000
|
||||
x22: 0000000000000000 x23: 000000000007fe30
|
||||
x24: 00000000ff8d1c3c x25: 00000000ff8d5000
|
||||
x26: 00000000deadbeef x27: 00000000000004a0
|
||||
x28: 000000000000009c x29: 000000000007fd90
|
||||
|
||||
Fix it by using the entry point from the elf header.
|
||||
|
||||
Signed-off-by: Mian Yousaf Kaukab <yousaf.kaukab@suse.com>
|
||||
---
|
||||
arch/arm/mach-rockchip/make_fit_atf.py | 7 ++++---
|
||||
1 file changed, 4 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/mach-rockchip/make_fit_atf.py b/arch/arm/mach-rockchip/make_fit_atf.py
|
||||
index 6b3d9201c9..b88a5e1f16 100755
|
||||
--- a/arch/arm/mach-rockchip/make_fit_atf.py
|
||||
+++ b/arch/arm/mach-rockchip/make_fit_atf.py
|
||||
@@ -53,7 +53,7 @@ DT_END="""
|
||||
};
|
||||
"""
|
||||
|
||||
-def append_atf_node(file, atf_index, phy_addr):
|
||||
+def append_atf_node(file, atf_index, phy_addr, elf_entry):
|
||||
"""
|
||||
Append ATF DT node to input FIT dts file.
|
||||
"""
|
||||
@@ -67,7 +67,7 @@ def append_atf_node(file, atf_index, phy_addr):
|
||||
print >> file, '\t\t\tcompression = "none";'
|
||||
print >> file, '\t\t\tload = <0x%08x>;' % phy_addr
|
||||
if atf_index == 1:
|
||||
- print >> file, '\t\t\tentry = <0x%08x>;' % phy_addr
|
||||
+ print >> file, '\t\t\tentry = <0x%08x>;' % elf_entry
|
||||
print >> file, '\t\t};'
|
||||
print >> file, ''
|
||||
|
||||
@@ -141,12 +141,13 @@ def generate_atf_fit_dts(fit_file_name, bl31_file_name, uboot_file_name, dtbs_fi
|
||||
|
||||
with open(bl31_file_name) as bl31_file:
|
||||
bl31 = ELFFile(bl31_file)
|
||||
+ elf_entry = bl31.header['e_entry']
|
||||
for i in range(bl31.num_segments()):
|
||||
seg = bl31.get_segment(i)
|
||||
if ('PT_LOAD' == seg.__getitem__(ELF_SEG_P_TYPE)):
|
||||
paddr = seg.__getitem__(ELF_SEG_P_PADDR)
|
||||
p= seg.__getitem__(ELF_SEG_P_PADDR)
|
||||
- append_atf_node(fit_file, i+1, paddr)
|
||||
+ append_atf_node(fit_file, i+1, paddr, elf_entry)
|
||||
atf_cnt = i+1
|
||||
append_fdt_node(fit_file, dtbs_file_name)
|
||||
print >> fit_file, '%s' % DT_IMAGES_NODE_END
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (u-boot-2018.09.tar.bz2) = 48cb60a53450e2820eda706917b61dae053677fecfe177e0d07968313d25c7e9d5ab2d7cc5625b54e4c823f5c8852f88387b94f404e307e737aaa5a2c887ad4a
|
||||
SHA512 (u-boot-2018.11-rc3.tar.bz2) = 013bf1be169eaea88e44dec187eabc1c5806c1e813f0bf0a28da17f67b4d72b30708e55cb31767ceb7a171f6e1be07f092941009cff8d2cfdc51d3189b89111f
|
||||
|
|
|
@ -1,194 +0,0 @@
|
|||
From patchwork Thu Aug 30 21:43:43 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot,V3,1/3] efi_loader: simplify ifdefs
|
||||
X-Patchwork-Submitter: Stephen Warren <swarren@wwwdotorg.org>
|
||||
X-Patchwork-Id: 964248
|
||||
X-Patchwork-Delegate: agraf@suse.de
|
||||
Message-Id: <20180830214345.2475-1-swarren@wwwdotorg.org>
|
||||
To: Tom Rini <trini@konsulko.com>
|
||||
Cc: Stephen Warren <swarren@nvidia.com>, xypron.glpk@gmx.de, agraf@suse.de,
|
||||
u-boot@lists.denx.de, Tom Warren <twarren@nvidia.com>
|
||||
Date: Thu, 30 Aug 2018 15:43:43 -0600
|
||||
From: Stephen Warren <swarren@wwwdotorg.org>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
From: Stephen Warren <swarren@nvidia.com>
|
||||
|
||||
Use CONFIG_IS_ENABLED(EFI_LOADER) to avoid explicitly checking CONFIG_SPL
|
||||
too. This simplifies the conditional.
|
||||
|
||||
Signed-off-by: Stephen Warren <swarren@nvidia.com>
|
||||
---
|
||||
v3: New patch.
|
||||
---
|
||||
arch/arm/cpu/armv8/fsl-layerscape/cpu.c | 2 +-
|
||||
arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 2 +-
|
||||
arch/x86/lib/e820.c | 4 ++--
|
||||
include/efi_loader.h | 6 +++---
|
||||
4 files changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
|
||||
index 052e0708d454..be00bd55ab68 100644
|
||||
--- a/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
|
||||
+++ b/arch/arm/cpu/armv8/fsl-layerscape/cpu.c
|
||||
@@ -835,7 +835,7 @@ int dram_init_banksize(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
-#if defined(CONFIG_EFI_LOADER) && !defined(CONFIG_SPL_BUILD)
|
||||
+#if CONFIG_IS_ENABLED(EFI_LOADER)
|
||||
void efi_add_known_memory(void)
|
||||
{
|
||||
int i;
|
||||
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
|
||||
index fc9de73bcef4..c9c2c3f6d3e8 100644
|
||||
--- a/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
|
||||
+++ b/arch/arm/cpu/armv8/fsl-layerscape/fdt.c
|
||||
@@ -135,7 +135,7 @@ remove_psci_node:
|
||||
|
||||
fdt_add_mem_rsv(blob, (uintptr_t)&secondary_boot_code,
|
||||
*boot_code_size);
|
||||
-#if defined(CONFIG_EFI_LOADER) && !defined(CONFIG_SPL_BUILD)
|
||||
+#if CONFIG_IS_ENABLED(EFI_LOADER)
|
||||
efi_add_memory_map((uintptr_t)&secondary_boot_code,
|
||||
ALIGN(*boot_code_size, EFI_PAGE_SIZE) >> EFI_PAGE_SHIFT,
|
||||
EFI_RESERVED_MEMORY_TYPE, false);
|
||||
diff --git a/arch/x86/lib/e820.c b/arch/x86/lib/e820.c
|
||||
index 8b34f677d96d..d6ae2c4e9d77 100644
|
||||
--- a/arch/x86/lib/e820.c
|
||||
+++ b/arch/x86/lib/e820.c
|
||||
@@ -36,7 +36,7 @@ __weak unsigned int install_e820_map(unsigned int max_entries,
|
||||
return 4;
|
||||
}
|
||||
|
||||
-#if defined(CONFIG_EFI_LOADER) && !defined(CONFIG_SPL_BUILD)
|
||||
+#if CONFIG_IS_ENABLED(EFI_LOADER)
|
||||
void efi_add_known_memory(void)
|
||||
{
|
||||
struct e820_entry e820[E820MAX];
|
||||
@@ -72,4 +72,4 @@ void efi_add_known_memory(void)
|
||||
efi_add_memory_map(start, pages, type, false);
|
||||
}
|
||||
}
|
||||
-#endif /* defined(EFI_LOADER) && !defined(CONFIG_SPL_BUILD) */
|
||||
+#endif /* CONFIG_IS_ENABLED(EFI_LOADER) */
|
||||
diff --git a/include/efi_loader.h b/include/efi_loader.h
|
||||
index f162adfff7e2..b46babf9316f 100644
|
||||
--- a/include/efi_loader.h
|
||||
+++ b/include/efi_loader.h
|
||||
@@ -13,7 +13,7 @@
|
||||
#include <efi_api.h>
|
||||
|
||||
/* No need for efi loader support in SPL */
|
||||
-#if defined(CONFIG_EFI_LOADER) && !defined(CONFIG_SPL_BUILD)
|
||||
+#if CONFIG_IS_ENABLED(EFI_LOADER)
|
||||
|
||||
#include <linux/list.h>
|
||||
|
||||
@@ -460,7 +460,7 @@ efi_status_t EFIAPI efi_set_variable(u16 *variable_name, efi_guid_t *vendor,
|
||||
void *efi_bootmgr_load(struct efi_device_path **device_path,
|
||||
struct efi_device_path **file_path);
|
||||
|
||||
-#else /* defined(EFI_LOADER) && !defined(CONFIG_SPL_BUILD) */
|
||||
+#else /* CONFIG_IS_ENABLED(EFI_LOADER) */
|
||||
|
||||
/* Without CONFIG_EFI_LOADER we don't have a runtime section, stub it out */
|
||||
#define __efi_runtime_data
|
||||
@@ -477,6 +477,6 @@ static inline void efi_set_bootdev(const char *dev, const char *devnr,
|
||||
static inline void efi_net_set_dhcp_ack(void *pkt, int len) { }
|
||||
static inline void efi_print_image_infos(void *pc) { }
|
||||
|
||||
-#endif /* CONFIG_EFI_LOADER && !CONFIG_SPL_BUILD */
|
||||
+#endif /* CONFIG_IS_ENABLED(EFI_LOADER) */
|
||||
|
||||
#endif /* _EFI_LOADER_H */
|
||||
|
||||
From patchwork Thu Aug 30 21:43:44 2018
|
||||
Content-Type: text/plain; charset="utf-8"
|
||||
MIME-Version: 1.0
|
||||
Content-Transfer-Encoding: 7bit
|
||||
Subject: [U-Boot, V3,
|
||||
2/3] ARM: tegra: reserve unmapped RAM so EFI doesn't use it
|
||||
X-Patchwork-Submitter: Stephen Warren <swarren@wwwdotorg.org>
|
||||
X-Patchwork-Id: 964249
|
||||
X-Patchwork-Delegate: agraf@suse.de
|
||||
Message-Id: <20180830214345.2475-2-swarren@wwwdotorg.org>
|
||||
To: Tom Rini <trini@konsulko.com>
|
||||
Cc: Stephen Warren <swarren@nvidia.com>, xypron.glpk@gmx.de, agraf@suse.de,
|
||||
u-boot@lists.denx.de, Tom Warren <twarren@nvidia.com>
|
||||
Date: Thu, 30 Aug 2018 15:43:44 -0600
|
||||
From: Stephen Warren <swarren@wwwdotorg.org>
|
||||
List-Id: U-Boot discussion <u-boot.lists.denx.de>
|
||||
|
||||
From: Stephen Warren <swarren@nvidia.com>
|
||||
|
||||
Tegra U-Boot ensures that board_get_usable_ram_top() never returns a value
|
||||
over 4GB, since some peripherals can't access such addresses. However, on
|
||||
systems with more than 2GB of RAM, RAM bank 1 does describe this extra
|
||||
RAM, so that Linux (or whatever OS) can use it, subject to DMA
|
||||
limitations. Since board_get_usable_ram_top() points at the top of RAM
|
||||
bank 0, the memory locations describes by RAM bank 1 are not mapped by
|
||||
U-Boot's MMU configuration, and so cannot be used for anything.
|
||||
|
||||
For some completely inexplicable reason, U-Boot's EFI support ignores the
|
||||
value returned by board_get_usable_ram_top(), and EFI memory allocation
|
||||
routines will return values above U-Boot's RAM top. This causes U-Boot to
|
||||
crash when it accesses that RAM, since it isn't mapped by the MMU. One
|
||||
use-case where this happens is TFTP download of a file on Jetson TX1
|
||||
(p2371-2180).
|
||||
|
||||
This change explicitly tells the EFI code that this extra RAM should not
|
||||
be used, thus avoiding the crash.
|
||||
|
||||
A previous attempt to make EFI honor board_get_usable_ram_top() was
|
||||
rejected. So, this patch will need to be replicated for any board that
|
||||
implements board_get_usable_ram_top().
|
||||
|
||||
Fixes: aa909462d018 ("efi_loader: efi_allocate_pages is too restrictive")
|
||||
Signed-off-by: Stephen Warren <swarren@nvidia.com>
|
||||
---
|
||||
v3:
|
||||
- Use shift not divide for page count calculation.
|
||||
- Enhance ifdef to avoid EFI references from SPL builds.
|
||||
v2:
|
||||
- Don't hard-code EFI page size.
|
||||
- Register RAM as a boot services data rather than reserved.
|
||||
---
|
||||
arch/arm/mach-tegra/board2.c | 14 ++++++++++++++
|
||||
1 file changed, 14 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/mach-tegra/board2.c b/arch/arm/mach-tegra/board2.c
|
||||
index 421a71b3014d..12257a42b51b 100644
|
||||
--- a/arch/arm/mach-tegra/board2.c
|
||||
+++ b/arch/arm/mach-tegra/board2.c
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include <common.h>
|
||||
#include <dm.h>
|
||||
+#include <efi_loader.h>
|
||||
#include <errno.h>
|
||||
#include <ns16550.h>
|
||||
#include <usb.h>
|
||||
@@ -210,6 +211,19 @@ int board_early_init_f(void)
|
||||
|
||||
int board_late_init(void)
|
||||
{
|
||||
+#if CONFIG_IS_ENABLED(EFI_LOADER)
|
||||
+ if (gd->bd->bi_dram[1].start) {
|
||||
+ /*
|
||||
+ * Only bank 0 is below board_get_usable_ram_top(), so all of
|
||||
+ * bank 1 is not mapped by the U-Boot MMU configuration, and so
|
||||
+ * we must prevent EFI from using it.
|
||||
+ */
|
||||
+ efi_add_memory_map(gd->bd->bi_dram[1].start,
|
||||
+ gd->bd->bi_dram[1].size >> EFI_PAGE_SHIFT,
|
||||
+ EFI_BOOT_SERVICES_DATA, false);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
#if defined(CONFIG_TEGRA_SUPPORT_NON_SECURE)
|
||||
if (tegra_cpu_is_non_secure()) {
|
||||
printf("CPU is in NS mode\n");
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
#global candidate rc3
|
||||
%global candidate rc3
|
||||
|
||||
Name: uboot-tools
|
||||
Version: 2018.09
|
||||
Release: 1%{?candidate:.%{candidate}}%{?dist}
|
||||
Version: 2018.11
|
||||
Release: 0.1%{?candidate:.%{candidate}}%{?dist}
|
||||
Summary: U-Boot utilities
|
||||
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
|
||||
URL: http://www.denx.de/wiki/U-Boot
|
||||
|
@ -23,18 +23,12 @@ Patch3: usb-kbd-fixes.patch
|
|||
|
||||
# Board fixes and enablement
|
||||
Patch10: rpi-Enable-using-the-DT-provided-by-the-Raspberry-Pi.patch
|
||||
Patch11: rockchip-make_fit_atf-fix-warning-unit_address_vs_reg.patch
|
||||
Patch12: rockchip-make_fit_atf-use-elf-entry-point.patch
|
||||
Patch13: rk3399-Rock960-Ficus-board-support.patch
|
||||
Patch14: dragonboard-fixes.patch
|
||||
Patch15: tegra186-jetson-tx2-disable-onboard-emmc.patch
|
||||
Patch16: tegra-efi_loader-simplify-ifdefs.patch
|
||||
Patch17: tegra-TXx-Add-CONFIG_EFI_LOADER_BOUNCE_BUFFER.patch
|
||||
Patch18: tegra-fix-tx1.patch
|
||||
Patch19: sunxi-DT-A64-add-Pine64-LTS-support.patch
|
||||
|
||||
# Upstream UEFI fixes
|
||||
Patch20: uefi-fixes.patch
|
||||
Patch11: rk3399-Rock960-Ficus-board-support.patch
|
||||
Patch12: dragonboard-fixes.patch
|
||||
Patch13: tegra186-jetson-tx2-disable-onboard-emmc.patch
|
||||
Patch14: tegra-TXx-Add-CONFIG_EFI_LOADER_BOUNCE_BUFFER.patch
|
||||
Patch15: tegra-fix-tx1.patch
|
||||
Patch16: sunxi-DT-A64-add-Pine64-LTS-support.patch
|
||||
|
||||
BuildRequires: bc
|
||||
BuildRequires: dtc
|
||||
|
@ -321,6 +315,9 @@ cp -p board/warp7/README builds/docs/README.warp7
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Tue Oct 30 2018 Peter Robinson <pbrobinson@fedoraproject.org> 2018.11-0.1.rc3
|
||||
- 2018.11 RC3
|
||||
|
||||
* Sun Sep 30 2018 Pablo Greco <pablo@fliagreco.com.ar>
|
||||
- Added conditional to enable devtoolset-7-gcc for .el7 build (Arrfab)
|
||||
- Added conditional BR, python2-pyelftools is python-pyelftools in .el7 (Arrfab)
|
||||
|
|
1017
uefi-fixes.patch
1017
uefi-fixes.patch
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue