~funderscore blog cgit wiki get in touch
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.azure-pipelines.yml1
-rw-r--r--MAINTAINERS5
-rw-r--r--Makefile6
-rw-r--r--arch/arm/dts/imx8mm-cl-iot-gate-optee-u-boot.dtsi2
-rw-r--r--arch/arm/dts/imx8mm-u-boot.dtsi2
-rw-r--r--arch/arm/dts/imx8mn-u-boot.dtsi2
-rw-r--r--arch/arm/dts/imx8mp-rsb3720-a1-u-boot.dtsi2
-rw-r--r--arch/arm/dts/imx8mp-u-boot.dtsi4
-rw-r--r--arch/arm/dts/imx8qm-u-boot.dtsi2
-rw-r--r--arch/arm/dts/k3-am65-iot2050-boot-image.dtsi8
-rw-r--r--arch/arm/dts/mt7986a-bpi-r3-sd.dts4
-rw-r--r--arch/arm/mach-imx/mx7/Kconfig8
-rw-r--r--boot/Kconfig2
-rw-r--r--boot/bootmeth_extlinux.c3
-rw-r--r--boot/bootmeth_script.c3
-rw-r--r--configs/am57xx_hs_evm_usb_defconfig4
-rw-r--r--configs/mt7988_rfb_defconfig1
-rw-r--r--configs/mt7988_sd_rfb_defconfig1
-rw-r--r--doc/develop/bootstd.rst8
-rw-r--r--lib/Makefile6
-rw-r--r--lib/optee/Kconfig8
-rw-r--r--test/boot/bootflow.c4
-rw-r--r--tools/binman/cmdline.py2
-rw-r--r--tools/binman/control.py5
-rw-r--r--tools/dtoc/fdt.py12
25 files changed, 50 insertions, 55 deletions
diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index 53a83eef7db..0304be8a60f 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -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)
diff --git a/MAINTAINERS b/MAINTAINERS
index 84de9de5319..17309e25f28 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -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
diff --git a/Makefile b/Makefile
index 9b90204bfe6..033daf1695c 100644
--- a/Makefile
+++ b/Makefile
@@ -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
diff --git a/arch/arm/dts/imx8mm-cl-iot-gate-optee-u-boot.dtsi b/arch/arm/dts/imx8mm-cl-iot-gate-optee-u-boot.dtsi
index 484e31824b8..d93e1cbd8a7 100644
--- a/arch/arm/dts/imx8mm-cl-iot-gate-optee-u-boot.dtsi
+++ b/arch/arm/dts/imx8mm-cl-iot-gate-optee-u-boot.dtsi
@@ -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>;
diff --git a/arch/arm/dts/imx8mm-u-boot.dtsi b/arch/arm/dts/imx8mm-u-boot.dtsi
index 035282bf0b0..6085128e24e 100644
--- a/arch/arm/dts/imx8mm-u-boot.dtsi
+++ b/arch/arm/dts/imx8mm-u-boot.dtsi
@@ -140,7 +140,7 @@
configurations {
default = "@config-DEFAULT-SEQ";
- binman_configuration: @config-SEQ {
+ @config-SEQ {
description = "NAME";
fdt = "fdt-SEQ";
firmware = "uboot";
diff --git a/arch/arm/dts/imx8mn-u-boot.dtsi b/arch/arm/dts/imx8mn-u-boot.dtsi
index 5046b38e4e2..bc57566a108 100644
--- a/arch/arm/dts/imx8mn-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-u-boot.dtsi
@@ -204,7 +204,7 @@
configurations {
default = "@config-DEFAULT-SEQ";
- binman_configuration: @config-SEQ {
+ @config-SEQ {
description = "NAME";
fdt = "fdt-SEQ";
firmware = "uboot";
diff --git a/arch/arm/dts/imx8mp-rsb3720-a1-u-boot.dtsi b/arch/arm/dts/imx8mp-rsb3720-a1-u-boot.dtsi
index f3fb44046d5..c4ea536b29b 100644
--- a/arch/arm/dts/imx8mp-rsb3720-a1-u-boot.dtsi
+++ b/arch/arm/dts/imx8mp-rsb3720-a1-u-boot.dtsi
@@ -162,6 +162,8 @@
};
};
+/* This cannot work since it refers to a template node
&binman_configuration {
loadables = "atf", "fip";
};
+*/
diff --git a/arch/arm/dts/imx8mp-u-boot.dtsi b/arch/arm/dts/imx8mp-u-boot.dtsi
index 36e7444a627..200938a9807 100644
--- a/arch/arm/dts/imx8mp-u-boot.dtsi
+++ b/arch/arm/dts/imx8mp-u-boot.dtsi
@@ -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";
diff --git a/arch/arm/dts/imx8qm-u-boot.dtsi b/arch/arm/dts/imx8qm-u-boot.dtsi
index a3e0af48109..d316e869516 100644
--- a/arch/arm/dts/imx8qm-u-boot.dtsi
+++ b/arch/arm/dts/imx8qm-u-boot.dtsi
@@ -112,7 +112,7 @@
configurations {
default = "@config-DEFAULT-SEQ";
- binman_configuration: @config-SEQ {
+ @config-SEQ {
description = "NAME";
fdt = "fdt-SEQ";
firmware = "uboot";
diff --git a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
index 3ecb461b011..64318d09cf0 100644
--- a/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
+++ b/arch/arm/dts/k3-am65-iot2050-boot-image.dtsi
@@ -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";
};
};
diff --git a/arch/arm/dts/mt7986a-bpi-r3-sd.dts b/arch/arm/dts/mt7986a-bpi-r3-sd.dts
index 15256302b86..c156a813634 100644
--- a/arch/arm/dts/mt7986a-bpi-r3-sd.dts
+++ b/arch/arm/dts/mt7986a-bpi-r3-sd.dts
@@ -76,12 +76,12 @@
&eth {
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;
};
};
diff --git a/arch/arm/mach-imx/mx7/Kconfig b/arch/arm/mach-imx/mx7/Kconfig
index 0bb18f65200..3c0208e13dd 100644
--- a/arch/arm/mach-imx/mx7/Kconfig
+++ b/arch/arm/mach-imx/mx7/Kconfig
@@ -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
diff --git a/boot/Kconfig b/boot/Kconfig
index e8fb03b8016..86c2787dc53 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -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"
diff --git a/boot/bootmeth_extlinux.c b/boot/bootmeth_extlinux.c
index 6b2b8400383..aa2a4591ebd 100644
--- a/boot/bootmeth_extlinux.c
+++ b/boot/bootmeth_extlinux.c
@@ -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,
diff --git a/boot/bootmeth_script.c b/boot/bootmeth_script.c
index a4050c384df..58c57a2d4b5 100644
--- a/boot/bootmeth_script.c
+++ b/boot/bootmeth_script.c
@@ -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,
diff --git a/configs/am57xx_hs_evm_usb_defconfig b/configs/am57xx_hs_evm_usb_defconfig
index 404e714d4f0..9ed59ac9aec 100644
--- a/configs/am57xx_hs_evm_usb_defconfig
+++ b/configs/am57xx_hs_evm_usb_defconfig
@@ -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
diff --git a/configs/mt7988_rfb_defconfig b/configs/mt7988_rfb_defconfig
index dc97bb36ea7..ced52edecf0 100644
--- a/configs/mt7988_rfb_defconfig
+++ b/configs/mt7988_rfb_defconfig
@@ -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
diff --git a/configs/mt7988_sd_rfb_defconfig b/configs/mt7988_sd_rfb_defconfig
index 421999da869..670f5eae185 100644
--- a/configs/mt7988_sd_rfb_defconfig
+++ b/configs/mt7988_sd_rfb_defconfig
@@ -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
diff --git a/doc/develop/bootstd.rst b/doc/develop/bootstd.rst
index ec313653578..c47de273ab1 100644
--- a/doc/develop/bootstd.rst
+++ b/doc/develop/bootstd.rst
@@ -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
--------------
diff --git a/lib/Makefile b/lib/Makefile
index 8d8ccc8bbc3..9fa573525b8 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -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
diff --git a/lib/optee/Kconfig b/lib/optee/Kconfig
index 517136a4485..e6834d4d3e1 100644
--- a/lib/optee/Kconfig
+++ b/lib/optee/Kconfig
@@ -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
diff --git a/test/boot/bootflow.c b/test/boot/bootflow.c
index 8a4e090e9bc..1c91a942e98 100644
--- a/test/boot/bootflow.c
+++ b/test/boot/bootflow.c
@@ -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 */
diff --git a/tools/binman/cmdline.py b/tools/binman/cmdline.py
index 39c61c2c032..9632ec115e5 100644
--- a/tools/binman/cmdline.py
+++ b/tools/binman/cmdline.py
@@ -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',
diff --git a/tools/binman/control.py b/tools/binman/control.py
index 45948955812..c6d3205b8c2 100644
--- a/tools/binman/control.py
+++ b/tools/binman/control.py
@@ -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
diff --git a/tools/dtoc/fdt.py b/tools/dtoc/fdt.py
index 0b20d52f313..5963925146a 100644
--- a/tools/dtoc/fdt.py
+++ b/tools/dtoc/fdt.py
@@ -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: