On 11/17/21 03:48, Simon Glass wrote:
Hi Heinrich,

On Sun, 14 Nov 2021 at 02:46, Heinrich Schuchardt <xypron.g...@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 <s...@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.

4GB = 4,000,000,000 bytes period.

We use GiB all over U-Boot. So eliminate this GB "junk" here.

Best regards

Heinrich



+     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


Reply via email to