| Message ID | 20251028094536.43676-1-heinrich.schuchardt@canonical.com |
|---|---|
| State | New |
| Headers |
Return-Path: <concept-bounces+u-boot-concept=u-boot.org@u-boot.org> X-Original-To: u-boot-concept@u-boot.org Delivered-To: u-boot-concept@u-boot.org Authentication-Results: mail.u-boot.org; dkim=fail reason="signature verification failed" (4096-bit key; unprotected) header.d=canonical.com header.i=@canonical.com header.a=rsa-sha256 header.s=20251003 header.b=pE95/BGF; dkim-atps=neutral Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id B79C768310 for <u-boot-concept@u-boot.org>; Tue, 28 Oct 2025 23:30:30 -0600 (MDT) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id pYoKkqRt7NPV for <u-boot-concept@u-boot.org>; Tue, 28 Oct 2025 23:30:30 -0600 (MDT) Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id A5A4D68315 for <u-boot-concept@u-boot.org>; Tue, 28 Oct 2025 23:30:30 -0600 (MDT) Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 6478368299 for <concept@u-boot.org>; Tue, 28 Oct 2025 03:45:49 -0600 (MDT) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id v9nLfZS7r4eI for <concept@u-boot.org>; Tue, 28 Oct 2025 03:45:49 -0600 (MDT) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=185.125.188.121; helo=smtp-relay-canonical-1.canonical.com; envelope-from=heinrich.schuchardt@canonical.com; receiver=u-boot.org Received: from smtp-relay-canonical-1.canonical.com (smtp-relay-canonical-1.canonical.com [185.125.188.121]) by mail.u-boot.org (Postfix) with ESMTPS id 477BC664A8 for <concept@u-boot.org>; Tue, 28 Oct 2025 03:45:46 -0600 (MDT) Received: from LT03 (unknown [93.94.208.154]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-canonical-1.canonical.com (Postfix) with ESMTPSA id 2DC7145D43; Tue, 28 Oct 2025 09:45:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20251003; t=1761644745; bh=bia+4iIAiskx288n6XfC5d2inPlLAAPz84fioBuR4bE=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=pE95/BGFLv1rdEDXzVwiwr6QqA4XcmuyFSmfye/pMcBTkxWG8r+CsPSD9Rg0rVTl9 5d7IAqGud/eaGfTZUYkDAZt2CJimuHzDZv1qio7Y6qDWjLQx2WBBk2wJ5BbXoEHc4I 8TJ4ILq4FBZM34iNi+yOG2ln5UTB9IonkNDaYG+osPDtpXAMr6banZCkaltNN/jkjB h3y7FnUA6hAAVnAcOQRNjZweRbST/ND7t5Hcm0Ceobk/qTLowar5Exek/2rDwg4iWK orv00SY9zU5zWoZ0UJOhvkT3hyrFhEwoKQeo1vWtusXYrZexgrGwX9P4o7gpBxn/1i MP4GRBwoF1121qBvx6f+edSFgJ6NktEG7kqLjgs8zfEHmLHUWmSuDnY/3yPdUQ92ES pXZTeNDTz+QDkyv3BmC2ZZ58WGHBnF+vW++Y052+5YNjGKrp+OJ4kQkkgGRLToMj1d KQZ4FzpbFxE2aQYco/n+b3PGebtqs0sstQbLGmiGTG7ar1FdYB3uI8GznqkqoolKJS 5QgDySjkA9DwNL+HQgnRobQ05MSyF/8WAupc/RmdgGTIVFIbHhPsEkHA+eiAl59rzL tzgrsUGZt3kidfqwNPEUyk97bU2pWdhrzPHRe2HxwLDZbs6bAcEHYgLHLsjHwdlCKc /Nx409wt1HTxeG9wpRboIgxo= From: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> To: concept@u-boot.org Date: Tue, 28 Oct 2025 10:45:36 +0100 Message-ID: <20251028094536.43676-1-heinrich.schuchardt@canonical.com> X-Mailer: git-send-email 2.51.0 MIME-Version: 1.0 X-MailFrom: heinrich.schuchardt@canonical.com X-Mailman-Rule-Hits: administrivia X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header Message-ID-Hash: I7NRYWVGEOAYYRYTHBNJJ2R3NDGXKSPP X-Message-ID-Hash: I7NRYWVGEOAYYRYTHBNJJ2R3NDGXKSPP X-Mailman-Approved-At: Wed, 29 Oct 2025 05:30:26 -0600 CC: Simon Glass <sjg@chromium.org>, Heinrich Schuchardt <heinrich.schuchardt@canonical.com> X-Mailman-Version: 3.3.10 Precedence: list Subject: [Concept] [PATCH 1/1] bloblist: adjust default bloblist size after reloc List-Id: Discussion and patches related to U-Boot Concept <concept.u-boot.org> Archived-At: <https://lists.u-boot.org/archives/list/concept@u-boot.org/message/I7NRYWVGEOAYYRYTHBNJJ2R3NDGXKSPP/> List-Archive: <https://lists.u-boot.org/archives/list/concept@u-boot.org/> List-Help: <mailto:concept-request@u-boot.org?subject=help> List-Owner: <mailto:concept-owner@u-boot.org> List-Post: <mailto:concept@u-boot.org> List-Subscribe: <mailto:concept-join@u-boot.org> List-Unsubscribe: <mailto:concept-leave@u-boot.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit |
| Series |
[Concept,1/1] bloblist: adjust default bloblist size after reloc
|
|
Commit Message
Heinrich Schuchardt
Oct. 28, 2025, 9:45 a.m. UTC
If neither CONFIG_BLOBLIST_FIXED NOR CONFIG_BLOBLIST_ALLOC is set,
currently CONFIG_BLOBLIST_SIZE_RELOC defaults to 0 except if
* CONFIG_ARM=y && CONFIG_EFI_LOADER=y && GENERATE_ACPI_TABLE=y.
A size of zero never makes sense for a bloblist.
When using QFW we need more than 64 KiB to host the ACPI table.
In this case CONFIG_BLOBLIST_ALLOC is used.
Set a reasonable default.
Remove the CONFIG_BLOBLIST_SIZE_RELOC in ARM QEMU defconfigs which are
not compatible with ACPI tables passed from QEMU.
Fixes: 6f9b015c138b ("common: Enable BLOBLIST_TABLES on arm")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
---
common/Kconfig | 4 ++--
configs/qemu_arm64_defconfig | 1 -
configs/qemu_arm_defconfig | 1 -
3 files changed, 2 insertions(+), 4 deletions(-)
Comments
Hi Heinrich, On Tue, 28 Oct 2025 at 10:45, Heinrich Schuchardt <heinrich.schuchardt@canonical.com> wrote: > > If neither CONFIG_BLOBLIST_FIXED NOR CONFIG_BLOBLIST_ALLOC is set, > currently CONFIG_BLOBLIST_SIZE_RELOC defaults to 0 except if > * CONFIG_ARM=y && CONFIG_EFI_LOADER=y && GENERATE_ACPI_TABLE=y. > > A size of zero never makes sense for a bloblist. > > When using QFW we need more than 64 KiB to host the ACPI table. > In this case CONFIG_BLOBLIST_ALLOC is used. > > Set a reasonable default. > > Remove the CONFIG_BLOBLIST_SIZE_RELOC in ARM QEMU defconfigs which are > not compatible with ACPI tables passed from QEMU. > > Fixes: 6f9b015c138b ("common: Enable BLOBLIST_TABLES on arm") > Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> > --- > common/Kconfig | 4 ++-- > configs/qemu_arm64_defconfig | 1 - > configs/qemu_arm_defconfig | 1 - > 3 files changed, 2 insertions(+), 4 deletions(-) > > diff --git a/common/Kconfig b/common/Kconfig > index 3bd11f44c51..1665d34fac5 100644 > --- a/common/Kconfig > +++ b/common/Kconfig > @@ -1129,8 +1129,8 @@ config BLOBLIST_SIZE > > config BLOBLIST_SIZE_RELOC > hex "Size of bloblist after relocation" > - default BLOBLIST_SIZE if BLOBLIST_FIXED || BLOBLIST_ALLOC > - default 0x20000 if (ARM && EFI_LOADER && GENERATE_ACPI_TABLE) > + default BLOBLIST_SIZE if BLOBLIST_FIXED > + default 0x20000 Why not use BLOBLIST_SIZE when BLOBLIST_ALLOC is used? There would normally be no need to expand it. Perhaps we should use 128K only if ACPI is enabled? > help > Sets the size of the bloblist in bytes after relocation. Since U-Boot > has a lot more memory available then, it is possible to use a larger > diff --git a/configs/qemu_arm64_defconfig b/configs/qemu_arm64_defconfig > index e6555b6d3d3..4fff61d7675 100644 > --- a/configs/qemu_arm64_defconfig > +++ b/configs/qemu_arm64_defconfig > @@ -2,7 +2,6 @@ CONFIG_ARM=y > CONFIG_POSITION_INDEPENDENT=y > CONFIG_ARCH_QEMU_ARM=y > CONFIG_SYS_MALLOC_LEN=0x1000000 > -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 > CONFIG_NR_DRAM_BANKS=1 > CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 > CONFIG_ENV_SIZE=0x40000 > diff --git a/configs/qemu_arm_defconfig b/configs/qemu_arm_defconfig > index 22781226efb..50046e2fbf2 100644 > --- a/configs/qemu_arm_defconfig > +++ b/configs/qemu_arm_defconfig > @@ -2,7 +2,6 @@ CONFIG_ARM=y > CONFIG_ARM_SMCCC=y > CONFIG_ARCH_QEMU_ARM=y > CONFIG_SYS_MALLOC_LEN=0x1000000 > -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 > CONFIG_NR_DRAM_BANKS=1 > CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 > CONFIG_ENV_SIZE=0x40000 > -- > 2.51.0 > Regards, Simon
On 10/30/25 09:53, Simon Glass wrote: > Hi Heinrich, > > On Tue, 28 Oct 2025 at 10:45, Heinrich Schuchardt > <heinrich.schuchardt@canonical.com> wrote: >> >> If neither CONFIG_BLOBLIST_FIXED NOR CONFIG_BLOBLIST_ALLOC is set, >> currently CONFIG_BLOBLIST_SIZE_RELOC defaults to 0 except if >> * CONFIG_ARM=y && CONFIG_EFI_LOADER=y && GENERATE_ACPI_TABLE=y. >> >> A size of zero never makes sense for a bloblist. >> >> When using QFW we need more than 64 KiB to host the ACPI table. >> In this case CONFIG_BLOBLIST_ALLOC is used. >> >> Set a reasonable default. >> >> Remove the CONFIG_BLOBLIST_SIZE_RELOC in ARM QEMU defconfigs which are >> not compatible with ACPI tables passed from QEMU. >> >> Fixes: 6f9b015c138b ("common: Enable BLOBLIST_TABLES on arm") >> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> >> --- >> common/Kconfig | 4 ++-- >> configs/qemu_arm64_defconfig | 1 - >> configs/qemu_arm_defconfig | 1 - >> 3 files changed, 2 insertions(+), 4 deletions(-) >> >> diff --git a/common/Kconfig b/common/Kconfig >> index 3bd11f44c51..1665d34fac5 100644 >> --- a/common/Kconfig >> +++ b/common/Kconfig >> @@ -1129,8 +1129,8 @@ config BLOBLIST_SIZE >> >> config BLOBLIST_SIZE_RELOC >> hex "Size of bloblist after relocation" >> - default BLOBLIST_SIZE if BLOBLIST_FIXED || BLOBLIST_ALLOC >> - default 0x20000 if (ARM && EFI_LOADER && GENERATE_ACPI_TABLE) >> + default BLOBLIST_SIZE if BLOBLIST_FIXED >> + default 0x20000 > > Why not use BLOBLIST_SIZE when BLOBLIST_ALLOC is used? There would > normally be no need to expand it. > > Perhaps we should use 128K only if ACPI is enabled? Thanks for reviewing. This patch has been merged in upstream U-Boot. 559f11e66cf7 ("bloblist: adjust default bloblist size after reloc") If you have better ideas how to keep qemu-riscv64_smode_acpi building, please, contribute this upstreams. We should avoid a delta here. Best regards Heinrich > >> help >> Sets the size of the bloblist in bytes after relocation. Since U-Boot >> has a lot more memory available then, it is possible to use a larger >> diff --git a/configs/qemu_arm64_defconfig b/configs/qemu_arm64_defconfig >> index e6555b6d3d3..4fff61d7675 100644 >> --- a/configs/qemu_arm64_defconfig >> +++ b/configs/qemu_arm64_defconfig >> @@ -2,7 +2,6 @@ CONFIG_ARM=y >> CONFIG_POSITION_INDEPENDENT=y >> CONFIG_ARCH_QEMU_ARM=y >> CONFIG_SYS_MALLOC_LEN=0x1000000 >> -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 >> CONFIG_NR_DRAM_BANKS=1 >> CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 >> CONFIG_ENV_SIZE=0x40000 >> diff --git a/configs/qemu_arm_defconfig b/configs/qemu_arm_defconfig >> index 22781226efb..50046e2fbf2 100644 >> --- a/configs/qemu_arm_defconfig >> +++ b/configs/qemu_arm_defconfig >> @@ -2,7 +2,6 @@ CONFIG_ARM=y >> CONFIG_ARM_SMCCC=y >> CONFIG_ARCH_QEMU_ARM=y >> CONFIG_SYS_MALLOC_LEN=0x1000000 >> -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 >> CONFIG_NR_DRAM_BANKS=1 >> CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 >> CONFIG_ENV_SIZE=0x40000 >> -- >> 2.51.0 >> > > Regards, > Simon
Hi Heinrich, On Thu, 30 Oct 2025 at 10:53, Heinrich Schuchardt <heinrich.schuchardt@canonical.com> wrote: > > On 10/30/25 09:53, Simon Glass wrote: > > Hi Heinrich, > > > > On Tue, 28 Oct 2025 at 10:45, Heinrich Schuchardt > > <heinrich.schuchardt@canonical.com> wrote: > >> > >> If neither CONFIG_BLOBLIST_FIXED NOR CONFIG_BLOBLIST_ALLOC is set, > >> currently CONFIG_BLOBLIST_SIZE_RELOC defaults to 0 except if > >> * CONFIG_ARM=y && CONFIG_EFI_LOADER=y && GENERATE_ACPI_TABLE=y. > >> > >> A size of zero never makes sense for a bloblist. > >> > >> When using QFW we need more than 64 KiB to host the ACPI table. > >> In this case CONFIG_BLOBLIST_ALLOC is used. > >> > >> Set a reasonable default. > >> > >> Remove the CONFIG_BLOBLIST_SIZE_RELOC in ARM QEMU defconfigs which are > >> not compatible with ACPI tables passed from QEMU. > >> > >> Fixes: 6f9b015c138b ("common: Enable BLOBLIST_TABLES on arm") > >> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> > >> --- > >> common/Kconfig | 4 ++-- > >> configs/qemu_arm64_defconfig | 1 - > >> configs/qemu_arm_defconfig | 1 - > >> 3 files changed, 2 insertions(+), 4 deletions(-) > >> > >> diff --git a/common/Kconfig b/common/Kconfig > >> index 3bd11f44c51..1665d34fac5 100644 > >> --- a/common/Kconfig > >> +++ b/common/Kconfig > >> @@ -1129,8 +1129,8 @@ config BLOBLIST_SIZE > >> > >> config BLOBLIST_SIZE_RELOC > >> hex "Size of bloblist after relocation" > >> - default BLOBLIST_SIZE if BLOBLIST_FIXED || BLOBLIST_ALLOC > >> - default 0x20000 if (ARM && EFI_LOADER && GENERATE_ACPI_TABLE) > >> + default BLOBLIST_SIZE if BLOBLIST_FIXED > >> + default 0x20000 > > > > Why not use BLOBLIST_SIZE when BLOBLIST_ALLOC is used? There would > > normally be no need to expand it. > > > > Perhaps we should use 128K only if ACPI is enabled? > > Thanks for reviewing. > > This patch has been merged in upstream U-Boot. > 559f11e66cf7 ("bloblist: adjust default bloblist size after reloc") > > If you have better ideas how to keep qemu-riscv64_smode_acpi building, > please, contribute this upstreams. We should avoid a delta here. Well my point isn't very important, so let's just use this. Reviewed-by: Simon Glass <sjg@chromium.org> > > Best regards > > Heinrich > > > > >> help > >> Sets the size of the bloblist in bytes after relocation. Since U-Boot > >> has a lot more memory available then, it is possible to use a larger > >> diff --git a/configs/qemu_arm64_defconfig b/configs/qemu_arm64_defconfig > >> index e6555b6d3d3..4fff61d7675 100644 > >> --- a/configs/qemu_arm64_defconfig > >> +++ b/configs/qemu_arm64_defconfig > >> @@ -2,7 +2,6 @@ CONFIG_ARM=y > >> CONFIG_POSITION_INDEPENDENT=y > >> CONFIG_ARCH_QEMU_ARM=y > >> CONFIG_SYS_MALLOC_LEN=0x1000000 > >> -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 > >> CONFIG_NR_DRAM_BANKS=1 > >> CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 > >> CONFIG_ENV_SIZE=0x40000 > >> diff --git a/configs/qemu_arm_defconfig b/configs/qemu_arm_defconfig > >> index 22781226efb..50046e2fbf2 100644 > >> --- a/configs/qemu_arm_defconfig > >> +++ b/configs/qemu_arm_defconfig > >> @@ -2,7 +2,6 @@ CONFIG_ARM=y > >> CONFIG_ARM_SMCCC=y > >> CONFIG_ARCH_QEMU_ARM=y > >> CONFIG_SYS_MALLOC_LEN=0x1000000 > >> -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 > >> CONFIG_NR_DRAM_BANKS=1 > >> CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 > >> CONFIG_ENV_SIZE=0x40000 > >> -- > >> 2.51.0 > >> > > > > Regards, > > Simon >
diff --git a/common/Kconfig b/common/Kconfig index 3bd11f44c51..1665d34fac5 100644 --- a/common/Kconfig +++ b/common/Kconfig @@ -1129,8 +1129,8 @@ config BLOBLIST_SIZE config BLOBLIST_SIZE_RELOC hex "Size of bloblist after relocation" - default BLOBLIST_SIZE if BLOBLIST_FIXED || BLOBLIST_ALLOC - default 0x20000 if (ARM && EFI_LOADER && GENERATE_ACPI_TABLE) + default BLOBLIST_SIZE if BLOBLIST_FIXED + default 0x20000 help Sets the size of the bloblist in bytes after relocation. Since U-Boot has a lot more memory available then, it is possible to use a larger diff --git a/configs/qemu_arm64_defconfig b/configs/qemu_arm64_defconfig index e6555b6d3d3..4fff61d7675 100644 --- a/configs/qemu_arm64_defconfig +++ b/configs/qemu_arm64_defconfig @@ -2,7 +2,6 @@ CONFIG_ARM=y CONFIG_POSITION_INDEPENDENT=y CONFIG_ARCH_QEMU_ARM=y CONFIG_SYS_MALLOC_LEN=0x1000000 -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 CONFIG_NR_DRAM_BANKS=1 CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 CONFIG_ENV_SIZE=0x40000 diff --git a/configs/qemu_arm_defconfig b/configs/qemu_arm_defconfig index 22781226efb..50046e2fbf2 100644 --- a/configs/qemu_arm_defconfig +++ b/configs/qemu_arm_defconfig @@ -2,7 +2,6 @@ CONFIG_ARM=y CONFIG_ARM_SMCCC=y CONFIG_ARCH_QEMU_ARM=y CONFIG_SYS_MALLOC_LEN=0x1000000 -CONFIG_BLOBLIST_SIZE_RELOC=0x2000 CONFIG_NR_DRAM_BANKS=1 CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x40200000 CONFIG_ENV_SIZE=0x40000