[PATCH 04/10] Convert CONFIG_PHYSMEM to Kconfig
Simon Glass
sjg at chromium.org
Wed Nov 17 03:48:42 CET 2021
Hi Heinrich,
On Sun, 14 Nov 2021 at 02:46, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 11/14/21 04:21, Simon Glass wrote:
> > This converts the following to Kconfig:
> > CONFIG_PHYSMEM
> >
> > Signed-off-by: Simon Glass <sjg at chromium.org>
> > ---
> >
> > README | 8 --------
> > arch/Kconfig | 2 ++
> > include/configs/edison.h | 3 ---
> > include/configs/sandbox.h | 2 --
> > include/configs/x86-common.h | 2 --
> > lib/Kconfig | 10 ++++++++++
> > scripts/config_whitelist.txt | 1 -
> > 7 files changed, 12 insertions(+), 16 deletions(-)
> >
> > diff --git a/README b/README
> > index 9606a8b3acf..70485e7fb9f 100644
> > --- a/README
> > +++ b/README
> > @@ -1716,14 +1716,6 @@ The following options need to be configured:
> > HERMES, IP860, RPXlite, LWMON,
> > FLAGADM
> >
> > -- Access to physical memory region (> 4GB)
> > - Some basic support is provided for operations on memory not
> > - normally accessible to U-Boot - e.g. some architectures
> > - support access to more than 4GB of memory on 32-bit
> > - machines using physical address extension or similar.
> > - Define CONFIG_PHYSMEM to access this basic support, which
> > - currently only supports clearing the memory.
> > -
> > - Error Recovery:
> > CONFIG_NET_RETRY_COUNT
> >
> > diff --git a/arch/Kconfig b/arch/Kconfig
> > index 3e2cc84ab2c..1e0e6118139 100644
> > --- a/arch/Kconfig
> > +++ b/arch/Kconfig
> > @@ -194,6 +194,7 @@ config SANDBOX
> > imply PHY_FIXED
> > imply DM_DSA
> > imply CMD_EXTENSION
> > + imply PHYSMEM
> >
> > config SH
> > bool "SuperH architecture"
> > @@ -245,6 +246,7 @@ config X86
> > imply USB_ETHER_SMSC95XX
> > imply USB_HOST_ETHER
> > imply PCH
> > + imply PHYSMEM
> > imply RTC_MC146818
> > imply ACPIGEN if !QEMU
> > imply SYSINFO if GENERATE_SMBIOS_TABLE
> > diff --git a/include/configs/edison.h b/include/configs/edison.h
> > index 3ec35db4bcf..02f33f3c29f 100644
> > --- a/include/configs/edison.h
> > +++ b/include/configs/edison.h
> > @@ -14,9 +14,6 @@
> > #define CONFIG_SYS_MAXARGS 128
> > #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
> >
> > -/* Memory */
> > -#define CONFIG_PHYSMEM
> > -
> > #define CONFIG_SYS_STACK_SIZE (32 * 1024)
> >
> > #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
> > diff --git a/include/configs/sandbox.h b/include/configs/sandbox.h
> > index 09f46ca1ac2..48cae7d972a 100644
> > --- a/include/configs/sandbox.h
> > +++ b/include/configs/sandbox.h
> > @@ -18,8 +18,6 @@
> >
> > #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
> >
> > -#define CONFIG_PHYSMEM
> > -
> > /* Size of our emulated memory */
> > #define SB_CONCAT(x, y) x ## y
> > #define SB_TO_UL(s) SB_CONCAT(s, UL)
> > diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h
> > index 486b5ca7765..33209fad4fc 100644
> > --- a/include/configs/x86-common.h
> > +++ b/include/configs/x86-common.h
> > @@ -14,8 +14,6 @@
> > * High Level Configuration Options
> > * (easy to change)
> > */
> > -#define CONFIG_PHYSMEM
> > -
> > #define CONFIG_SYS_BOOTM_LEN (16 << 20)
> >
> > /* SATA AHCI storage */
> > diff --git a/lib/Kconfig b/lib/Kconfig
> > index 70bf8e7a464..f3baf45718e 100644
> > --- a/lib/Kconfig
> > +++ b/lib/Kconfig
> > @@ -15,6 +15,16 @@ config SYS_NUM_ADDR_MAP
> > help
> > Sets the number of entries in the virtual-physical mapping table.
> >
> > +config PHYSMEM
> > + bool "Access to physical memory region (> 4GB)"
>
> %s/4GB/4 GiB/
Please let's not add that junk to U-Boot.
>
> > + help
> > + Some basic support is provided for operations on memory not
> > + normally accessible to 32-bit U-Boot - e.g. some architectures
> > + support access to more than 4GB of memory on 32-bit
> > + machines using physical address extension or similar.
>
> You could simply drop all those lines and simply say say:
>
> "Clear memory above 4GiB on 32bit systems."
>
> But do we need this option at all? Why should this memory be cleared?
>
> Let's drop arch/x86/lib/physmem.c instead. It is only used by the Edison
> board which is out of production since 2017. And that board only had 1
> GiB of memory (sic!).
This option is used by Chrome OS vboot so I don't want to drop it.
Regards,
Simon
More information about the U-Boot
mailing list