* [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
@ 2024-08-23 20:48 Simon Glass
2024-08-23 20:48 ` [PATCH v2 1/8] blk: Make functions available unconditionally Simon Glass
` (8 more replies)
0 siblings, 9 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass,
AKASHI Takahiro, Alper Nebi Yasak, Andrew Davis, Bin Meng,
Bryan Brattlof, Caleb Connolly, Csókás Bence,
Dragan Simic, Eddie James, Hans de Goede, Heinrich Schuchardt,
Ilias Apalodimas, Janne Grunau, Jesse Taube, Joe Hershberger,
Johan Jonker, Julien Masson, Kever Yang, Leon M. Busch-George,
Marek Vasut, Marek Vasut, Mattijs Korpershoek, Michal Simek,
Nam Cao, Peter Robinson, Quentin Schulz, Ramon Fried,
Rasmus Villemoes, Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu
This series attempts to migrate all sunxi boards to use standard boot,
along with a text environment.
Changes in v2:
- Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
- Put the FEL bootmeth before all other global bootmeths
- Convert the other DISTRO_DEFAULTS in the Kconfig too
- Keep BOOTCMD_SUNXI_COMPAT
- Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
Simon Glass (8):
blk: Make functions available unconditionally
bootstd: Avoid calling unavailable block functions
bootstd: Avoid depending on BLK
sunxi: Add a bootmeth for FEL
sunxi: Move to bootstd
sunxi: Drop old distro boot variables
env: Provide a work-around for unquoting fdtfile
sunxi: Move to text environment
Makefile | 1 +
arch/arm/Kconfig | 10 +-
board/sunxi/sunxi.env | 152 +++++++++++
boot/Kconfig | 16 +-
boot/Makefile | 1 +
boot/bootdev-uclass.c | 3 +
boot/bootmeth_fel.c | 81 ++++++
.../gardena-smart-gateway-mt7688_defconfig | 1 +
doc/usage/environment.rst | 12 +
include/blk.h | 9 +-
include/configs/sunxi-common.h | 238 ------------------
11 files changed, 278 insertions(+), 246 deletions(-)
create mode 100644 board/sunxi/sunxi.env
create mode 100644 boot/bootmeth_fel.c
--
2.34.1
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH v2 1/8] blk: Make functions available unconditionally
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-23 20:48 ` [PATCH v2 2/8] bootstd: Avoid calling unavailable block functions Simon Glass
` (7 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass, Bin Meng,
Johan Jonker, Kever Yang, Marek Vasut
Some boards still don't enable BLK but we want to be able to at least
compile the code which relies on this. For example, bootstd includes
calls to blk_...() functions, albeit with a check for BLK so that the
code is eliminated by the compiler.
Reduce the scope of the BLK #ifdef to help with this.
Signed-off-by: Simon Glass <sjg@chromium.org>
---
(no changes since v1)
include/blk.h | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/include/blk.h b/include/blk.h
index 7c7cf7f2b10..a4aa7dd34df 100644
--- a/include/blk.h
+++ b/include/blk.h
@@ -197,7 +197,6 @@ static inline void blkcache_free(void) {}
#endif
-#if CONFIG_IS_ENABLED(BLK)
struct udevice;
/* Operations on block devices */
@@ -278,6 +277,8 @@ struct blk_ops {
#endif /* CONFIG_BOUNCE_BUFFER */
};
+#if CONFIG_IS_ENABLED(BLK)
+
/*
* These functions should take struct udevice instead of struct blk_desc,
* but this is convenient for migration to driver model. Add a 'd' prefix
@@ -291,6 +292,8 @@ unsigned long blk_dwrite(struct blk_desc *block_dev, lbaint_t start,
unsigned long blk_derase(struct blk_desc *block_dev, lbaint_t start,
lbaint_t blkcnt);
+#endif /* BLK */
+
/**
* blk_read() - Read from a block device
*
@@ -528,8 +531,10 @@ struct blk_desc *blk_get_by_device(struct udevice *dev);
*/
int blk_get_desc(enum uclass_id uclass_id, int devnum, struct blk_desc **descp);
-#else
+#if !CONFIG_IS_ENABLED(BLK)
+
#include <errno.h>
+
/*
* These functions should take struct udevice instead of struct blk_desc,
* but this is convenient for migration to driver model. Add a 'd' prefix
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 2/8] bootstd: Avoid calling unavailable block functions
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
2024-08-23 20:48 ` [PATCH v2 1/8] blk: Make functions available unconditionally Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-23 20:48 ` [PATCH v2 3/8] bootstd: Avoid depending on BLK Simon Glass
` (6 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass, Caleb Connolly,
Dragan Simic, Nam Cao, Thomas Weißschuh, Tony Dinh
When BLK is not enabled but BOOTSTD is, some features of standard boot
become unavailable. Add a check for this in the only site that is
currently apparent.
Signed-off-by: Simon Glass <sjg@chromium.org>
---
(no changes since v1)
boot/bootdev-uclass.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/boot/bootdev-uclass.c b/boot/bootdev-uclass.c
index 7c7bba088c9..e10be2baa30 100644
--- a/boot/bootdev-uclass.c
+++ b/boot/bootdev-uclass.c
@@ -434,6 +434,9 @@ int bootdev_find_by_label(const char *label, struct udevice **devp,
struct uclass *uc;
enum uclass_id id;
+ if (!CONFIG_IS_ENABLED(BLK))
+ return -ENOSYS;
+
ret = label_to_uclass(label, &seq, &method_flags);
if (ret < 0)
return log_msg_ret("uc", ret);
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 3/8] bootstd: Avoid depending on BLK
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
2024-08-23 20:48 ` [PATCH v2 1/8] blk: Make functions available unconditionally Simon Glass
2024-08-23 20:48 ` [PATCH v2 2/8] bootstd: Avoid calling unavailable block functions Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-26 15:58 ` Quentin Schulz
2024-08-23 20:48 ` [PATCH v2 4/8] sunxi: Add a bootmeth for FEL Simon Glass
` (5 subsequent siblings)
8 siblings, 1 reply; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass, Eddie James,
Heinrich Schuchardt, Ilias Apalodimas, Mattijs Korpershoek,
Stefan Roese
In principle bootstd can work without block devices, even if it does
require driver model to be enabled in that case.
The use of a 'depends on BLK' for BOOTSTD conflicts with the way 'BLK'
is now defined, producing recursive errors through multiple different
paths, one of which is this (with Linksprite_pcDuino3 and
BOOTSTD_DEFAULTS enabled):
arch/arm/Kconfig:7:error: recursive dependency detected!
arch/arm/Kconfig:7: symbol ARM64 is selected by ARCH_UNIPHIER_V8_MULTI
arch/arm/mach-uniphier/Kconfig:17: symbol ARCH_UNIPHIER_V8_MULTI is
part of choice <choice>
arch/arm/mach-uniphier/Kconfig:6: choice <choice> contains symbol
ARCH_UNIPHIER_V8_MULTI
arch/arm/mach-uniphier/Kconfig:17: symbol ARCH_UNIPHIER_V8_MULTI is
part of choice SPL
arch/arm/mach-stm32mp/Kconfig:3: symbol SPL depends on SUPPORT_SPL
common/spl/Kconfig:1: symbol SUPPORT_SPL is selected by ASPEED_AST2600
arch/arm/mach-aspeed/Kconfig:26: symbol ASPEED_AST2600 is part of
choice <choice>
arch/arm/mach-aspeed/Kconfig:12: choice <choice> contains symbol
ASPEED_AST2500
arch/arm/mach-aspeed/Kconfig:17: symbol ASPEED_AST2500 is part of
choice DM_RESET
arch/arm/mach-renesas/Kconfig.rcar3:197: symbol DM_RESET is selected
by CLK_RCAR_GEN3
drivers/clk/renesas/Kconfig:53: symbol CLK_RCAR_GEN3 depends on
CLK_RENESAS
drivers/clk/renesas/Kconfig:1: symbol CLK_RENESAS depends on CLK
drivers/clk/Kconfig:3: symbol CLK is selected by IMX8M_POWER_DOMAIN
drivers/power/domain/Kconfig:35: symbol IMX8M_POWER_DOMAIN depends on
POWER_DOMAIN
drivers/power/domain/Kconfig:3: symbol POWER_DOMAIN is selected by
BCM6318_USBH_PHY
drivers/phy/Kconfig:83: symbol BCM6318_USBH_PHY depends on PHY
drivers/phy/Kconfig:4: symbol PHY is selected by USB_EHCI_MX7
drivers/usb/host/Kconfig:211: symbol USB_EHCI_MX7 depends on USB
drivers/usb/Kconfig:1: symbol USB is selected by BOOTSTD_DEFAULTS
boot/Kconfig:455: symbol BOOTSTD_DEFAULTS depends on BOOTSTD
boot/Kconfig:398: symbol BOOTSTD depends on BLK
drivers/block/Kconfig:1: symbol BLK is selected by PVBLOCK
drivers/xen/Kconfig:1: symbol PVBLOCK depends on XEN
Kconfig:176: symbol XEN depends on ARM64
We don't want to revert the change to BLK, which has been in place for
a year now. We don't want to select BLK in BOOTSTD since it should
support booting without block devices. The only realistic option is to
remove BOOTSTD's dependency on BLK.
Disable standard boot on the one board which fails.
Signed-off-by: Simon Glass <sjg@chromium.org>
wip
---
Changes in v2:
- Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
boot/Kconfig | 2 +-
configs/gardena-smart-gateway-mt7688_defconfig | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/boot/Kconfig b/boot/Kconfig
index 7ac34574079..291919ea1ef 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -398,7 +398,7 @@ config BOOT_DEFAULTS
menuconfig BOOTSTD
bool "Standard boot"
default y
- depends on DM && OF_CONTROL && BLK
+ depends on DM && OF_CONTROL
help
U-Boot supports a standard way of locating something to boot,
typically an Operating System such as Linux, provided by a distro such
diff --git a/configs/gardena-smart-gateway-mt7688_defconfig b/configs/gardena-smart-gateway-mt7688_defconfig
index f4642e3fcff..36bf5f11d9a 100644
--- a/configs/gardena-smart-gateway-mt7688_defconfig
+++ b/configs/gardena-smart-gateway-mt7688_defconfig
@@ -30,6 +30,7 @@ CONFIG_HAS_BOARD_SIZE_LIMIT=y
CONFIG_BOARD_SIZE_LIMIT=655360
CONFIG_FIT=y
CONFIG_FIT_SIGNATURE=y
+# CONFIG_BOOTSTD is not set
CONFIG_LEGACY_IMAGE_FORMAT=y
CONFIG_AUTOBOOT_KEYED=y
CONFIG_AUTOBOOT_STOP_STR="x"
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 4/8] sunxi: Add a bootmeth for FEL
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
` (2 preceding siblings ...)
2024-08-23 20:48 ` [PATCH v2 3/8] bootstd: Avoid depending on BLK Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-23 20:48 ` [PATCH v2 5/8] sunxi: Move to bootstd Simon Glass
` (4 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass,
Mattijs Korpershoek, AKASHI Takahiro, Eddie James,
Heinrich Schuchardt, Ilias Apalodimas, Julien Masson
Add support for booting from a script loaded over FEL. This mirrors the
bootcmd_fel provided by distro boot.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
---
Changes in v2:
- Put the FEL bootmeth before all other global bootmeths
boot/Kconfig | 14 ++++++++
boot/Makefile | 1 +
boot/bootmeth_fel.c | 81 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 96 insertions(+)
create mode 100644 boot/bootmeth_fel.c
diff --git a/boot/Kconfig b/boot/Kconfig
index 291919ea1ef..7d6e819bde6 100644
--- a/boot/Kconfig
+++ b/boot/Kconfig
@@ -585,6 +585,20 @@ config BOOTMETH_EFI_BOOTMGR
the EFI binary to be launched is determined. To set the EFI variables
use the eficonfig command.
+config BOOTMETH_FEL
+ bool "Bootdev support for Sunxi FEL"
+ depends on ARCH_SUNXI
+ default y
+ help
+ Enables support for booting over USB on a Sunxi device. This uses
+ the FEL protocol and obtains the script address from the
+ 'fel_scriptaddr' environment variable.
+
+ This method is only available if booting from FEL, i.e. the
+ 'fel_booted' environment variable is set.
+
+ See https://linux-sunxi.org/FEL/Protocol for more information.
+
config BOOTMETH_QFW
bool "Boot method using QEMU parameters"
depends on QFW
diff --git a/boot/Makefile b/boot/Makefile
index f4675d6ffd5..295f27dfd39 100644
--- a/boot/Makefile
+++ b/boot/Makefile
@@ -30,6 +30,7 @@ obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_EXTLINUX) += bootmeth_extlinux.o
obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_EXTLINUX_PXE) += bootmeth_pxe.o
obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_EFILOADER) += bootmeth_efi.o
obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_CROS) += bootm.o bootm_os.o bootmeth_cros.o
+obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_FEL) += bootmeth_fel.o
obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_QFW) += bootmeth_qfw.o
obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_SANDBOX) += bootmeth_sandbox.o
obj-$(CONFIG_$(SPL_TPL_)BOOTMETH_SCRIPT) += bootmeth_script.o
diff --git a/boot/bootmeth_fel.c b/boot/bootmeth_fel.c
new file mode 100644
index 00000000000..160ba6eb827
--- /dev/null
+++ b/boot/bootmeth_fel.c
@@ -0,0 +1,81 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Bootmethod for sunxi FEL loading
+ *
+ * Copyright 2024 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ */
+
+#define LOG_CATEGORY UCLASS_BOOTSTD
+
+#include <bootdev.h>
+#include <bootflow.h>
+#include <bootmeth.h>
+#include <command.h>
+#include <dm.h>
+#include <env.h>
+
+static int fel_check(struct udevice *dev, struct bootflow_iter *iter)
+{
+ return 0;
+}
+
+static int fel_read_bootflow(struct udevice *dev, struct bootflow *bflow)
+{
+ if (!env_get("fel_booted") || !env_get("fel_scriptaddr"))
+ return -ENOENT;
+
+ bflow->state = BOOTFLOWST_READY;
+
+ return 0;
+}
+
+static int fel_read_file(struct udevice *dev, struct bootflow *bflow,
+ const char *file_path, ulong addr, ulong *sizep)
+{
+ return -ENOSYS;
+}
+
+static int fel_boot(struct udevice *dev, struct bootflow *bflow)
+{
+ ulong addr;
+ int ret;
+
+ addr = env_get_hex("fel_scriptaddr", 0);
+ ret = cmd_source_script(addr, NULL, NULL);
+ if (ret)
+ return log_msg_ret("boot", ret);
+
+ return 0;
+}
+
+static int fel_bootmeth_bind(struct udevice *dev)
+{
+ struct bootmeth_uc_plat *plat = dev_get_uclass_plat(dev);
+
+ plat->desc = IS_ENABLED(CONFIG_BOOTSTD_FULL) ?
+ "Sunxi FEL boot over USB" : "FEL";
+ plat->flags = BOOTMETHF_GLOBAL;
+
+ return 0;
+}
+
+static struct bootmeth_ops fel_bootmeth_ops = {
+ .check = fel_check,
+ .read_bootflow = fel_read_bootflow,
+ .read_file = fel_read_file,
+ .boot = fel_boot,
+};
+
+static const struct udevice_id fel_bootmeth_ids[] = {
+ { .compatible = "u-boot,fel-bootmeth" },
+ { }
+};
+
+U_BOOT_DRIVER(bootmeth_2fel) = {
+ .name = "bootmeth_fel",
+ .id = UCLASS_BOOTMETH,
+ .of_match = fel_bootmeth_ids,
+ .ops = &fel_bootmeth_ops,
+ .bind = fel_bootmeth_bind,
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 5/8] sunxi: Move to bootstd
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
` (3 preceding siblings ...)
2024-08-23 20:48 ` [PATCH v2 4/8] sunxi: Add a bootmeth for FEL Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-23 20:48 ` [PATCH v2 6/8] sunxi: Drop old distro boot variables Simon Glass
` (3 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass,
Alper Nebi Yasak, Andrew Davis, Caleb Connolly,
Csókás Bence, Marek Vasut, Michal Simek, Peter Robinson,
Rayagonda Kokatanur, Sumit Garg, Venkatesh Yadav Abbarapu
Drop support for distroboot and move to using bootstd instead.
Signed-off-by: Simon Glass <sjg@chromium.org>
---
Changes in v2:
- Convert the other DISTRO_DEFAULTS in the Kconfig too
arch/arm/Kconfig | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 656f588a97c..4e36a4814b8 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1147,7 +1147,7 @@ config ARCH_SUNXI
select BINMAN
select CMD_GPIO
select CMD_MMC if MMC
- select CMD_USB if DISTRO_DEFAULTS && USB_HOST
+ select CMD_USB if BOOTSTD_DEFAULTS && USB_HOST
select CLK
select DM
select DM_GPIO
@@ -1169,9 +1169,9 @@ config ARCH_SUNXI
select SUNXI_GPIO
select SYS_NS16550
select SYS_THUMB_BUILD if !ARM64
- select USB if DISTRO_DEFAULTS
- select USB_KEYBOARD if DISTRO_DEFAULTS && USB_HOST
- select USB_STORAGE if DISTRO_DEFAULTS && USB_HOST
+ select USB if BOOTSTD_DEFAULTS
+ select USB_KEYBOARD if BOOTSTD_DEFAULTS && USB_HOST
+ select USB_STORAGE if BOOTSTD_DEFAULTS && USB_HOST
select SPL_USE_TINY_PRINTF if SPL
select USE_PREBOOT
select SYS_RELOC_GD_ENV_ADDR
@@ -1179,7 +1179,7 @@ config ARCH_SUNXI
imply CMD_DM
imply CMD_GPT
imply CMD_UBI if MTD_RAW_NAND
- imply DISTRO_DEFAULTS
+ imply BOOTSTD_DEFAULTS
imply DM_REGULATOR
imply DM_REGULATOR_FIXED
imply FAT_WRITE
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 6/8] sunxi: Drop old distro boot variables
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
` (4 preceding siblings ...)
2024-08-23 20:48 ` [PATCH v2 5/8] sunxi: Move to bootstd Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-23 20:48 ` [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile Simon Glass
` (2 subsequent siblings)
8 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List; +Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass
These are not needed as bootstd handles the boot now. Drop them.
Keep BOOTCMD_SUNXI_COMPAT for now since it does not relate to
distro boot.
Signed-off-by: Simon Glass <sjg@chromium.org>
---
Changes in v2:
- Keep BOOTCMD_SUNXI_COMPAT
include/configs/sunxi-common.h | 75 +---------------------------------
1 file changed, 1 insertion(+), 74 deletions(-)
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index b29a25d5617..666553ccadb 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -156,76 +156,6 @@
"fdt ram " FDT_ADDR_R " 0x100000;" \
"ramdisk ram " RAMDISK_ADDR_R " 0x4000000\0"
-/****************************************************************************
- * definitions for the distro boot system *
- ****************************************************************************/
-#ifdef CONFIG_MMC
-#if CONFIG_MMC_SUNXI_SLOT_EXTRA != -1
-#define BOOTENV_DEV_MMC_AUTO(devtypeu, devtypel, instance) \
- BOOTENV_DEV_MMC(MMC, mmc, 0) \
- BOOTENV_DEV_MMC(MMC, mmc, 1) \
- "bootcmd_mmc_auto=" \
- "if test ${mmc_bootdev} -eq 1; then " \
- "run bootcmd_mmc1; " \
- "run bootcmd_mmc0; " \
- "elif test ${mmc_bootdev} -eq 0; then " \
- "run bootcmd_mmc0; " \
- "run bootcmd_mmc1; " \
- "fi\0"
-
-#define BOOTENV_DEV_NAME_MMC_AUTO(devtypeu, devtypel, instance) \
- "mmc_auto "
-
-#define BOOT_TARGET_DEVICES_MMC(func) func(MMC_AUTO, mmc_auto, na)
-#else
-#define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0)
-#endif
-#else
-#define BOOT_TARGET_DEVICES_MMC(func)
-#endif
-
-#ifdef CONFIG_AHCI
-#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0)
-#else
-#define BOOT_TARGET_DEVICES_SCSI(func)
-#endif
-
-#ifdef CONFIG_USB_STORAGE
-#define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
-#else
-#define BOOT_TARGET_DEVICES_USB(func)
-#endif
-
-#ifdef CONFIG_CMD_PXE
-#define BOOT_TARGET_DEVICES_PXE(func) func(PXE, pxe, na)
-#else
-#define BOOT_TARGET_DEVICES_PXE(func)
-#endif
-
-#ifdef CONFIG_CMD_DHCP
-#define BOOT_TARGET_DEVICES_DHCP(func) func(DHCP, dhcp, na)
-#else
-#define BOOT_TARGET_DEVICES_DHCP(func)
-#endif
-
-/* FEL boot support, auto-execute boot.scr if a script address was provided */
-#define BOOTENV_DEV_FEL(devtypeu, devtypel, instance) \
- "bootcmd_fel=" \
- "if test -n ${fel_booted} && test -n ${fel_scriptaddr}; then " \
- "echo '(FEL boot)'; " \
- "source ${fel_scriptaddr}; " \
- "fi\0"
-#define BOOTENV_DEV_NAME_FEL(devtypeu, devtypel, instance) \
- "fel "
-
-#define BOOT_TARGET_DEVICES(func) \
- func(FEL, fel, na) \
- BOOT_TARGET_DEVICES_MMC(func) \
- BOOT_TARGET_DEVICES_SCSI(func) \
- BOOT_TARGET_DEVICES_USB(func) \
- BOOT_TARGET_DEVICES_PXE(func) \
- BOOT_TARGET_DEVICES_DHCP(func)
-
#ifdef CONFIG_OLD_SUNXI_KERNEL_COMPAT
#define BOOTCMD_SUNXI_COMPAT \
"bootcmd_sunxi_compat=" \
@@ -242,8 +172,6 @@
#define BOOTCMD_SUNXI_COMPAT
#endif
-#include <config_distro_bootcmd.h>
-
#ifdef CONFIG_USB_KEYBOARD
#define CONSOLE_STDIN_SETTINGS \
"stdin=serial,usbkbd\0"
@@ -296,7 +224,6 @@
"uuid_gpt_esp=" UUID_GPT_ESP "\0" \
"uuid_gpt_system=" UUID_GPT_SYSTEM "\0" \
"partitions=" PARTS_DEFAULT "\0" \
- BOOTCMD_SUNXI_COMPAT \
- BOOTENV
+ BOOTCMD_SUNXI_COMPAT
#endif /* _SUNXI_COMMON_CONFIG_H */
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
` (5 preceding siblings ...)
2024-08-23 20:48 ` [PATCH v2 6/8] sunxi: Drop old distro boot variables Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-08-26 15:56 ` Quentin Schulz
2024-08-23 20:48 ` [PATCH v2 8/8] sunxi: Move to text environment Simon Glass
2024-10-01 11:18 ` [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
8 siblings, 1 reply; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass, Andrew Davis,
Bryan Brattlof, Caleb Connolly, Heinrich Schuchardt, Janne Grunau,
Jesse Taube, Joe Hershberger, Leon M. Busch-George, Marek Vasut,
Michal Simek, Quentin Schulz, Ramon Fried, Rasmus Villemoes,
Sumit Garg
Some boards use a CONFIG option to specify the value of this variable.
This is normally handled by efi_get_distro_fdt_name() but in the case
of sunxi this does not work, since 'soc' is sunxi, but the files are
in the allwinner directory.
Provide a work-around for this particular case.
Signed-off-by: Simon Glass <sjg@chromium.org>
---
(no changes since v1)
Makefile | 1 +
doc/usage/environment.rst | 12 ++++++++++++
2 files changed, 13 insertions(+)
diff --git a/Makefile b/Makefile
index 9a52cc8d0b4..2452a916244 100644
--- a/Makefile
+++ b/Makefile
@@ -1844,6 +1844,7 @@ quiet_cmd_gen_envp = ENVP $@
$(CPP) -P $(cpp_flags) -x assembler-with-cpp -undef \
-D__ASSEMBLY__ \
-D__UBOOT_CONFIG__ \
+ -DDEFAULT_DEVICE_TREE=$(subst ",,$(CONFIG_DEFAULT_DEVICE_TREE)) \
-I . -I include -I $(srctree)/include \
-include linux/kconfig.h -include include/config.h \
-I$(srctree)/arch/$(ARCH)/include \
diff --git a/doc/usage/environment.rst b/doc/usage/environment.rst
index cc33d3ec0f2..eaebf61742a 100644
--- a/doc/usage/environment.rst
+++ b/doc/usage/environment.rst
@@ -87,6 +87,18 @@ settings. For example::
#include <env/ti/mmc.env>
+Quotes are not supressed, for example::
+
+ fdtfile=CONFIG_DEFAULT_DEVICE_TREE.dtb
+ # produces: fdtfile="sun7i-a20-pcduino3.dtb"
+
+For this particular issue you can use DEFAULT_DEVICE_TREE instead::
+
+ fdtfile=DEFAULT_DEVICE_TREE.dtb
+ # produces: fdtfile=sun7i-a20-pcduino3.dtb
+
+There is no general way to remove quotes.
+
If CONFIG_ENV_SOURCE_FILE is empty and the default filename is not present, then
the old-style C environment is used instead. See below.
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH v2 8/8] sunxi: Move to text environment
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
` (6 preceding siblings ...)
2024-08-23 20:48 ` [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile Simon Glass
@ 2024-08-23 20:48 ` Simon Glass
2024-10-01 11:18 ` [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
8 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-08-23 20:48 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Simon Glass, Hans de Goede
Convert these boards to use a text environment.
For the boards check, the only differences are extra spaces after the
semicolons in 'dfu_alt_info_ram' and 'partitions', both of which are
permitted.
Add in the special boot command for old kernels, dropping the
unnecessary and confusing hex prefixes.
Signed-off-by: Simon Glass <sjg@chromium.org>
---
Changes in v2:
- Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
board/sunxi/sunxi.env | 152 ++++++++++++++++++++++++++++++
include/configs/sunxi-common.h | 165 ---------------------------------
2 files changed, 152 insertions(+), 165 deletions(-)
create mode 100644 board/sunxi/sunxi.env
diff --git a/board/sunxi/sunxi.env b/board/sunxi/sunxi.env
new file mode 100644
index 00000000000..6f28e720081
--- /dev/null
+++ b/board/sunxi/sunxi.env
@@ -0,0 +1,152 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Common sunxi environment
+ *
+ * Copyright 2024 Google LLC
+ * Written by Simon Glass <sjg@chromium.org>
+ /
+
+/****************************************************************************
+ * environment variables holding default load addresses *
+ ****************************************************************************/
+/*
+ * We cannot use expressions here, because expressions won't be evaluated in
+ * autoconf.mk.
+ */
+#ifdef CONFIG_ARM64
+/*
+ * Boards seem to come with at least 512MB of DRAM.
+ * The kernel should go at 512K, which is the default text offset (that will
+ * be adjusted at runtime if needed).
+ * There is no compression for arm64 kernels (yet), so leave some space
+ * for really big kernels, say 256MB for now.
+ * Scripts, PXE and DTBs should go afterwards, leaving the rest for the initrd.
+ */
+#define BOOTM_SIZE 0xa000000
+#define KERNEL_ADDR_R SDRAM_OFFSET(0080000)
+#define KERNEL_COMP_ADDR_R SDRAM_OFFSET(4000000)
+#define KERNEL_COMP_SIZE 0xb000000
+#define FDT_ADDR_R SDRAM_OFFSET(FA00000)
+#define SCRIPT_ADDR_R SDRAM_OFFSET(FC00000)
+#define PXEFILE_ADDR_R SDRAM_OFFSET(FD00000)
+#define FDTOVERLAY_ADDR_R SDRAM_OFFSET(FE00000)
+#define RAMDISK_ADDR_R SDRAM_OFFSET(FF00000)
+
+#elif (CONFIG_SUNXI_MINIMUM_DRAM_MB >= 256)
+/*
+ * 160M RAM (256M minimum minus 64MB heap + 32MB for u-boot, stack, fb, etc.
+ * 32M uncompressed kernel, 16M compressed kernel, 1M fdt,
+ * 1M script, 1M pxe, 1M dt overlay and the ramdisk at the end.
+ */
+#define BOOTM_SIZE 0xa000000
+#define KERNEL_ADDR_R SDRAM_OFFSET(2000000)
+#define FDT_ADDR_R SDRAM_OFFSET(3000000)
+#define SCRIPT_ADDR_R SDRAM_OFFSET(3100000)
+#define PXEFILE_ADDR_R SDRAM_OFFSET(3200000)
+#define FDTOVERLAY_ADDR_R SDRAM_OFFSET(3300000)
+#define RAMDISK_ADDR_R SDRAM_OFFSET(3400000)
+
+#elif (CONFIG_SUNXI_MINIMUM_DRAM_MB >= 64)
+/*
+ * 64M RAM minus 2MB heap + 16MB for u-boot, stack, fb, etc.
+ * 16M uncompressed kernel, 8M compressed kernel, 1M fdt,
+ * 1M script, 1M pxe, 1M dt overlay and the ramdisk at the end.
+ */
+#define BOOTM_SIZE 0x2e00000
+#define KERNEL_ADDR_R SDRAM_OFFSET(1000000)
+#define FDT_ADDR_R SDRAM_OFFSET(1800000)
+#define SCRIPT_ADDR_R SDRAM_OFFSET(1900000)
+#define PXEFILE_ADDR_R SDRAM_OFFSET(1A00000)
+#define FDTOVERLAY_ADDR_R SDRAM_OFFSET(1B00000)
+#define RAMDISK_ADDR_R SDRAM_OFFSET(1C00000)
+
+#elif (CONFIG_SUNXI_MINIMUM_DRAM_MB >= 32)
+/*
+ * 32M RAM minus 2.5MB for u-boot, heap, stack, etc.
+ * 16M uncompressed kernel, 7M compressed kernel, 128K fdt, 64K script,
+ * 128K DT overlay, 128K PXE and the ramdisk in the rest (max. 5MB)
+ */
+#define BOOTM_SIZE 0x1700000
+#define KERNEL_ADDR_R SDRAM_OFFSET(1000000)
+#define FDT_ADDR_R SDRAM_OFFSET(1d50000)
+#define SCRIPT_ADDR_R SDRAM_OFFSET(1d40000)
+#define PXEFILE_ADDR_R SDRAM_OFFSET(1d00000)
+#define FDTOVERLAY_ADDR_R SDRAM_OFFSET(1d20000)
+#define RAMDISK_ADDR_R SDRAM_OFFSET(1800000)
+
+#else
+#error Need at least 32MB of DRAM. Please adjust load addresses.
+#endif
+
+#define UUID_GPT_ESP ""
+
+#ifdef CONFIG_ARM64
+#define UUID_GPT_SYSTEM b921b045-1df0-41c3-af44-4c6f280d3fae
+#else
+#define UUID_GPT_SYSTEM 69dad710-2ce4-4e3c-b16c-21a1d49abed3
+#endif
+
+stdin=serial
+#ifdef CONFIG_USB_KEYBOARD
+stdin+=,usbkbd
+#endif
+
+stdout=serial
+stderr=serial
+#ifdef CONFIG_VIDEO
+stdout+=,vidconsole
+stderr+=,vidconsole
+#endif
+
+bootm_size=BOOTM_SIZE
+kernel_addr_r=KERNEL_ADDR_R
+fdt_addr_r=FDT_ADDR_R
+scriptaddr=SCRIPT_ADDR_R
+pxefile_addr_r=PXEFILE_ADDR_R
+fdtoverlay_addr_r=FDTOVERLAY_ADDR_R
+ramdisk_addr_r=RAMDISK_ADDR_R
+
+#ifdef CONFIG_ARM64
+kernel_comp_addr_r=KERNEL_COMP_ADDR_R
+kernel_comp_size=KERNEL_COMP_SIZE
+#endif
+
+dfu_alt_info_ram=
+ kernel ram KERNEL_ADDR_R 0x1000000;
+ fdt ram FDT_ADDR_R 0x100000;
+ ramdisk ram RAMDISK_ADDR_R 0x4000000
+
+#ifdef CONFIG_ARM64
+fdtfile=allwinner/DEFAULT_DEVICE_TREE.dtb
+#else
+fdtfile=DEFAULT_DEVICE_TREE.dtb
+#endif
+
+console=ttyS0,115200
+
+uuid_gpt_esp=c12a7328-f81f-11d2-ba4b-00a0c93ec93b
+#ifdef CONFIG_ARM64
+uuid_gpt_system=b921b045-1df0-41c3-af44-4c6f280d3fae
+#else
+uuid_gpt_system=69dad710-2ce4-4e3c-b16c-21a1d49abed3
+#endif
+
+partitions=
+ name=loader1,start=8k,size=32k,uuid=${uuid_gpt_loader1};
+ name=loader2,size=984k,uuid=${uuid_gpt_loader2};
+ name=esp,size=128M,bootable,uuid=${uuid_gpt_esp};
+ name=system,size=-,uuid=${uuid_gpt_system};
+
+/* support booting a very old kernel */
+#ifdef CONFIG_OLD_SUNXI_KERNEL_COMPAT
+bootcmd_sunxi_compat=
+ setenv root /dev/mmcblk0p3 rootwait;
+ if ext2load mmc 0 44000000 uEnv.txt; then
+ "echo Loaded environment from uEnv.txt;
+ "env import -t 44000000 ${filesize};
+ fi;
+ setenv bootargs console=${console} root=${root} ${extraargs};
+ ext2load mmc 0 43000000 script.bin &&
+ ext2load mmc 0 48000000 uImage &&
+ bootm 48000000
+#endif
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index 666553ccadb..ceea26494ad 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -61,169 +61,4 @@
#define PHYS_SDRAM_0 CFG_SYS_SDRAM_BASE
#define PHYS_SDRAM_0_SIZE 0x80000000 /* 2 GiB */
-/****************************************************************************
- * environment variables holding default load addresses *
- ****************************************************************************/
-/*
- * We cannot use expressions here, because expressions won't be evaluated in
- * autoconf.mk.
- */
-#ifdef CONFIG_ARM64
-/*
- * Boards seem to come with at least 512MB of DRAM.
- * The kernel should go at 512K, which is the default text offset (that will
- * be adjusted at runtime if needed).
- * There is no compression for arm64 kernels (yet), so leave some space
- * for really big kernels, say 256MB for now.
- * Scripts, PXE and DTBs should go afterwards, leaving the rest for the initrd.
- */
-#define BOOTM_SIZE __stringify(0xa000000)
-#define KERNEL_ADDR_R __stringify(SDRAM_OFFSET(0080000))
-#define KERNEL_COMP_ADDR_R __stringify(SDRAM_OFFSET(4000000))
-#define KERNEL_COMP_SIZE __stringify(0xb000000)
-#define FDT_ADDR_R __stringify(SDRAM_OFFSET(FA00000))
-#define SCRIPT_ADDR_R __stringify(SDRAM_OFFSET(FC00000))
-#define PXEFILE_ADDR_R __stringify(SDRAM_OFFSET(FD00000))
-#define FDTOVERLAY_ADDR_R __stringify(SDRAM_OFFSET(FE00000))
-#define RAMDISK_ADDR_R __stringify(SDRAM_OFFSET(FF00000))
-
-#elif (CONFIG_SUNXI_MINIMUM_DRAM_MB >= 256)
-/*
- * 160M RAM (256M minimum minus 64MB heap + 32MB for u-boot, stack, fb, etc.
- * 32M uncompressed kernel, 16M compressed kernel, 1M fdt,
- * 1M script, 1M pxe, 1M dt overlay and the ramdisk at the end.
- */
-#define BOOTM_SIZE __stringify(0xa000000)
-#define KERNEL_ADDR_R __stringify(SDRAM_OFFSET(2000000))
-#define FDT_ADDR_R __stringify(SDRAM_OFFSET(3000000))
-#define SCRIPT_ADDR_R __stringify(SDRAM_OFFSET(3100000))
-#define PXEFILE_ADDR_R __stringify(SDRAM_OFFSET(3200000))
-#define FDTOVERLAY_ADDR_R __stringify(SDRAM_OFFSET(3300000))
-#define RAMDISK_ADDR_R __stringify(SDRAM_OFFSET(3400000))
-
-#elif (CONFIG_SUNXI_MINIMUM_DRAM_MB >= 64)
-/*
- * 64M RAM minus 2MB heap + 16MB for u-boot, stack, fb, etc.
- * 16M uncompressed kernel, 8M compressed kernel, 1M fdt,
- * 1M script, 1M pxe, 1M dt overlay and the ramdisk at the end.
- */
-#define BOOTM_SIZE __stringify(0x2e00000)
-#define KERNEL_ADDR_R __stringify(SDRAM_OFFSET(1000000))
-#define FDT_ADDR_R __stringify(SDRAM_OFFSET(1800000))
-#define SCRIPT_ADDR_R __stringify(SDRAM_OFFSET(1900000))
-#define PXEFILE_ADDR_R __stringify(SDRAM_OFFSET(1A00000))
-#define FDTOVERLAY_ADDR_R __stringify(SDRAM_OFFSET(1B00000))
-#define RAMDISK_ADDR_R __stringify(SDRAM_OFFSET(1C00000))
-
-#elif (CONFIG_SUNXI_MINIMUM_DRAM_MB >= 32)
-/*
- * 32M RAM minus 2.5MB for u-boot, heap, stack, etc.
- * 16M uncompressed kernel, 7M compressed kernel, 128K fdt, 64K script,
- * 128K DT overlay, 128K PXE and the ramdisk in the rest (max. 5MB)
- */
-#define BOOTM_SIZE __stringify(0x1700000)
-#define KERNEL_ADDR_R __stringify(SDRAM_OFFSET(1000000))
-#define FDT_ADDR_R __stringify(SDRAM_OFFSET(1d50000))
-#define SCRIPT_ADDR_R __stringify(SDRAM_OFFSET(1d40000))
-#define PXEFILE_ADDR_R __stringify(SDRAM_OFFSET(1d00000))
-#define FDTOVERLAY_ADDR_R __stringify(SDRAM_OFFSET(1d20000))
-#define RAMDISK_ADDR_R __stringify(SDRAM_OFFSET(1800000))
-
-#else
-#error Need at least 32MB of DRAM. Please adjust load addresses.
-#endif
-
-#define MEM_LAYOUT_ENV_SETTINGS \
- "bootm_size=" BOOTM_SIZE "\0" \
- "kernel_addr_r=" KERNEL_ADDR_R "\0" \
- "fdt_addr_r=" FDT_ADDR_R "\0" \
- "scriptaddr=" SCRIPT_ADDR_R "\0" \
- "pxefile_addr_r=" PXEFILE_ADDR_R "\0" \
- "fdtoverlay_addr_r=" FDTOVERLAY_ADDR_R "\0" \
- "ramdisk_addr_r=" RAMDISK_ADDR_R "\0"
-
-#ifdef CONFIG_ARM64
-#define MEM_LAYOUT_ENV_EXTRA_SETTINGS \
- "kernel_comp_addr_r=" KERNEL_COMP_ADDR_R "\0" \
- "kernel_comp_size=" KERNEL_COMP_SIZE "\0"
-#else
-#define MEM_LAYOUT_ENV_EXTRA_SETTINGS ""
-#endif
-
-#define DFU_ALT_INFO_RAM \
- "dfu_alt_info_ram=" \
- "kernel ram " KERNEL_ADDR_R " 0x1000000;" \
- "fdt ram " FDT_ADDR_R " 0x100000;" \
- "ramdisk ram " RAMDISK_ADDR_R " 0x4000000\0"
-
-#ifdef CONFIG_OLD_SUNXI_KERNEL_COMPAT
-#define BOOTCMD_SUNXI_COMPAT \
- "bootcmd_sunxi_compat=" \
- "setenv root /dev/mmcblk0p3 rootwait; " \
- "if ext2load mmc 0 0x44000000 uEnv.txt; then " \
- "echo Loaded environment from uEnv.txt; " \
- "env import -t 0x44000000 ${filesize}; " \
- "fi; " \
- "setenv bootargs console=${console} root=${root} ${extraargs}; " \
- "ext2load mmc 0 0x43000000 script.bin && " \
- "ext2load mmc 0 0x48000000 uImage && " \
- "bootm 0x48000000\0"
-#else
-#define BOOTCMD_SUNXI_COMPAT
-#endif
-
-#ifdef CONFIG_USB_KEYBOARD
-#define CONSOLE_STDIN_SETTINGS \
- "stdin=serial,usbkbd\0"
-#else
-#define CONSOLE_STDIN_SETTINGS \
- "stdin=serial\0"
-#endif
-
-#ifdef CONFIG_VIDEO
-#define CONSOLE_STDOUT_SETTINGS \
- "stdout=serial,vidconsole\0" \
- "stderr=serial,vidconsole\0"
-#else
-#define CONSOLE_STDOUT_SETTINGS \
- "stdout=serial\0" \
- "stderr=serial\0"
-#endif
-
-#define PARTS_DEFAULT \
- "name=loader1,start=8k,size=32k,uuid=${uuid_gpt_loader1};" \
- "name=loader2,size=984k,uuid=${uuid_gpt_loader2};" \
- "name=esp,size=128M,bootable,uuid=${uuid_gpt_esp};" \
- "name=system,size=-,uuid=${uuid_gpt_system};"
-
-#define UUID_GPT_ESP "c12a7328-f81f-11d2-ba4b-00a0c93ec93b"
-
-#ifdef CONFIG_ARM64
-#define UUID_GPT_SYSTEM "b921b045-1df0-41c3-af44-4c6f280d3fae"
-#else
-#define UUID_GPT_SYSTEM "69dad710-2ce4-4e3c-b16c-21a1d49abed3"
-#endif
-
-#define CONSOLE_ENV_SETTINGS \
- CONSOLE_STDIN_SETTINGS \
- CONSOLE_STDOUT_SETTINGS
-
-#ifdef CONFIG_ARM64
-#define FDTFILE "allwinner/" CONFIG_DEFAULT_DEVICE_TREE ".dtb"
-#else
-#define FDTFILE CONFIG_DEFAULT_DEVICE_TREE ".dtb"
-#endif
-
-#define CFG_EXTRA_ENV_SETTINGS \
- CONSOLE_ENV_SETTINGS \
- MEM_LAYOUT_ENV_SETTINGS \
- MEM_LAYOUT_ENV_EXTRA_SETTINGS \
- DFU_ALT_INFO_RAM \
- "fdtfile=" FDTFILE "\0" \
- "console=ttyS0,115200\0" \
- "uuid_gpt_esp=" UUID_GPT_ESP "\0" \
- "uuid_gpt_system=" UUID_GPT_SYSTEM "\0" \
- "partitions=" PARTS_DEFAULT "\0" \
- BOOTCMD_SUNXI_COMPAT
-
#endif /* _SUNXI_COMMON_CONFIG_H */
--
2.34.1
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile
2024-08-23 20:48 ` [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile Simon Glass
@ 2024-08-26 15:56 ` Quentin Schulz
2024-09-01 20:09 ` Simon Glass
0 siblings, 1 reply; 19+ messages in thread
From: Quentin Schulz @ 2024-08-26 15:56 UTC (permalink / raw)
To: Simon Glass, U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Andrew Davis,
Bryan Brattlof, Caleb Connolly, Heinrich Schuchardt, Janne Grunau,
Jesse Taube, Joe Hershberger, Leon M. Busch-George, Marek Vasut,
Michal Simek, Ramon Fried, Rasmus Villemoes, Sumit Garg
Hi Simon,
On 8/23/24 10:48 PM, Simon Glass wrote:
> Some boards use a CONFIG option to specify the value of this variable.
> This is normally handled by efi_get_distro_fdt_name() but in the case
> of sunxi this does not work, since 'soc' is sunxi, but the files are
> in the allwinner directory.
>
> Provide a work-around for this particular case.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
> (no changes since v1)
>
> Makefile | 1 +
> doc/usage/environment.rst | 12 ++++++++++++
> 2 files changed, 13 insertions(+)
>
> diff --git a/Makefile b/Makefile
> index 9a52cc8d0b4..2452a916244 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1844,6 +1844,7 @@ quiet_cmd_gen_envp = ENVP $@
> $(CPP) -P $(cpp_flags) -x assembler-with-cpp -undef \
> -D__ASSEMBLY__ \
> -D__UBOOT_CONFIG__ \
> + -DDEFAULT_DEVICE_TREE=$(subst ",,$(CONFIG_DEFAULT_DEVICE_TREE)) \
> -I . -I include -I $(srctree)/include \
> -include linux/kconfig.h -include include/config.h \
> -I$(srctree)/arch/$(ARCH)/include \
> diff --git a/doc/usage/environment.rst b/doc/usage/environment.rst
> index cc33d3ec0f2..eaebf61742a 100644
> --- a/doc/usage/environment.rst
> +++ b/doc/usage/environment.rst
> @@ -87,6 +87,18 @@ settings. For example::
>
> #include <env/ti/mmc.env>
>
> +Quotes are not supressed, for example::
s/supressed/suppressed/
> +
> + fdtfile=CONFIG_DEFAULT_DEVICE_TREE.dtb
> + # produces: fdtfile="sun7i-a20-pcduino3.dtb"
> +
Is this not rather
fdtfile="sun7i-a20-pcduino3".dtb
? (i have no clue but I've this gut feeling this doesn't match what the
subst command does above and why the .dtb extension would be inside the
quotes)
> +For this particular issue you can use DEFAULT_DEVICE_TREE instead::
Maybe use double tickquotes to highlight this is a variable? i.e.
``DEFAULT_DEVICE_TREE``
?
Cheers,
Quentin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 3/8] bootstd: Avoid depending on BLK
2024-08-23 20:48 ` [PATCH v2 3/8] bootstd: Avoid depending on BLK Simon Glass
@ 2024-08-26 15:58 ` Quentin Schulz
0 siblings, 0 replies; 19+ messages in thread
From: Quentin Schulz @ 2024-08-26 15:58 UTC (permalink / raw)
To: Simon Glass, U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, Eddie James,
Heinrich Schuchardt, Ilias Apalodimas, Mattijs Korpershoek,
Stefan Roese
Hi Simon,
On 8/23/24 10:48 PM, Simon Glass wrote:
> In principle bootstd can work without block devices, even if it does
> require driver model to be enabled in that case.
>
> The use of a 'depends on BLK' for BOOTSTD conflicts with the way 'BLK'
> is now defined, producing recursive errors through multiple different
> paths, one of which is this (with Linksprite_pcDuino3 and
> BOOTSTD_DEFAULTS enabled):
>
> arch/arm/Kconfig:7:error: recursive dependency detected!
> arch/arm/Kconfig:7: symbol ARM64 is selected by ARCH_UNIPHIER_V8_MULTI
> arch/arm/mach-uniphier/Kconfig:17: symbol ARCH_UNIPHIER_V8_MULTI is
> part of choice <choice>
> arch/arm/mach-uniphier/Kconfig:6: choice <choice> contains symbol
> ARCH_UNIPHIER_V8_MULTI
> arch/arm/mach-uniphier/Kconfig:17: symbol ARCH_UNIPHIER_V8_MULTI is
> part of choice SPL
> arch/arm/mach-stm32mp/Kconfig:3: symbol SPL depends on SUPPORT_SPL
> common/spl/Kconfig:1: symbol SUPPORT_SPL is selected by ASPEED_AST2600
> arch/arm/mach-aspeed/Kconfig:26: symbol ASPEED_AST2600 is part of
> choice <choice>
> arch/arm/mach-aspeed/Kconfig:12: choice <choice> contains symbol
> ASPEED_AST2500
> arch/arm/mach-aspeed/Kconfig:17: symbol ASPEED_AST2500 is part of
> choice DM_RESET
> arch/arm/mach-renesas/Kconfig.rcar3:197: symbol DM_RESET is selected
> by CLK_RCAR_GEN3
> drivers/clk/renesas/Kconfig:53: symbol CLK_RCAR_GEN3 depends on
> CLK_RENESAS
> drivers/clk/renesas/Kconfig:1: symbol CLK_RENESAS depends on CLK
> drivers/clk/Kconfig:3: symbol CLK is selected by IMX8M_POWER_DOMAIN
> drivers/power/domain/Kconfig:35: symbol IMX8M_POWER_DOMAIN depends on
> POWER_DOMAIN
> drivers/power/domain/Kconfig:3: symbol POWER_DOMAIN is selected by
> BCM6318_USBH_PHY
> drivers/phy/Kconfig:83: symbol BCM6318_USBH_PHY depends on PHY
> drivers/phy/Kconfig:4: symbol PHY is selected by USB_EHCI_MX7
> drivers/usb/host/Kconfig:211: symbol USB_EHCI_MX7 depends on USB
> drivers/usb/Kconfig:1: symbol USB is selected by BOOTSTD_DEFAULTS
> boot/Kconfig:455: symbol BOOTSTD_DEFAULTS depends on BOOTSTD
> boot/Kconfig:398: symbol BOOTSTD depends on BLK
> drivers/block/Kconfig:1: symbol BLK is selected by PVBLOCK
> drivers/xen/Kconfig:1: symbol PVBLOCK depends on XEN
> Kconfig:176: symbol XEN depends on ARM64
>
> We don't want to revert the change to BLK, which has been in place for
> a year now. We don't want to select BLK in BOOTSTD since it should
> support booting without block devices. The only realistic option is to
> remove BOOTSTD's dependency on BLK.
>
> Disable standard boot on the one board which fails.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
>
> wip
>
wip?
:)
Cheers,
Quentin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile
2024-08-26 15:56 ` Quentin Schulz
@ 2024-09-01 20:09 ` Simon Glass
0 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-09-01 20:09 UTC (permalink / raw)
To: Quentin Schulz
Cc: U-Boot Mailing List, Tom Rini, Jagan Teki, Andre Przywara,
Andrew Davis, Bryan Brattlof, Caleb Connolly, Heinrich Schuchardt,
Janne Grunau, Jesse Taube, Joe Hershberger, Leon M. Busch-George,
Marek Vasut, Michal Simek, Ramon Fried, Rasmus Villemoes,
Sumit Garg
Hi Quentin,
On Mon, 26 Aug 2024 at 09:56, Quentin Schulz <quentin.schulz@cherry.de> wrote:
>
> Hi Simon,
>
> On 8/23/24 10:48 PM, Simon Glass wrote:
> > Some boards use a CONFIG option to specify the value of this variable.
> > This is normally handled by efi_get_distro_fdt_name() but in the case
> > of sunxi this does not work, since 'soc' is sunxi, but the files are
> > in the allwinner directory.
> >
> > Provide a work-around for this particular case.
> >
> > Signed-off-by: Simon Glass <sjg@chromium.org>
> > ---
> >
> > (no changes since v1)
> >
> > Makefile | 1 +
> > doc/usage/environment.rst | 12 ++++++++++++
> > 2 files changed, 13 insertions(+)
> >
> > diff --git a/Makefile b/Makefile
> > index 9a52cc8d0b4..2452a916244 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -1844,6 +1844,7 @@ quiet_cmd_gen_envp = ENVP $@
> > $(CPP) -P $(cpp_flags) -x assembler-with-cpp -undef \
> > -D__ASSEMBLY__ \
> > -D__UBOOT_CONFIG__ \
> > + -DDEFAULT_DEVICE_TREE=$(subst ",,$(CONFIG_DEFAULT_DEVICE_TREE)) \
> > -I . -I include -I $(srctree)/include \
> > -include linux/kconfig.h -include include/config.h \
> > -I$(srctree)/arch/$(ARCH)/include \
> > diff --git a/doc/usage/environment.rst b/doc/usage/environment.rst
> > index cc33d3ec0f2..eaebf61742a 100644
> > --- a/doc/usage/environment.rst
> > +++ b/doc/usage/environment.rst
> > @@ -87,6 +87,18 @@ settings. For example::
> >
> > #include <env/ti/mmc.env>
> >
> > +Quotes are not supressed, for example::
>
> s/supressed/suppressed/
>
> > +
> > + fdtfile=CONFIG_DEFAULT_DEVICE_TREE.dtb
> > + # produces: fdtfile="sun7i-a20-pcduino3.dtb"
> > +
>
> Is this not rather
> fdtfile="sun7i-a20-pcduino3".dtb
> ? (i have no clue but I've this gut feeling this doesn't match what the
> subst command does above and why the .dtb extension would be inside the
> quotes)
No, I promise! The quote get removed by the Makefile rule so the -D
compiler option uses an unquoted string
>
> > +For this particular issue you can use DEFAULT_DEVICE_TREE instead::
>
> Maybe use double tickquotes to highlight this is a variable? i.e.
>
> ``DEFAULT_DEVICE_TREE``
>
> ?
Will do.
Regards,
Simon
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
` (7 preceding siblings ...)
2024-08-23 20:48 ` [PATCH v2 8/8] sunxi: Move to text environment Simon Glass
@ 2024-10-01 11:18 ` Simon Glass
2024-10-01 12:07 ` Mattijs Korpershoek
` (2 more replies)
8 siblings, 3 replies; 19+ messages in thread
From: Simon Glass @ 2024-10-01 11:18 UTC (permalink / raw)
To: U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, AKASHI Takahiro,
Alper Nebi Yasak, Andrew Davis, Bin Meng, Bryan Brattlof,
Caleb Connolly, Csókás Bence, Dragan Simic, Eddie James,
Hans de Goede, Heinrich Schuchardt, Ilias Apalodimas,
Janne Grunau, Jesse Taube, Joe Hershberger, Johan Jonker,
Julien Masson, Kever Yang, Leon M. Busch-George, Marek Vasut,
Marek Vasut, Mattijs Korpershoek, Michal Simek, Nam Cao,
Peter Robinson, Quentin Schulz, Ramon Fried, Rasmus Villemoes,
Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu
Hi,
On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
>
> This series attempts to migrate all sunxi boards to use standard boot,
> along with a text environment.
>
> Changes in v2:
> - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
> - Put the FEL bootmeth before all other global bootmeths
> - Convert the other DISTRO_DEFAULTS in the Kconfig too
> - Keep BOOTCMD_SUNXI_COMPAT
> - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
>
> Simon Glass (8):
> blk: Make functions available unconditionally
> bootstd: Avoid calling unavailable block functions
> bootstd: Avoid depending on BLK
> sunxi: Add a bootmeth for FEL
> sunxi: Move to bootstd
> sunxi: Drop old distro boot variables
> env: Provide a work-around for unquoting fdtfile
> sunxi: Move to text environment
>
> Makefile | 1 +
> arch/arm/Kconfig | 10 +-
> board/sunxi/sunxi.env | 152 +++++++++++
> boot/Kconfig | 16 +-
> boot/Makefile | 1 +
> boot/bootdev-uclass.c | 3 +
> boot/bootmeth_fel.c | 81 ++++++
> .../gardena-smart-gateway-mt7688_defconfig | 1 +
> doc/usage/environment.rst | 12 +
> include/blk.h | 9 +-
> include/configs/sunxi-common.h | 238 ------------------
> 11 files changed, 278 insertions(+), 246 deletions(-)
> create mode 100644 board/sunxi/sunxi.env
> create mode 100644 boot/bootmeth_fel.c
>
> --
> 2.34.1
>
I'm just checking on this series. Are there any comments, or can it be applied?
Regards,
Simon
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-10-01 11:18 ` [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
@ 2024-10-01 12:07 ` Mattijs Korpershoek
2024-10-01 12:23 ` Quentin Schulz
2024-10-01 12:10 ` Andre Przywara
2024-10-01 17:15 ` Heinrich Schuchardt
2 siblings, 1 reply; 19+ messages in thread
From: Mattijs Korpershoek @ 2024-10-01 12:07 UTC (permalink / raw)
To: Simon Glass, U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, AKASHI Takahiro,
Alper Nebi Yasak, Andrew Davis, Bin Meng, Bryan Brattlof,
Caleb Connolly, Csókás Bence, Dragan Simic, Eddie James,
Hans de Goede, Heinrich Schuchardt, Ilias Apalodimas,
Janne Grunau, Jesse Taube, Joe Hershberger, Johan Jonker,
Julien Masson, Kever Yang, Leon M. Busch-George, Marek Vasut,
Marek Vasut, Michal Simek, Nam Cao, Peter Robinson,
Quentin Schulz, Ramon Fried, Rasmus Villemoes,
Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu
Hi Simon,
On mar., oct. 01, 2024 at 05:18, Simon Glass <sjg@chromium.org> wrote:
> Hi,
>
> On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
>>
>> This series attempts to migrate all sunxi boards to use standard boot,
>> along with a text environment.
>>
>> Changes in v2:
>> - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
>> - Put the FEL bootmeth before all other global bootmeths
>> - Convert the other DISTRO_DEFAULTS in the Kconfig too
>> - Keep BOOTCMD_SUNXI_COMPAT
>> - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
>>
>> Simon Glass (8):
>> blk: Make functions available unconditionally
>> bootstd: Avoid calling unavailable block functions
>> bootstd: Avoid depending on BLK
>> sunxi: Add a bootmeth for FEL
>> sunxi: Move to bootstd
>> sunxi: Drop old distro boot variables
>> env: Provide a work-around for unquoting fdtfile
>> sunxi: Move to text environment
>>
>> Makefile | 1 +
>> arch/arm/Kconfig | 10 +-
>> board/sunxi/sunxi.env | 152 +++++++++++
>> boot/Kconfig | 16 +-
>> boot/Makefile | 1 +
>> boot/bootdev-uclass.c | 3 +
>> boot/bootmeth_fel.c | 81 ++++++
>> .../gardena-smart-gateway-mt7688_defconfig | 1 +
>> doc/usage/environment.rst | 12 +
>> include/blk.h | 9 +-
>> include/configs/sunxi-common.h | 238 ------------------
>> 11 files changed, 278 insertions(+), 246 deletions(-)
>> create mode 100644 board/sunxi/sunxi.env
>> create mode 100644 boot/bootmeth_fel.c
>>
>> --
>> 2.34.1
>>
>
> I'm just checking on this series. Are there any comments, or can it be applied?
Quentin mentioned a typo in patch 3/8, see:
https://lore.kernel.org/all/1f963aa8-948a-4657-9f1b-a3bc38df4714@cherry.de/
Can you make sure it gets removed when being applied ?
>
> Regards,
> Simon
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-10-01 11:18 ` [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
2024-10-01 12:07 ` Mattijs Korpershoek
@ 2024-10-01 12:10 ` Andre Przywara
2024-10-01 17:15 ` Heinrich Schuchardt
2 siblings, 0 replies; 19+ messages in thread
From: Andre Przywara @ 2024-10-01 12:10 UTC (permalink / raw)
To: Simon Glass
Cc: U-Boot Mailing List, Tom Rini, Jagan Teki, AKASHI Takahiro,
Alper Nebi Yasak, Andrew Davis, Bin Meng, Bryan Brattlof,
Caleb Connolly, Csókás Bence, Dragan Simic, Eddie James,
Hans de Goede, Heinrich Schuchardt, Ilias Apalodimas,
Janne Grunau, Jesse Taube, Joe Hershberger, Johan Jonker,
Julien Masson, Kever Yang, Leon M. Busch-George, Marek Vasut,
Marek Vasut, Mattijs Korpershoek, Michal Simek, Nam Cao,
Peter Robinson, Quentin Schulz, Ramon Fried, Rasmus Villemoes,
Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu
On Tue, 1 Oct 2024 05:18:44 -0600
Simon Glass <sjg@chromium.org> wrote:
Hi,
> On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
> >
> > This series attempts to migrate all sunxi boards to use standard boot,
> > along with a text environment.
> >
> > Changes in v2:
> > - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
> > - Put the FEL bootmeth before all other global bootmeths
> > - Convert the other DISTRO_DEFAULTS in the Kconfig too
> > - Keep BOOTCMD_SUNXI_COMPAT
> > - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
> >
> > Simon Glass (8):
> > blk: Make functions available unconditionally
> > bootstd: Avoid calling unavailable block functions
> > bootstd: Avoid depending on BLK
> > sunxi: Add a bootmeth for FEL
> > sunxi: Move to bootstd
> > sunxi: Drop old distro boot variables
> > env: Provide a work-around for unquoting fdtfile
> > sunxi: Move to text environment
> >
> > Makefile | 1 +
> > arch/arm/Kconfig | 10 +-
> > board/sunxi/sunxi.env | 152 +++++++++++
> > boot/Kconfig | 16 +-
> > boot/Makefile | 1 +
> > boot/bootdev-uclass.c | 3 +
> > boot/bootmeth_fel.c | 81 ++++++
> > .../gardena-smart-gateway-mt7688_defconfig | 1 +
> > doc/usage/environment.rst | 12 +
> > include/blk.h | 9 +-
> > include/configs/sunxi-common.h | 238 ------------------
> > 11 files changed, 278 insertions(+), 246 deletions(-)
> > create mode 100644 board/sunxi/sunxi.env
> > create mode 100644 boot/bootmeth_fel.c
> >
> > --
> > 2.34.1
> >
>
> I'm just checking on this series. Are there any comments, or can it be applied?
I gave it a rough look, and it seems like my gripes have been addressed
(many thanks for that!) Could you give me one more day for some testing on
actual boards, to see if everything still works?
Cheers,
Andre
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-10-01 12:07 ` Mattijs Korpershoek
@ 2024-10-01 12:23 ` Quentin Schulz
2024-10-01 13:06 ` Simon Glass
0 siblings, 1 reply; 19+ messages in thread
From: Quentin Schulz @ 2024-10-01 12:23 UTC (permalink / raw)
To: Mattijs Korpershoek, Simon Glass, U-Boot Mailing List
Cc: Tom Rini, Jagan Teki, Andre Przywara, AKASHI Takahiro,
Alper Nebi Yasak, Andrew Davis, Bin Meng, Bryan Brattlof,
Caleb Connolly, Csókás Bence, Dragan Simic, Eddie James,
Hans de Goede, Heinrich Schuchardt, Ilias Apalodimas,
Janne Grunau, Jesse Taube, Joe Hershberger, Johan Jonker,
Julien Masson, Kever Yang, Leon M. Busch-George, Marek Vasut,
Marek Vasut, Michal Simek, Nam Cao, Peter Robinson, Ramon Fried,
Rasmus Villemoes, Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu
Hi Mattijs, Simon,
On 10/1/24 2:07 PM, Mattijs Korpershoek wrote:
> Hi Simon,
>
> On mar., oct. 01, 2024 at 05:18, Simon Glass <sjg@chromium.org> wrote:
>
>> Hi,
>>
>> On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
>>>
>>> This series attempts to migrate all sunxi boards to use standard boot,
>>> along with a text environment.
>>>
>>> Changes in v2:
>>> - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
>>> - Put the FEL bootmeth before all other global bootmeths
>>> - Convert the other DISTRO_DEFAULTS in the Kconfig too
>>> - Keep BOOTCMD_SUNXI_COMPAT
>>> - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
>>>
>>> Simon Glass (8):
>>> blk: Make functions available unconditionally
>>> bootstd: Avoid calling unavailable block functions
>>> bootstd: Avoid depending on BLK
>>> sunxi: Add a bootmeth for FEL
>>> sunxi: Move to bootstd
>>> sunxi: Drop old distro boot variables
>>> env: Provide a work-around for unquoting fdtfile
>>> sunxi: Move to text environment
>>>
>>> Makefile | 1 +
>>> arch/arm/Kconfig | 10 +-
>>> board/sunxi/sunxi.env | 152 +++++++++++
>>> boot/Kconfig | 16 +-
>>> boot/Makefile | 1 +
>>> boot/bootdev-uclass.c | 3 +
>>> boot/bootmeth_fel.c | 81 ++++++
>>> .../gardena-smart-gateway-mt7688_defconfig | 1 +
>>> doc/usage/environment.rst | 12 +
>>> include/blk.h | 9 +-
>>> include/configs/sunxi-common.h | 238 ------------------
>>> 11 files changed, 278 insertions(+), 246 deletions(-)
>>> create mode 100644 board/sunxi/sunxi.env
>>> create mode 100644 boot/bootmeth_fel.c
>>>
>>> --
>>> 2.34.1
>>>
>>
>> I'm just checking on this series. Are there any comments, or can it be applied?
>
> Quentin mentioned a typo in patch 3/8, see:
> https://lore.kernel.org/all/1f963aa8-948a-4657-9f1b-a3bc38df4714@cherry.de/
>
Well, is it really a typo or was this still a WIP patch that made it to
the ML somehow? That was basically the "question" or concern about "wip"
appearing in the commit log :)
Cheers,
Quentin
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-10-01 12:23 ` Quentin Schulz
@ 2024-10-01 13:06 ` Simon Glass
0 siblings, 0 replies; 19+ messages in thread
From: Simon Glass @ 2024-10-01 13:06 UTC (permalink / raw)
To: Quentin Schulz
Cc: Mattijs Korpershoek, U-Boot Mailing List, Tom Rini, Jagan Teki,
Andre Przywara, AKASHI Takahiro, Alper Nebi Yasak, Andrew Davis,
Bin Meng, Bryan Brattlof, Caleb Connolly, Csókás Bence,
Dragan Simic, Eddie James, Hans de Goede, Heinrich Schuchardt,
Ilias Apalodimas, Janne Grunau, Jesse Taube, Joe Hershberger,
Johan Jonker, Julien Masson, Kever Yang, Leon M. Busch-George,
Marek Vasut, Marek Vasut, Michal Simek, Nam Cao, Peter Robinson,
Ramon Fried, Rasmus Villemoes, Rayagonda Kokatanur, Stefan Roese,
Sumit Garg, Thomas Weißschuh, Tony Dinh,
Venkatesh Yadav Abbarapu
Hi,
On Tue, 1 Oct 2024 at 06:23, Quentin Schulz <quentin.schulz@cherry.de> wrote:
>
> Hi Mattijs, Simon,
>
> On 10/1/24 2:07 PM, Mattijs Korpershoek wrote:
> > Hi Simon,
> >
> > On mar., oct. 01, 2024 at 05:18, Simon Glass <sjg@chromium.org> wrote:
> >
> >> Hi,
> >>
> >> On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
> >>>
> >>> This series attempts to migrate all sunxi boards to use standard boot,
> >>> along with a text environment.
> >>>
> >>> Changes in v2:
> >>> - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
> >>> - Put the FEL bootmeth before all other global bootmeths
> >>> - Convert the other DISTRO_DEFAULTS in the Kconfig too
> >>> - Keep BOOTCMD_SUNXI_COMPAT
> >>> - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
> >>>
> >>> Simon Glass (8):
> >>> blk: Make functions available unconditionally
> >>> bootstd: Avoid calling unavailable block functions
> >>> bootstd: Avoid depending on BLK
> >>> sunxi: Add a bootmeth for FEL
> >>> sunxi: Move to bootstd
> >>> sunxi: Drop old distro boot variables
> >>> env: Provide a work-around for unquoting fdtfile
> >>> sunxi: Move to text environment
> >>>
> >>> Makefile | 1 +
> >>> arch/arm/Kconfig | 10 +-
> >>> board/sunxi/sunxi.env | 152 +++++++++++
> >>> boot/Kconfig | 16 +-
> >>> boot/Makefile | 1 +
> >>> boot/bootdev-uclass.c | 3 +
> >>> boot/bootmeth_fel.c | 81 ++++++
> >>> .../gardena-smart-gateway-mt7688_defconfig | 1 +
> >>> doc/usage/environment.rst | 12 +
> >>> include/blk.h | 9 +-
> >>> include/configs/sunxi-common.h | 238 ------------------
> >>> 11 files changed, 278 insertions(+), 246 deletions(-)
> >>> create mode 100644 board/sunxi/sunxi.env
> >>> create mode 100644 boot/bootmeth_fel.c
> >>>
> >>> --
> >>> 2.34.1
> >>>
> >>
> >> I'm just checking on this series. Are there any comments, or can it be applied?
> >
> > Quentin mentioned a typo in patch 3/8, see:
> > https://lore.kernel.org/all/1f963aa8-948a-4657-9f1b-a3bc38df4714@cherry.de/
> >
>
> Well, is it really a typo or was this still a WIP patch that made it to
> the ML somehow? That was basically the "question" or concern about "wip"
> appearing in the commit log :)
It was an ex-wip patch which I modified and failed to remove the
'wip'. It was fixed in v3[1] (which I now see that I should have
replied to here)
Regards,
SImon
[1] https://patchwork.ozlabs.org/project/uboot/patch/20240901222734.462334-4-sjg@chromium.org/
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-10-01 11:18 ` [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
2024-10-01 12:07 ` Mattijs Korpershoek
2024-10-01 12:10 ` Andre Przywara
@ 2024-10-01 17:15 ` Heinrich Schuchardt
2024-10-01 17:29 ` Heinrich Schuchardt
2 siblings, 1 reply; 19+ messages in thread
From: Heinrich Schuchardt @ 2024-10-01 17:15 UTC (permalink / raw)
To: Simon Glass
Cc: Tom Rini, Jagan Teki, Andre Przywara, AKASHI Takahiro,
Alper Nebi Yasak, Andrew Davis, Bin Meng, Bryan Brattlof,
Caleb Connolly, Csókás Bence, Dragan Simic, Eddie James,
Hans de Goede, Ilias Apalodimas, Janne Grunau, Jesse Taube,
Joe Hershberger, Johan Jonker, Julien Masson, Kever Yang,
Leon M. Busch-George, Marek Vasut, Marek Vasut,
Mattijs Korpershoek, Michal Simek, Nam Cao, Peter Robinson,
Quentin Schulz, Ramon Fried, Rasmus Villemoes,
Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu,
U-Boot Mailing List
On 01.10.24 13:18, Simon Glass wrote:
> Hi,
>
> On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
>>
>> This series attempts to migrate all sunxi boards to use standard boot,
>> along with a text environment.
>>
>> Changes in v2:
>> - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
>> - Put the FEL bootmeth before all other global bootmeths
>> - Convert the other DISTRO_DEFAULTS in the Kconfig too
>> - Keep BOOTCMD_SUNXI_COMPAT
>> - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
>>
>> Simon Glass (8):
>> blk: Make functions available unconditionally
>> bootstd: Avoid calling unavailable block functions
>> bootstd: Avoid depending on BLK
>> sunxi: Add a bootmeth for FEL
>> sunxi: Move to bootstd
>> sunxi: Drop old distro boot variables
>> env: Provide a work-around for unquoting fdtfile
>> sunxi: Move to text environment
>>
>> Makefile | 1 +
>> arch/arm/Kconfig | 10 +-
>> board/sunxi/sunxi.env | 152 +++++++++++
>> boot/Kconfig | 16 +-
>> boot/Makefile | 1 +
>> boot/bootdev-uclass.c | 3 +
>> boot/bootmeth_fel.c | 81 ++++++
>> .../gardena-smart-gateway-mt7688_defconfig | 1 +
>> doc/usage/environment.rst | 12 +
>> include/blk.h | 9 +-
>> include/configs/sunxi-common.h | 238 ------------------
>> 11 files changed, 278 insertions(+), 246 deletions(-)
>> create mode 100644 board/sunxi/sunxi.env
>> create mode 100644 boot/bootmeth_fel.c
>>
>> --
>> 2.34.1
>>
>
> I'm just checking on this series. Are there any comments, or can it be applied?
>
> Regards,
> Simon
Hello Simon,
My OrangePi PC still shows bootcmd='run distro_bootcmd'. This does not
look like standard boot.
My Pine64-LTS boots fine with this series applied on top of origin/next.
bootcmd='bootflow scan'. The EFI boot manager method is called
successfully to start Ubuntu.
Best regards
Heinrich
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot
2024-10-01 17:15 ` Heinrich Schuchardt
@ 2024-10-01 17:29 ` Heinrich Schuchardt
0 siblings, 0 replies; 19+ messages in thread
From: Heinrich Schuchardt @ 2024-10-01 17:29 UTC (permalink / raw)
To: Simon Glass
Cc: Tom Rini, Jagan Teki, Andre Przywara, AKASHI Takahiro,
Alper Nebi Yasak, Andrew Davis, Bin Meng, Bryan Brattlof,
Caleb Connolly, Csókás Bence, Dragan Simic, Eddie James,
Hans de Goede, Ilias Apalodimas, Janne Grunau, Jesse Taube,
Joe Hershberger, Johan Jonker, Julien Masson, Kever Yang,
Leon M. Busch-George, Marek Vasut, Marek Vasut,
Mattijs Korpershoek, Michal Simek, Nam Cao, Peter Robinson,
Quentin Schulz, Ramon Fried, Rasmus Villemoes,
Rayagonda Kokatanur, Stefan Roese, Sumit Garg,
Thomas Weißschuh, Tony Dinh, Venkatesh Yadav Abbarapu,
U-Boot Mailing List
On 01.10.24 19:15, Heinrich Schuchardt wrote:
> On 01.10.24 13:18, Simon Glass wrote:
>> Hi,
>>
>> On Fri, 23 Aug 2024 at 14:48, Simon Glass <sjg@chromium.org> wrote:
>>>
>>> This series attempts to migrate all sunxi boards to use standard boot,
>>> along with a text environment.
>>>
>>> Changes in v2:
>>> - Add new patch to resolve BOOTSTD->BLK recursion with Kconfig
>>> - Put the FEL bootmeth before all other global bootmeths
>>> - Convert the other DISTRO_DEFAULTS in the Kconfig too
>>> - Keep BOOTCMD_SUNXI_COMPAT
>>> - Keep bootcmd_sunxi_compat if OLD_SUNXI_KERNEL_COMPAT is enabled
>>>
>>> Simon Glass (8):
>>> blk: Make functions available unconditionally
>>> bootstd: Avoid calling unavailable block functions
>>> bootstd: Avoid depending on BLK
>>> sunxi: Add a bootmeth for FEL
>>> sunxi: Move to bootstd
>>> sunxi: Drop old distro boot variables
>>> env: Provide a work-around for unquoting fdtfile
>>> sunxi: Move to text environment
>>>
>>> Makefile | 1 +
>>> arch/arm/Kconfig | 10 +-
>>> board/sunxi/sunxi.env | 152 +++++++++++
>>> boot/Kconfig | 16 +-
>>> boot/Makefile | 1 +
>>> boot/bootdev-uclass.c | 3 +
>>> boot/bootmeth_fel.c | 81 ++++++
>>> .../gardena-smart-gateway-mt7688_defconfig | 1 +
>>> doc/usage/environment.rst | 12 +
>>> include/blk.h | 9 +-
>>> include/configs/sunxi-common.h | 238 ------------------
>>> 11 files changed, 278 insertions(+), 246 deletions(-)
>>> create mode 100644 board/sunxi/sunxi.env
>>> create mode 100644 boot/bootmeth_fel.c
>>>
>>> --
>>> 2.34.1
>>>
>>
>> I'm just checking on this series. Are there any comments, or can it be
>> applied?
>>
>> Regards,
>> Simon
>
> Hello Simon,
>
> My OrangePi PC still shows bootcmd='run distro_bootcmd'. This does not
> look like standard boot.
My fault. Something went wrong in flashing the SD-card.
Tested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
>
> My Pine64-LTS boots fine with this series applied on top of origin/next.
> bootcmd='bootflow scan'. The EFI boot manager method is called
> successfully to start Ubuntu.
>
> Best regards
>
> Heinrich
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2024-10-01 17:30 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-23 20:48 [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
2024-08-23 20:48 ` [PATCH v2 1/8] blk: Make functions available unconditionally Simon Glass
2024-08-23 20:48 ` [PATCH v2 2/8] bootstd: Avoid calling unavailable block functions Simon Glass
2024-08-23 20:48 ` [PATCH v2 3/8] bootstd: Avoid depending on BLK Simon Glass
2024-08-26 15:58 ` Quentin Schulz
2024-08-23 20:48 ` [PATCH v2 4/8] sunxi: Add a bootmeth for FEL Simon Glass
2024-08-23 20:48 ` [PATCH v2 5/8] sunxi: Move to bootstd Simon Glass
2024-08-23 20:48 ` [PATCH v2 6/8] sunxi: Drop old distro boot variables Simon Glass
2024-08-23 20:48 ` [PATCH v2 7/8] env: Provide a work-around for unquoting fdtfile Simon Glass
2024-08-26 15:56 ` Quentin Schulz
2024-09-01 20:09 ` Simon Glass
2024-08-23 20:48 ` [PATCH v2 8/8] sunxi: Move to text environment Simon Glass
2024-10-01 11:18 ` [PATCH v2 0/8] bootstd: sunxi: Migrate to standard boot Simon Glass
2024-10-01 12:07 ` Mattijs Korpershoek
2024-10-01 12:23 ` Quentin Schulz
2024-10-01 13:06 ` Simon Glass
2024-10-01 12:10 ` Andre Przywara
2024-10-01 17:15 ` Heinrich Schuchardt
2024-10-01 17:29 ` Heinrich Schuchardt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox