aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2022-10-28 20:27:10 -0400
committerTom Rini <trini@konsulko.com>2022-11-10 10:08:55 -0500
commit8c778f78340068cebf5484a9f69de1de5d4eb447 (patch)
treedbe5b6dd7db245a93dd6eb3ba3243ed6b624fbc5
parent02f5a01441ecd356b73b491c99d635c67b2ba207 (diff)
downloadu-boot-8c778f78340068cebf5484a9f69de1de5d4eb447.zip
u-boot-8c778f78340068cebf5484a9f69de1de5d4eb447.tar.gz
u-boot-8c778f78340068cebf5484a9f69de1de5d4eb447.tar.bz2
Convert CONFIG_SYS_NONCACHED_MEMORY to Kconfig
This converts the following to Kconfig: CONFIG_SYS_NONCACHED_MEMORY To do this we introduce CONFIG_SYS_HAS_NONCACHED_MEMORY as a bool to gate if we are going to have noncached_... functions available and then continue to use CONFIG_SYS_NONCACHED_MEMORY to store the size of said cache. We make this new option depend on both the architectures which implement support and the drivers which make use of it. Cc: Tom Warren <twarren@nvidia.com> Cc: Mingming lee <mingming.lee@mediatek.com> Cc: "Ying-Chun Liu (PaulLiu)" <paul.liu@linaro.org> Cc: Alban Bedel <alban.bedel@avionic-design.de> Cc: Stephen Warren <swarren@nvidia.com> Cc: Marcel Ziswiler <marcel.ziswiler@toradex.com> Cc: Allen Martin <amartin@nvidia.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
-rw-r--r--README19
-rw-r--r--arch/Kconfig24
-rw-r--r--configs/apalis-tk1_defconfig1
-rw-r--r--configs/apalis_t30_defconfig1
-rw-r--r--configs/beaver_defconfig1
-rw-r--r--configs/cardhu_defconfig1
-rw-r--r--configs/cei-tk1-som_defconfig1
-rw-r--r--configs/colibri_t20_defconfig1
-rw-r--r--configs/colibri_t30_defconfig1
-rw-r--r--configs/dalmore_defconfig1
-rw-r--r--configs/harmony_defconfig1
-rw-r--r--configs/imx8mp_rsb3720a1_4G_defconfig1
-rw-r--r--configs/imx8mp_rsb3720a1_6G_defconfig1
-rw-r--r--configs/jetson-tk1_defconfig1
-rw-r--r--configs/medcom-wide_defconfig1
-rw-r--r--configs/mt7621_nand_rfb_defconfig1
-rw-r--r--configs/mt7621_rfb_defconfig1
-rw-r--r--configs/mt7622_rfb_defconfig1
-rw-r--r--configs/mt7623a_unielec_u7623_02_defconfig1
-rw-r--r--configs/mt7623n_bpir2_defconfig1
-rw-r--r--configs/mt7629_rfb_defconfig1
-rw-r--r--configs/mt7981_emmc_rfb_defconfig1
-rw-r--r--configs/mt7981_rfb_defconfig1
-rw-r--r--configs/mt7981_sd_rfb_defconfig1
-rw-r--r--configs/mt7986_rfb_defconfig1
-rw-r--r--configs/mt7986a_bpir3_emmc_defconfig1
-rw-r--r--configs/mt7986a_bpir3_sd_defconfig1
-rw-r--r--configs/mt8512_bm1_emmc_defconfig1
-rw-r--r--configs/mt8518_ap1_emmc_defconfig1
-rw-r--r--configs/nyan-big_defconfig1
-rw-r--r--configs/p2371-0000_defconfig1
-rw-r--r--configs/p2371-2180_defconfig1
-rw-r--r--configs/p2571_defconfig1
-rw-r--r--configs/p2771-0000-000_defconfig1
-rw-r--r--configs/p2771-0000-500_defconfig1
-rw-r--r--configs/p3450-0000_defconfig1
-rw-r--r--configs/paz00_defconfig1
-rw-r--r--configs/plutux_defconfig1
-rw-r--r--configs/seaboard_defconfig1
-rw-r--r--configs/tec-ng_defconfig1
-rw-r--r--configs/tec_defconfig1
-rw-r--r--configs/trimslice_defconfig1
-rw-r--r--configs/venice2_defconfig1
-rw-r--r--configs/ventana_defconfig1
-rw-r--r--include/configs/imx8mp_rsb3720.h4
-rw-r--r--include/configs/mt7621.h2
-rw-r--r--include/configs/mt7622.h4
-rw-r--r--include/configs/mt7623.h2
-rw-r--r--include/configs/mt7629.h2
-rw-r--r--include/configs/mt7981.h4
-rw-r--r--include/configs/mt7986.h4
-rw-r--r--include/configs/mt8512.h4
-rw-r--r--include/configs/mt8518.h5
-rw-r--r--include/configs/tegra-common-post.h2
54 files changed, 66 insertions, 52 deletions
diff --git a/README b/README
index 351c039..389943d 100644
--- a/README
+++ b/README
@@ -1473,25 +1473,6 @@ Configuration Settings:
boards which do not use the full malloc in SPL (which is
enabled with CONFIG_SYS_SPL_MALLOC).
-- CONFIG_SYS_NONCACHED_MEMORY:
- Size of non-cached memory area. This area of memory will be
- typically located right below the malloc() area and mapped
- uncached in the MMU. This is useful for drivers that would
- otherwise require a lot of explicit cache maintenance. For
- some drivers it's also impossible to properly maintain the
- cache. For example if the regions that need to be flushed
- are not a multiple of the cache-line size, *and* padding
- cannot be allocated between the regions to align them (i.e.
- if the HW requires a contiguous array of regions, and the
- size of each region is not cache-aligned), then a flush of
- one region may result in overwriting data that hardware has
- written to another region in the same cache-line. This can
- happen for example in network drivers where descriptors for
- buffers are typically smaller than the CPU cache-line (e.g.
- 16 bytes vs. 32 or 64 bytes).
-
- Non-cached memory is only supported on 32-bit ARM at present.
-
- CONFIG_SYS_BOOTMAPSZ:
Maximum size of memory mapped by the startup code of
the Linux kernel; all data that must be processed by
diff --git a/arch/Kconfig b/arch/Kconfig
index e3a456a..ae39716 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -438,6 +438,30 @@ config TPL_SKIP_LOWLEVEL_INIT_ONLY
normal CP15 init (such as enabling the instruction cache) is still
performed.
+config SYS_HAS_NONCACHED_MEMORY
+ bool "Enable reserving a non-cached memory area for drivers"
+ depends on (ARM || MIPS) && (RTL8169 || MEDIATEK_ETH)
+ help
+ This is useful for drivers that would otherwise require a lot of
+ explicit cache maintenance. For some drivers it's also impossible to
+ properly maintain the cache. For example if the regions that need to
+ be flushed are not a multiple of the cache-line size, *and* padding
+ cannot be allocated between the regions to align them (i.e. if the
+ HW requires a contiguous array of regions, and the size of each
+ region is not cache-aligned), then a flush of one region may result
+ in overwriting data that hardware has written to another region in
+ the same cache-line. This can happen for example in network drivers
+ where descriptors for buffers are typically smaller than the CPU
+ cache-line (e.g. 16 bytes vs. 32 or 64 bytes).
+
+config SYS_NONCACHED_MEMORY
+ hex "Size in bytes of the non-cached memory area"
+ depends on SYS_HAS_NONCACHED_MEMORY
+ default 0x100000
+ help
+ Size of non-cached memory area. This area of memory will be typically
+ located right below the malloc() area and mapped uncached in the MMU.
+
source "arch/arc/Kconfig"
source "arch/arm/Kconfig"
source "arch/m68k/Kconfig"
diff --git a/configs/apalis-tk1_defconfig b/configs/apalis-tk1_defconfig
index 70ef62a..6c27901 100644
--- a/configs/apalis-tk1_defconfig
+++ b/configs/apalis-tk1_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/apalis_t30_defconfig b/configs/apalis_t30_defconfig
index 587af46..b50665b 100644
--- a/configs/apalis_t30_defconfig
+++ b/configs/apalis_t30_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/beaver_defconfig b/configs/beaver_defconfig
index 24f619c..0967367 100644
--- a/configs/beaver_defconfig
+++ b/configs/beaver_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/cardhu_defconfig b/configs/cardhu_defconfig
index 87aa930..9bfa759 100644
--- a/configs/cardhu_defconfig
+++ b/configs/cardhu_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/cei-tk1-som_defconfig b/configs/cei-tk1-som_defconfig
index f716f62..58d75a5 100644
--- a/configs/cei-tk1-som_defconfig
+++ b/configs/cei-tk1-som_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/colibri_t20_defconfig b/configs/colibri_t20_defconfig
index 224de94..95fef40 100644
--- a/configs/colibri_t20_defconfig
+++ b/configs/colibri_t20_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/colibri_t30_defconfig b/configs/colibri_t30_defconfig
index a616eae..a69acd9 100644
--- a/configs/colibri_t30_defconfig
+++ b/configs/colibri_t30_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/dalmore_defconfig b/configs/dalmore_defconfig
index cc46f4e..ea8bc8a 100644
--- a/configs/dalmore_defconfig
+++ b/configs/dalmore_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
index 353d1a3..5a3c509 100644
--- a/configs/harmony_defconfig
+++ b/configs/harmony_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/imx8mp_rsb3720a1_4G_defconfig b/configs/imx8mp_rsb3720a1_4G_defconfig
index 5e29320..48436ff 100644
--- a/configs/imx8mp_rsb3720a1_4G_defconfig
+++ b/configs/imx8mp_rsb3720a1_4G_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_ARCH_IMX8M=y
CONFIG_TEXT_BASE=0x40200000
CONFIG_SYS_MALLOC_LEN=0x2000000
diff --git a/configs/imx8mp_rsb3720a1_6G_defconfig b/configs/imx8mp_rsb3720a1_6G_defconfig
index 11c3e1f..3cba4e2 100644
--- a/configs/imx8mp_rsb3720a1_6G_defconfig
+++ b/configs/imx8mp_rsb3720a1_6G_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_ARCH_IMX8M=y
CONFIG_TEXT_BASE=0x40200000
CONFIG_SYS_MALLOC_LEN=0x2000000
diff --git a/configs/jetson-tk1_defconfig b/configs/jetson-tk1_defconfig
index 1187974..b391a86 100644
--- a/configs/jetson-tk1_defconfig
+++ b/configs/jetson-tk1_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/medcom-wide_defconfig b/configs/medcom-wide_defconfig
index 76e4eb3..cb5324b 100644
--- a/configs/medcom-wide_defconfig
+++ b/configs/medcom-wide_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/mt7621_nand_rfb_defconfig b/configs/mt7621_nand_rfb_defconfig
index ee30f48..5291bb3 100644
--- a/configs/mt7621_nand_rfb_defconfig
+++ b/configs/mt7621_nand_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_MIPS=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_MALLOC_LEN=0x100000
CONFIG_SPL_LIBCOMMON_SUPPORT=y
CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/mt7621_rfb_defconfig b/configs/mt7621_rfb_defconfig
index 9987cc5..70280ad 100644
--- a/configs/mt7621_rfb_defconfig
+++ b/configs/mt7621_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_MIPS=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_MALLOC_LEN=0x100000
CONFIG_SPL_LIBCOMMON_SUPPORT=y
CONFIG_SPL_LIBGENERIC_SUPPORT=y
diff --git a/configs/mt7622_rfb_defconfig b/configs/mt7622_rfb_defconfig
index a0d33c0..3f18add 100644
--- a/configs/mt7622_rfb_defconfig
+++ b/configs/mt7622_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt7623a_unielec_u7623_02_defconfig b/configs/mt7623a_unielec_u7623_02_defconfig
index 82397b2..c56b4bb 100644
--- a/configs/mt7623a_unielec_u7623_02_defconfig
+++ b/configs/mt7623a_unielec_u7623_02_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_THUMB_BUILD=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x81e00000
diff --git a/configs/mt7623n_bpir2_defconfig b/configs/mt7623n_bpir2_defconfig
index 34960c0..e36943b 100644
--- a/configs/mt7623n_bpir2_defconfig
+++ b/configs/mt7623n_bpir2_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_THUMB_BUILD=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x81e00000
diff --git a/configs/mt7629_rfb_defconfig b/configs/mt7629_rfb_defconfig
index b5dbbea..d7669d5 100644
--- a/configs/mt7629_rfb_defconfig
+++ b/configs/mt7629_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_ARCH_TIMER=y
CONFIG_SYS_THUMB_BUILD=y
CONFIG_ARCH_MEDIATEK=y
diff --git a/configs/mt7981_emmc_rfb_defconfig b/configs/mt7981_emmc_rfb_defconfig
index 557c8e7..4832a22 100644
--- a/configs/mt7981_emmc_rfb_defconfig
+++ b/configs/mt7981_emmc_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt7981_rfb_defconfig b/configs/mt7981_rfb_defconfig
index f9776ffc..c397527 100644
--- a/configs/mt7981_rfb_defconfig
+++ b/configs/mt7981_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt7981_sd_rfb_defconfig b/configs/mt7981_sd_rfb_defconfig
index 5e0c8c8..17592dc 100644
--- a/configs/mt7981_sd_rfb_defconfig
+++ b/configs/mt7981_sd_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt7986_rfb_defconfig b/configs/mt7986_rfb_defconfig
index e3ded76..1363f9d 100644
--- a/configs/mt7986_rfb_defconfig
+++ b/configs/mt7986_rfb_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt7986a_bpir3_emmc_defconfig b/configs/mt7986a_bpir3_emmc_defconfig
index 6d29885..354159d 100644
--- a/configs/mt7986a_bpir3_emmc_defconfig
+++ b/configs/mt7986a_bpir3_emmc_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt7986a_bpir3_sd_defconfig b/configs/mt7986a_bpir3_sd_defconfig
index 222987a..db7ef98 100644
--- a/configs/mt7986a_bpir3_sd_defconfig
+++ b/configs/mt7986a_bpir3_sd_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
CONFIG_TEXT_BASE=0x41e00000
diff --git a/configs/mt8512_bm1_emmc_defconfig b/configs/mt8512_bm1_emmc_defconfig
index 772306c..888da16 100644
--- a/configs/mt8512_bm1_emmc_defconfig
+++ b/configs/mt8512_bm1_emmc_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_COUNTER_FREQUENCY=13000000
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
diff --git a/configs/mt8518_ap1_emmc_defconfig b/configs/mt8518_ap1_emmc_defconfig
index d75e299..43c166d 100644
--- a/configs/mt8518_ap1_emmc_defconfig
+++ b/configs/mt8518_ap1_emmc_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_COUNTER_FREQUENCY=13000000
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
diff --git a/configs/nyan-big_defconfig b/configs/nyan-big_defconfig
index e2e8beb..b140ec8 100644
--- a/configs/nyan-big_defconfig
+++ b/configs/nyan-big_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x81000100
diff --git a/configs/p2371-0000_defconfig b/configs/p2371-0000_defconfig
index e807491..6ffe922 100644
--- a/configs/p2371-0000_defconfig
+++ b/configs/p2371-0000_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80080000
diff --git a/configs/p2371-2180_defconfig b/configs/p2371-2180_defconfig
index ca630a4..ea62e18 100644
--- a/configs/p2371-2180_defconfig
+++ b/configs/p2371-2180_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_COUNTER_FREQUENCY=19200000
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
diff --git a/configs/p2571_defconfig b/configs/p2571_defconfig
index bc3fb3e..fb1cc68 100644
--- a/configs/p2571_defconfig
+++ b/configs/p2571_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80080000
diff --git a/configs/p2771-0000-000_defconfig b/configs/p2771-0000-000_defconfig
index 8b1d2b2..682be7d 100644
--- a/configs/p2771-0000-000_defconfig
+++ b/configs/p2771-0000-000_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_COUNTER_FREQUENCY=19200000
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
index 4a2f622..c5925b1 100644
--- a/configs/p2771-0000-500_defconfig
+++ b/configs/p2771-0000-500_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_COUNTER_FREQUENCY=19200000
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
diff --git a/configs/p3450-0000_defconfig b/configs/p3450-0000_defconfig
index 0160546..8e16afd 100644
--- a/configs/p3450-0000_defconfig
+++ b/configs/p3450-0000_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_COUNTER_FREQUENCY=19200000
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
diff --git a/configs/paz00_defconfig b/configs/paz00_defconfig
index 558375d..135e740 100644
--- a/configs/paz00_defconfig
+++ b/configs/paz00_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/plutux_defconfig b/configs/plutux_defconfig
index 170ac86..0fe41c1 100644
--- a/configs/plutux_defconfig
+++ b/configs/plutux_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/seaboard_defconfig b/configs/seaboard_defconfig
index 686a3c0..40d8836 100644
--- a/configs/seaboard_defconfig
+++ b/configs/seaboard_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/tec-ng_defconfig b/configs/tec-ng_defconfig
index 02d6b49..1caac5a 100644
--- a/configs/tec-ng_defconfig
+++ b/configs/tec-ng_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/tec_defconfig b/configs/tec_defconfig
index 967d305..852d73e 100644
--- a/configs/tec_defconfig
+++ b/configs/tec_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/trimslice_defconfig b/configs/trimslice_defconfig
index a9f774c..5da3a27 100644
--- a/configs/trimslice_defconfig
+++ b/configs/trimslice_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/configs/venice2_defconfig b/configs/venice2_defconfig
index a754c20..226480b 100644
--- a/configs/venice2_defconfig
+++ b/configs/venice2_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x80110000
diff --git a/configs/ventana_defconfig b/configs/ventana_defconfig
index 3c924ec..7a5e47b 100644
--- a/configs/ventana_defconfig
+++ b/configs/ventana_defconfig
@@ -1,4 +1,5 @@
CONFIG_ARM=y
+CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_L2CACHE_OFF=y
CONFIG_ARCH_TEGRA=y
CONFIG_TEXT_BASE=0x00110000
diff --git a/include/configs/imx8mp_rsb3720.h b/include/configs/imx8mp_rsb3720.h
index b8abdb0..5caabf2 100644
--- a/include/configs/imx8mp_rsb3720.h
+++ b/include/configs/imx8mp_rsb3720.h
@@ -41,10 +41,6 @@
#if defined(CONFIG_CMD_NET)
#define CONFIG_FEC_MXC_PHYADDR 4
-#ifdef CONFIG_DWC_ETH_QOS
-#define CONFIG_SYS_NONCACHED_MEMORY (1 * SZ_1M) /* 1M */
-#endif
-
#define PHY_ANEG_TIMEOUT 20000
#endif
diff --git a/include/configs/mt7621.h b/include/configs/mt7621.h
index 6a55e7a..9b1ba36 100644
--- a/include/configs/mt7621.h
+++ b/include/configs/mt7621.h
@@ -15,8 +15,6 @@
#define CONFIG_SYS_INIT_SP_OFFSET 0x800000
-#define CONFIG_SYS_NONCACHED_MEMORY 0x100000
-
/* MMC */
#define MMC_SUPPORTS_TUNING
diff --git a/include/configs/mt7622.h b/include/configs/mt7622.h
index f995399..fd8e30a 100644
--- a/include/configs/mt7622.h
+++ b/include/configs/mt7622.h
@@ -9,10 +9,6 @@
#ifndef __MT7622_H
#define __MT7622_H
-#include <linux/sizes.h>
-
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
/* Uboot definition */
#define CONFIG_SYS_UBOOT_BASE CONFIG_TEXT_BASE
diff --git a/include/configs/mt7623.h b/include/configs/mt7623.h
index 0cd8b08..73093f9 100644
--- a/include/configs/mt7623.h
+++ b/include/configs/mt7623.h
@@ -13,8 +13,6 @@
/* Miscellaneous configurable options */
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
/* Environment */
/* Preloader -> Uboot */
diff --git a/include/configs/mt7629.h b/include/configs/mt7629.h
index 22d11d0..668dc3c 100644
--- a/include/configs/mt7629.h
+++ b/include/configs/mt7629.h
@@ -13,8 +13,6 @@
/* Miscellaneous configurable options */
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
/* Environment */
/* Defines for SPL */
diff --git a/include/configs/mt7981.h b/include/configs/mt7981.h
index 1f81b0b..9f26b0b 100644
--- a/include/configs/mt7981.h
+++ b/include/configs/mt7981.h
@@ -9,10 +9,6 @@
#ifndef __MT7981_H
#define __MT7981_H
-#include <linux/sizes.h>
-
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
/* Uboot definition */
#define CONFIG_SYS_UBOOT_BASE CONFIG_TEXT_BASE
diff --git a/include/configs/mt7986.h b/include/configs/mt7986.h
index 00e1c57..4fbd57a 100644
--- a/include/configs/mt7986.h
+++ b/include/configs/mt7986.h
@@ -9,10 +9,6 @@
#ifndef __MT7986_H
#define __MT7986_H
-#include <linux/sizes.h>
-
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
/* Uboot definition */
#define CONFIG_SYS_UBOOT_BASE CONFIG_TEXT_BASE
diff --git a/include/configs/mt8512.h b/include/configs/mt8512.h
index 5ff5541..d159416 100644
--- a/include/configs/mt8512.h
+++ b/include/configs/mt8512.h
@@ -9,10 +9,6 @@
#ifndef __MT8512_H
#define __MT8512_H
-#include <linux/sizes.h>
-
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
/* Uboot definition */
#define CONFIG_SYS_UBOOT_START CONFIG_TEXT_BASE
diff --git a/include/configs/mt8518.h b/include/configs/mt8518.h
index 6d47046..7cabbef 100644
--- a/include/configs/mt8518.h
+++ b/include/configs/mt8518.h
@@ -9,11 +9,6 @@
#ifndef __MT8518_H
#define __MT8518_H
-#include <linux/sizes.h>
-
-#define CONFIG_SYS_NONCACHED_MEMORY SZ_1M
-
-
/* DRAM definition */
#define CONFIG_SYS_SDRAM_BASE 0x40000000
#define CONFIG_SYS_SDRAM_SIZE 0x20000000
diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h
index 4e20e1d..69acabf 100644
--- a/include/configs/tegra-common-post.h
+++ b/include/configs/tegra-common-post.h
@@ -7,8 +7,6 @@
#ifndef __TEGRA_COMMON_POST_H
#define __TEGRA_COMMON_POST_H
-#define CONFIG_SYS_NONCACHED_MEMORY (1 << 20) /* 1 MiB */
-
#if CONFIG_IS_ENABLED(CMD_USB)
# define BOOT_TARGET_USB(func) func(USB, usb, 0)
#else