~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 53a83eef7d..0304be8a60 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 84de9de531..17309e25f2 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 9b90204bfe..033daf1695 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 484e31824b..d93e1cbd8a 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 035282bf0b..6085128e24 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 5046b38e4e..bc57566a10 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 f3fb44046d..c4ea536b29 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 36e7444a62..200938a980 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 a3e0af4810..d316e86951 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 3ecb461b01..64318d09cf 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 15256302b8..c156a81363 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 0bb18f6520..3c0208e13d 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 e8fb03b801..86c2787dc5 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 6b2b840038..aa2a4591eb 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 a4050c384d..58c57a2d4b 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 404e714d4f..9ed59ac9ae 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 dc97bb36ea..ced52edecf 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 421999da86..670f5eae18 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 ec31365357..c47de273ab 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 8d8ccc8bbc..9fa573525b 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 517136a448..e6834d4d3e 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 8a4e090e9b..1c91a942e9 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 39c61c2c03..9632ec115e 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 4594895581..c6d3205b8c 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 0b20d52f31..5963925146 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: