Merge branch '2023-08-28-assorted-important-fixes'
- A few platform-specific config/dts updates to fix issues, drop a temporary change in binman, update the MAINTAINERS file to remove Wolfgang Denk, fix a typo, fix a corner case with bootstd, update Azure to not timeout so easily, and fix a case where we would omit some files in SPL.
This commit is contained in:
@@ -468,6 +468,7 @@ stages:
|
||||
- stage: world_build
|
||||
jobs:
|
||||
- job: build_the_world
|
||||
timeoutInMinutes: 0 # Use the maximum allowed
|
||||
displayName: 'Build the World'
|
||||
pool:
|
||||
vmImage: $(ubuntu_vm)
|
||||
|
||||
+1
-4
@@ -1015,7 +1015,6 @@ F: tools/mkeficapsule.c
|
||||
|
||||
ENVIRONMENT
|
||||
M: Joe Hershberger <joe.hershberger@ni.com>
|
||||
R: Wolfgang Denk <wd@denx.de>
|
||||
S: Maintained
|
||||
F: env/
|
||||
F: include/env*
|
||||
@@ -1025,7 +1024,6 @@ F: tools/mkenvimage.c
|
||||
|
||||
ENVIRONMENT AS TEXT
|
||||
M: Simon Glass <sjg@chromium.org>
|
||||
R: Wolfgang Denk <wd@denx.de>
|
||||
S: Maintained
|
||||
F: doc/usage/environment.rst
|
||||
F: scripts/env2string.awk
|
||||
@@ -1343,8 +1341,7 @@ F: drivers/power/
|
||||
F: include/power/
|
||||
|
||||
POWERPC
|
||||
M: Wolfgang Denk <wd@denx.de>
|
||||
S: Maintained
|
||||
S: Orphan (Since 2022-10-21)
|
||||
F: arch/powerpc/
|
||||
|
||||
POWERPC MPC8XX
|
||||
|
||||
@@ -1328,11 +1328,6 @@ u-boot.ldr: u-boot
|
||||
# Use 'make BINMAN_VERBOSE=3' to set vebosity level
|
||||
default_dt := $(if $(DEVICE_TREE),$(DEVICE_TREE),$(CONFIG_DEFAULT_DEVICE_TREE))
|
||||
|
||||
# Temporary workaround for Venice boards
|
||||
ifneq ($(CONFIG_TARGET_IMX8MM_VENICE),$(CONFIG_TARGET_IMX8MN_VENICE),$(CONFIG_TARGET_IMX8MP_VENICE),)
|
||||
ignore_dups := --ignore-dup-phandles
|
||||
endif
|
||||
|
||||
quiet_cmd_binman = BINMAN $@
|
||||
cmd_binman = $(srctree)/tools/binman/binman $(if $(BINMAN_DEBUG),-D) \
|
||||
$(foreach f,$(BINMAN_TOOLPATHS),--toolpath $(f)) \
|
||||
@@ -1354,7 +1349,6 @@ cmd_binman = $(srctree)/tools/binman/binman $(if $(BINMAN_DEBUG),-D) \
|
||||
-a spl-dtb=$(CONFIG_SPL_OF_REAL) \
|
||||
-a tpl-dtb=$(CONFIG_TPL_OF_REAL) \
|
||||
-a pre-load-key-path=${PRE_LOAD_KEY_PATH} \
|
||||
$(ignore_dups) \
|
||||
$(BINMAN_$(@F))
|
||||
|
||||
OBJCOPYFLAGS_u-boot.ldr.hex := -I binary -O ihex
|
||||
|
||||
@@ -41,9 +41,11 @@
|
||||
};
|
||||
};
|
||||
|
||||
/* This cannot work since it refers to a template node
|
||||
&binman_configuration {
|
||||
loadables = "atf", "fip";
|
||||
};
|
||||
*/
|
||||
|
||||
&fec1 {
|
||||
phy-reset-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
configurations {
|
||||
default = "@config-DEFAULT-SEQ";
|
||||
|
||||
binman_configuration: @config-SEQ {
|
||||
@config-SEQ {
|
||||
description = "NAME";
|
||||
fdt = "fdt-SEQ";
|
||||
firmware = "uboot";
|
||||
|
||||
@@ -204,7 +204,7 @@
|
||||
configurations {
|
||||
default = "@config-DEFAULT-SEQ";
|
||||
|
||||
binman_configuration: @config-SEQ {
|
||||
@config-SEQ {
|
||||
description = "NAME";
|
||||
fdt = "fdt-SEQ";
|
||||
firmware = "uboot";
|
||||
|
||||
@@ -162,6 +162,8 @@
|
||||
};
|
||||
};
|
||||
|
||||
/* This cannot work since it refers to a template node
|
||||
&binman_configuration {
|
||||
loadables = "atf", "fip";
|
||||
};
|
||||
*/
|
||||
|
||||
@@ -146,7 +146,7 @@
|
||||
type = "flat_dt";
|
||||
compression = "none";
|
||||
|
||||
uboot_fdt_blob: blob-ext {
|
||||
blob-ext {
|
||||
filename = "u-boot.dtb";
|
||||
};
|
||||
};
|
||||
@@ -155,7 +155,7 @@
|
||||
configurations {
|
||||
default = "@config-DEFAULT-SEQ";
|
||||
|
||||
binman_configuration: @config-SEQ {
|
||||
@config-SEQ {
|
||||
description = "NAME";
|
||||
fdt = "fdt-SEQ";
|
||||
firmware = "uboot";
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
configurations {
|
||||
default = "@config-DEFAULT-SEQ";
|
||||
|
||||
binman_configuration: @config-SEQ {
|
||||
@config-SEQ {
|
||||
description = "NAME";
|
||||
fdt = "fdt-SEQ";
|
||||
firmware = "uboot";
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
os = "arm-trusted-firmware";
|
||||
load = <CONFIG_K3_ATF_LOAD_ADDR>;
|
||||
entry = <CONFIG_K3_ATF_LOAD_ADDR>;
|
||||
atf: atf-bl31 {
|
||||
atf-bl31 {
|
||||
};
|
||||
};
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
os = "tee";
|
||||
load = <0x9e800000>;
|
||||
entry = <0x9e800000>;
|
||||
tee: tee-os {
|
||||
tee-os {
|
||||
};
|
||||
};
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
compression = "none";
|
||||
load = <CONFIG_SPL_TEXT_BASE>;
|
||||
entry = <CONFIG_SPL_TEXT_BASE>;
|
||||
u_boot_spl_nodtb: blob-ext {
|
||||
blob-ext {
|
||||
filename = "spl/u-boot-spl-nodtb.bin";
|
||||
};
|
||||
};
|
||||
@@ -88,7 +88,7 @@
|
||||
type = "flat_dt";
|
||||
arch = "arm";
|
||||
compression = "none";
|
||||
spl_am65x_evm_dtb: blob-ext {
|
||||
blob-ext {
|
||||
filename = "spl/dts/k3-am65-iot2050-spl.dtb";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -76,12 +76,12 @@
|
||||
ð {
|
||||
status = "okay";
|
||||
mediatek,gmac-id = <0>;
|
||||
phy-mode = "sgmii";
|
||||
phy-mode = "2500base-x";
|
||||
mediatek,switch = "mt7531";
|
||||
reset-gpios = <&gpio 5 GPIO_ACTIVE_HIGH>;
|
||||
|
||||
fixed-link {
|
||||
speed = <1000>;
|
||||
speed = <2500>;
|
||||
full-duplex;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -24,14 +24,6 @@ config SPL_TEXT_BASE
|
||||
depends on SPL
|
||||
default 0x00912000
|
||||
|
||||
config OPTEE_TZDRAM_SIZE
|
||||
hex "Amount of Trust-Zone RAM for the OPTEE image"
|
||||
default 0x0000000
|
||||
depends on OPTEE_LIB
|
||||
help
|
||||
The size of pre-allocated Trust Zone DRAM to allocate for the OPTEE
|
||||
runtime.
|
||||
|
||||
choice
|
||||
prompt "MX7 board select"
|
||||
optional
|
||||
|
||||
+1
-1
@@ -1439,7 +1439,7 @@ config AUTOBOOT_MENU_SHOW
|
||||
This enables the boot menu, controlled by environment variables
|
||||
defined by the board. The menu starts after running the 'preboot'
|
||||
environmnent variable (if enabled) and before handling the boot delay.
|
||||
See README.bootmenu for more details.
|
||||
See doc/usage/cmd/bootmenu.rst for more details.
|
||||
|
||||
config BOOTMENU_DISABLE_UBOOT_CONSOLE
|
||||
bool "Disallow bootmenu to enter the U-Boot console"
|
||||
|
||||
@@ -184,7 +184,8 @@ static const struct udevice_id extlinux_bootmeth_ids[] = {
|
||||
{ }
|
||||
};
|
||||
|
||||
U_BOOT_DRIVER(bootmeth_extlinux) = {
|
||||
/* Put an number before 'extlinux' to provide a default ordering */
|
||||
U_BOOT_DRIVER(bootmeth_1extlinux) = {
|
||||
.name = "bootmeth_extlinux",
|
||||
.id = UCLASS_BOOTMETH,
|
||||
.of_match = extlinux_bootmeth_ids,
|
||||
|
||||
@@ -243,7 +243,8 @@ static const struct udevice_id script_bootmeth_ids[] = {
|
||||
{ }
|
||||
};
|
||||
|
||||
U_BOOT_DRIVER(bootmeth_script) = {
|
||||
/* Put an number before 'script' to provide a default ordering */
|
||||
U_BOOT_DRIVER(bootmeth_2script) = {
|
||||
.name = "bootmeth_script",
|
||||
.id = UCLASS_BOOTMETH,
|
||||
.of_match = script_bootmeth_ids,
|
||||
|
||||
@@ -70,7 +70,7 @@ CONFIG_NET_RETRY_COUNT=10
|
||||
CONFIG_BOOTP_SEND_HOSTNAME=y
|
||||
CONFIG_SPL_DM=y
|
||||
CONFIG_SPL_DM_SEQ_ALIAS=y
|
||||
CONFIG_SCSI_AHCI=y
|
||||
CONFIG_DWC_AHCI=y
|
||||
CONFIG_DFU_MMC=y
|
||||
CONFIG_DFU_RAM=y
|
||||
CONFIG_USB_FUNCTION_FASTBOOT=y
|
||||
@@ -102,7 +102,7 @@ CONFIG_PMIC_PALMAS=y
|
||||
CONFIG_DM_REGULATOR=y
|
||||
CONFIG_DM_REGULATOR_PALMAS=y
|
||||
CONFIG_PALMAS_POWER=y
|
||||
CONFIG_SCSI_AHCI_PLAT=y
|
||||
CONFIG_DM_SCSI=y
|
||||
CONFIG_DM_SERIAL=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_DM_SPI=y
|
||||
|
||||
@@ -81,3 +81,4 @@ CONFIG_MTK_SPIM=y
|
||||
CONFIG_LZO=y
|
||||
CONFIG_HEXDUMP=y
|
||||
# CONFIG_EFI_LOADER is not set
|
||||
CONFIG_LMB_MAX_REGIONS=64
|
||||
|
||||
@@ -69,3 +69,4 @@ CONFIG_MTK_SPIM=y
|
||||
CONFIG_LZO=y
|
||||
CONFIG_HEXDUMP=y
|
||||
# CONFIG_EFI_LOADER is not set
|
||||
CONFIG_LMB_MAX_REGIONS=64
|
||||
|
||||
@@ -132,6 +132,9 @@ above bootdev scanning.
|
||||
Controlling ordering
|
||||
--------------------
|
||||
|
||||
By default, faster bootdevs (or those which are assumed to be faster) are used
|
||||
first, since they are more likely to be able to boot the device quickly.
|
||||
|
||||
Several options are available to control the ordering of boot scanning:
|
||||
|
||||
|
||||
@@ -151,6 +154,10 @@ bootdevs and their sequence numbers.
|
||||
bootmeths
|
||||
~~~~~~~~~
|
||||
|
||||
By default bootmeths are checked in name order. Use `bootmeth list` to see the
|
||||
ordering. Note that the `extlinux` and `script` bootmeth is first, to preserve the behaviour
|
||||
used by the old distro scripts.
|
||||
|
||||
This environment variable can be used to control the list of bootmeths used and
|
||||
their ordering for example::
|
||||
|
||||
@@ -164,7 +171,6 @@ controlled by aliases.
|
||||
The :ref:`usage/cmd/bootmeth:bootmeth command` (`bootmeth order`) operates in
|
||||
the same way as setting this variable.
|
||||
|
||||
|
||||
Bootdev uclass
|
||||
--------------
|
||||
|
||||
|
||||
+3
-3
@@ -72,9 +72,9 @@ obj-$(CONFIG_ECDSA) += ecdsa/
|
||||
obj-$(CONFIG_$(SPL_)RSA) += rsa/
|
||||
obj-$(CONFIG_HASH) += hash-checksum.o
|
||||
obj-$(CONFIG_BLAKE2) += blake2/blake2b.o
|
||||
obj-$(CONFIG_SHA1) += sha1.o
|
||||
obj-$(CONFIG_SHA256) += sha256.o
|
||||
obj-$(CONFIG_SHA512) += sha512.o
|
||||
obj-$(CONFIG_$(SPL_)SHA1) += sha1.o
|
||||
obj-$(CONFIG_$(SPL_)SHA256) += sha256.o
|
||||
obj-$(CONFIG_$(SPL_)SHA512) += sha512.o
|
||||
obj-$(CONFIG_CRYPT_PW) += crypt/
|
||||
obj-$(CONFIG_$(SPL_)ASN1_DECODER) += asn1_decoder.o
|
||||
|
||||
|
||||
@@ -11,6 +11,14 @@ config OPTEE_IMAGE
|
||||
This option enable the OPTEE specific checks done before booting
|
||||
an OPTEE image created with mkimage
|
||||
|
||||
config OPTEE_TZDRAM_SIZE
|
||||
hex "Amount of Trust-Zone RAM for the OPTEE image"
|
||||
default 0x0000000
|
||||
depends on OPTEE_LIB
|
||||
help
|
||||
The size of pre-allocated Trust Zone DRAM to allocate for the OPTEE
|
||||
runtime.
|
||||
|
||||
config BOOTM_OPTEE
|
||||
bool "Support OPTEE bootm command"
|
||||
select BOOTM_LINUX
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
DECLARE_GLOBAL_DATA_PTR;
|
||||
|
||||
extern U_BOOT_DRIVER(bootmeth_script);
|
||||
extern U_BOOT_DRIVER(bootmeth_2script);
|
||||
|
||||
static int inject_response(struct unit_test_state *uts)
|
||||
{
|
||||
@@ -525,7 +525,7 @@ static int prep_mmc4_bootdev(struct unit_test_state *uts)
|
||||
|
||||
/* Enable the script bootmeth too */
|
||||
ut_assertok(uclass_first_device_err(UCLASS_BOOTSTD, &bootstd));
|
||||
ut_assertok(device_bind(bootstd, DM_DRIVER_REF(bootmeth_script),
|
||||
ut_assertok(device_bind(bootstd, DM_DRIVER_REF(bootmeth_2script),
|
||||
"bootmeth_script", 0, ofnode_null(), &dev));
|
||||
|
||||
/* Change the order to include mmc4 */
|
||||
|
||||
@@ -126,8 +126,6 @@ controlled by a description in the board device tree.'''
|
||||
help='Comma-separated list of bintools to consider missing (for testing)')
|
||||
build_parser.add_argument('-i', '--image', type=str, action='append',
|
||||
help='Image filename to build (if not specified, build all)')
|
||||
build_parser.add_argument('--ignore-dup-phandles', action='store_true',
|
||||
help='Temporary option to ignore duplicate phandles')
|
||||
build_parser.add_argument('-I', '--indir', action='append',
|
||||
help='Add a path to the list of directories to use for input files')
|
||||
build_parser.add_argument('-m', '--map', action='store_true',
|
||||
|
||||
@@ -22,7 +22,6 @@ from binman import bintool
|
||||
from binman import cbfs_util
|
||||
from binman import elf
|
||||
from binman import entry
|
||||
from dtoc import fdt
|
||||
from dtoc import fdt_util
|
||||
from u_boot_pylib import command
|
||||
from u_boot_pylib import tools
|
||||
@@ -817,10 +816,6 @@ def Binman(args):
|
||||
cbfs_util.VERBOSE = args.verbosity > 2
|
||||
state.use_fake_dtb = args.fake_dtb
|
||||
|
||||
# Temporary hack
|
||||
if args.ignore_dup_phandles: # pragma: no cover
|
||||
fdt.IGNORE_DUP_PHANDLES = True
|
||||
|
||||
# Normally we replace the 'u-boot' etype with 'u-boot-expanded', etc.
|
||||
# When running tests this can be disabled using this flag. When not
|
||||
# updating the FDT in image, it is not needed by binman, but we use it
|
||||
|
||||
+4
-8
@@ -15,9 +15,6 @@ from libfdt import QUIET_NOTFOUND
|
||||
from u_boot_pylib import tools
|
||||
from u_boot_pylib import tout
|
||||
|
||||
# Temporary hack
|
||||
IGNORE_DUP_PHANDLES = False
|
||||
|
||||
# This deals with a device tree, presenting it as an assortment of Node and
|
||||
# Prop objects, representing nodes and properties, respectively. This file
|
||||
# contains the base classes and defines the high-level API. You can use
|
||||
@@ -342,11 +339,10 @@ class Node:
|
||||
if phandle:
|
||||
dup = self._fdt.phandle_to_node.get(phandle)
|
||||
if dup:
|
||||
if not IGNORE_DUP_PHANDLES:
|
||||
raise ValueError(
|
||||
f'Duplicate phandle {phandle} in nodes {dup.path} and {self.path}')
|
||||
else:
|
||||
self._fdt.phandle_to_node[phandle] = self
|
||||
raise ValueError(
|
||||
f'Duplicate phandle {phandle} in nodes {dup.path} and {self.path}')
|
||||
|
||||
self._fdt.phandle_to_node[phandle] = self
|
||||
|
||||
offset = fdt_obj.first_subnode(self.Offset(), QUIET_NOTFOUND)
|
||||
while offset >= 0:
|
||||
|
||||
Reference in New Issue
Block a user