Convert CONFIG_ARMV7_SECURE_BASE et al to Kconfig
authorTom Rini <trini@konsulko.com>
Fri, 11 Mar 2022 14:11:56 +0000 (09:11 -0500)
committerTom Rini <trini@konsulko.com>
Fri, 18 Mar 2022 12:43:25 +0000 (08:43 -0400)
This converts the following to Kconfig:
   CONFIG_ARMV7_SECURE_BASE
   CONFIG_ARMV7_SECURE_MAX_SIZE
   CONFIG_ARMV7_SECURE_RESERVE_SIZE

Signed-off-by: Tom Rini <trini@konsulko.com>
24 files changed:
arch/arm/cpu/armv7/Kconfig
configs/Bananapi_M2_Ultra_defconfig
configs/LicheePi_Zero_defconfig
configs/bananapi_m2_berry_defconfig
configs/mx7ulp_evk_defconfig
configs/mx7ulp_evk_plugin_defconfig
configs/pg_wcom_expu1_defconfig
configs/pg_wcom_expu1_update_defconfig
configs/pg_wcom_seli8_defconfig
configs/pg_wcom_seli8_update_defconfig
configs/pinecube_defconfig
include/configs/apalis-tk1.h
include/configs/cei-tk1-som.h
include/configs/jetson-tk1.h
include/configs/ls1021aiot.h
include/configs/ls1021aqds.h
include/configs/ls1021atsn.h
include/configs/ls1021atwr.h
include/configs/mx7_common.h
include/configs/mx7ulp_com.h
include/configs/stm32mp15_common.h
include/configs/sun6i.h
include/configs/sun7i.h
include/configs/sun8i.h

index 2eeef3cba96c6c5f41f0836e0167aa1ed800101b..f1e4e26b8f00f03f308755535bbf9d2ac09e41a5 100644 (file)
@@ -27,6 +27,37 @@ config ARMV7_BOOT_SEC_DEFAULT
        This can be overridden at run-time by setting the bootm_boot_mode env.
        variable to "sec" or "nonsec".
 
+config HAS_ARMV7_SECURE_BASE
+       bool "Enable support for a ahardware secure memory area"
+       default y if ARCH_LS1021A || ARCH_MX7 || ARCH_MX7ULP || ARCH_STM32MP \
+                       || MACH_SUN6I || MACH_SUN7I || MACH_SUN8I || TEGRA124
+
+config ARMV7_SECURE_BASE
+       hex "Base address for secure mode memory"
+       depends on HAS_ARMV7_SECURE_BASE
+       default 0xfff00000 if TEGRA124
+       default 0x2ffc0000 if ARCH_STM32MP
+       default 0x2f000000 if ARCH_MX7ULP
+       default 0x10010000 if ARCH_LS1021A
+       default 0x00900000 if ARCH_MX7
+       default 0x00044000 if MACH_SUN8I
+       default 0x00020000 if MACH_SUN6I || MACH_SUN7I
+
+config ARMV7_SECURE_RESERVE_SIZE
+       hex
+       depends on TEGRA124 && HAS_ARMV7_SECURE_BASE
+       default 0x100000
+       help
+         Reserve top 1M for secure RAM
+
+config ARMV7_SECURE_MAX_SIZE
+       hex
+       depends on ARMV7_SECURE_BASE && ARCH_STM32MP || MACH_SUN6I \
+                       || MACH_SUN7I || MACH_SUN8I
+       default 0xbc00 if MACH_SUN8I && !MACH_SUN8I_H3
+       default 0x3c00 if MACH_SUN8I && MACH_SUN8I_H3
+       default 0x10000
+
 config ARMV7_VIRT
        bool "Enable support for hardware virtualization" if EXPERT
        depends on CPU_V7_HAS_VIRT && ARMV7_NONSEC
index 8917af3c93ac7d4367f58930d517b70f5ea28405..a66aef0755ad285e481a52d9a1ae69dc4b68917a 100644 (file)
@@ -9,6 +9,7 @@ CONFIG_MMC0_CD_PIN="PH13"
 CONFIG_MMC_SUNXI_SLOT_EXTRA=2
 CONFIG_USB1_VBUS_PIN="PH23"
 CONFIG_USB2_VBUS_PIN="PH23"
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL_I2C=y
index b50bae9bbdea555c8f40e9b9270dd5be855d423e..9815348badd113a96374af03756c7a385c61cca1 100644 (file)
@@ -4,4 +4,5 @@ CONFIG_DEFAULT_DEVICE_TREE="sun8i-v3s-licheepi-zero"
 CONFIG_SPL=y
 CONFIG_MACH_SUN8I_V3S=y
 CONFIG_DRAM_CLK=360
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 # CONFIG_NETDEVICES is not set
index 2d65d0fd1989659cdc565d7fda1130c76aee8227..a35fcdb64e8ddae7d02d81ba5be21579b4cee3e1 100644 (file)
@@ -6,6 +6,7 @@ CONFIG_MACH_SUN8I_R40=y
 CONFIG_DRAM_CLK=576
 CONFIG_MMC0_CD_PIN="PH13"
 CONFIG_USB1_VBUS_PIN="PH23"
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
 CONFIG_SPL_I2C=y
index 4f641471acbcf51d349fb1a8632c1c480b4fa058..192e9df2e49bc31baed4d997d4abc68b99696ccb 100644 (file)
@@ -10,6 +10,7 @@ CONFIG_ENV_OFFSET=0xC0000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="imx7ulp-evk"
 CONFIG_TARGET_MX7ULP_EVK=y
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_SYS_LOAD_ADDR=0x60800000
 CONFIG_OF_BOARD_SETUP=y
 CONFIG_USE_BOOTCOMMAND=y
index 0f8e9e886ed0dbb460414ac2b1b7acf324040eb9..a152c6e93a8ad8f83c99bb79fc1dbd9997fca9e0 100644 (file)
@@ -10,6 +10,7 @@ CONFIG_ENV_OFFSET=0xC0000
 CONFIG_DM_GPIO=y
 CONFIG_DEFAULT_DEVICE_TREE="imx7ulp-evk"
 CONFIG_TARGET_MX7ULP_EVK=y
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_SYS_LOAD_ADDR=0x60800000
 CONFIG_USE_BOOTCOMMAND=y
 CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if run loadbootscript; then run bootscript; else if run loadimage; then run mmcboot; fi; fi; fi"
index 648cb2c84032bb60e23733d34e45b67d31732420..04b8d26c8e89c619ed08b0f144b5c8350df55b31 100644 (file)
@@ -21,6 +21,7 @@ CONFIG_DEFAULT_DEVICE_TREE="ls1021a-pg-wcom-expu1"
 CONFIG_BOOTCOUNT_BOOTLIMIT=3
 CONFIG_SYS_BOOTCOUNT_ADDR=0x70000020
 CONFIG_SYS_CLK_FREQ=66666666
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_SYS_LOAD_ADDR=0x82000000
index f4895553d2c541d6909ecb368fc1ef82dc4f6b8c..351bc838035449f26082272336297172e30ebd4f 100644 (file)
@@ -19,6 +19,7 @@ CONFIG_SYS_I2C_MXC_I2C3=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-pg-wcom-expu1"
 CONFIG_BOOTCOUNT_BOOTLIMIT=3
 CONFIG_SYS_BOOTCOUNT_ADDR=0x70000020
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_SYS_LOAD_ADDR=0x82000000
index bca016314e729dd1adf031463cd7f943127cbb5d..8e54fa5d578e569a0d3b3213f3f9b6b5680bcc6e 100644 (file)
@@ -21,6 +21,7 @@ CONFIG_DEFAULT_DEVICE_TREE="ls1021a-pg-wcom-seli8"
 CONFIG_BOOTCOUNT_BOOTLIMIT=3
 CONFIG_SYS_BOOTCOUNT_ADDR=0x70000020
 CONFIG_SYS_CLK_FREQ=66666666
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_SYS_LOAD_ADDR=0x82000000
index af1812b67d77bd5ca63e381b729e7ae4f61afeae..1ca468afa60edea787b507d9edc9cb9f1d7805f6 100644 (file)
@@ -19,6 +19,7 @@ CONFIG_SYS_I2C_MXC_I2C3=y
 CONFIG_DEFAULT_DEVICE_TREE="ls1021a-pg-wcom-seli8"
 CONFIG_BOOTCOUNT_BOOTLIMIT=3
 CONFIG_SYS_BOOTCOUNT_ADDR=0x70000020
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_AHCI=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_SYS_LOAD_ADDR=0x82000000
index e779663a0dd4330c17d302e60d312ba40a66f3ec..28e347b4d952307c0a21af3ac6d8c15e1366a787 100644 (file)
@@ -7,6 +7,7 @@ CONFIG_SUNXI_DRAM_DDR3_1333=y
 CONFIG_DRAM_CLK=504
 CONFIG_DRAM_ODT_EN=y
 CONFIG_I2C0_ENABLE=y
+# CONFIG_HAS_ARMV7_SECURE_BASE is not set
 CONFIG_SPL_I2C=y
 CONFIG_SPL_SYS_I2C_LEGACY=y
 CONFIG_SYS_I2C_MVTWSI=y
index 57192649ecc9871034d8802a079d928c370204b1..da935f77b9a624736ce6e8fe85170578aa9b2e3b 100644 (file)
 #include "tegra-common-usb-gadget.h"
 #include "tegra-common-post.h"
 
-/* Reserve top 1M for secure RAM */
-#define CONFIG_ARMV7_SECURE_BASE               0xfff00000
-#define CONFIG_ARMV7_SECURE_RESERVE_SIZE       0x00100000
-
 #endif /* __CONFIG_H */
index 2c406d31866606b643b1f507edb05ec94e251f0d..1cc86091022bba9a0cdc45f1fc13678e1b7e2607 100644 (file)
@@ -28,8 +28,4 @@
 #include "tegra-common-usb-gadget.h"
 #include "tegra-common-post.h"
 
-/* Reserve top 1M for secure RAM */
-#define CONFIG_ARMV7_SECURE_BASE               0xfff00000
-#define CONFIG_ARMV7_SECURE_RESERVE_SIZE       0x00100000
-
 #endif /* __CONFIG_H */
index a3c385b6e22ae1372f7c661c3f6534a1b1a4f875..b4c42fd37229e113d85260ca06d3018c5dbce63c 100644 (file)
@@ -26,8 +26,4 @@
 #include "tegra-common-usb-gadget.h"
 #include "tegra-common-post.h"
 
-/* Reserve top 1M for secure RAM */
-#define CONFIG_ARMV7_SECURE_BASE               0xfff00000
-#define CONFIG_ARMV7_SECURE_RESERVE_SIZE       0x00100000
-
 #endif /* __CONFIG_H */
index 4e5228aa219b7f04865ae3b18c9483c25e70ce05..810eee895b8056e80e556a7a50e342e1fabe2ff3 100644 (file)
@@ -7,8 +7,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_ARMV7_SECURE_BASE OCRAM_BASE_S_ADDR
-
 #define CONFIG_SYS_INIT_RAM_ADDR       OCRAM_BASE_ADDR
 #define CONFIG_SYS_INIT_RAM_SIZE       OCRAM_SIZE
 
index b6501e87b41fe7fb9ea0f624443d68fd0e2292f3..27a074c745bdc85f0234ac519d42f3722f89c516 100644 (file)
@@ -7,8 +7,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_ARMV7_SECURE_BASE       OCRAM_BASE_S_ADDR
-
 #define CONFIG_DEEP_SLEEP
 
 #define CONFIG_SYS_INIT_RAM_ADDR       OCRAM_BASE_ADDR
index 824078dd27de73e21bbfe7d69bb5ed412ba07a6f..3742203278358b0b136f87ef579a14acfa23bacd 100644 (file)
@@ -6,8 +6,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_ARMV7_SECURE_BASE       OCRAM_BASE_S_ADDR
-
 #define CONFIG_DEEP_SLEEP
 
 #define CONFIG_SYS_INIT_RAM_ADDR       OCRAM_BASE_ADDR
index fada8aa61db8d1e44df313e59e690fcddae10bba..a2e4c80bd9a0f7ea3f5988d157aa80d2493f521b 100644 (file)
@@ -7,8 +7,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-#define CONFIG_ARMV7_SECURE_BASE       OCRAM_BASE_S_ADDR
-
 #define CONFIG_DEEP_SLEEP
 
 #define CONFIG_SYS_INIT_RAM_ADDR       OCRAM_BASE_ADDR
index 2e976df6985f233e03b927b0f5b45cf40eb54ac5..76c374af253226daeb7f573a4a9a3afc97843d98 100644 (file)
@@ -31,8 +31,6 @@
 
 /* MMC */
 
-#define CONFIG_ARMV7_SECURE_BASE       0x00900000
-
 /*
  * If we have defined the OPTEE ram size and not OPTEE it means that we were
  * launched by OPTEE, because of that we shall skip all the low level
index 319de9b01429efa4d6779031e9ad74f86fc1b902..d3ba1449279a684107d6533a26614adfb78d919d 100644 (file)
@@ -70,7 +70,5 @@
 #define CONFIG_SYS_INIT_SP_ADDR \
        (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
 
-#define CONFIG_ARMV7_SECURE_BASE       0x2F000000
-
 #define CONFIG_MXC_USB_PORTSC          (PORT_PTS_UTMI | PORT_PTS_PTW)
 #endif /* __CONFIG_H */
index 175d546a158c68d2c396e35eda4b1dbe648a0047..6b40cdb01779f69d9a4f761bd2534a9e246f001c 100644 (file)
 #include <linux/sizes.h>
 #include <asm/arch/stm32.h>
 
-#ifdef CONFIG_ARMV7_PSCI
-/* PSCI support */
-#define CONFIG_ARMV7_SECURE_BASE               STM32_SYSRAM_BASE
-#define CONFIG_ARMV7_SECURE_MAX_SIZE           STM32_SYSRAM_SIZE
-#endif
-
 /*
  * Configuration of the external SRAM memory used by U-Boot
  */
index 1e490daac17df526b0560739ca06593836e8ca05..0b1fedda10812c62f6eb42adafb31cda3b689d38 100644 (file)
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-/*
- * A31 specific configuration
- */
-
-#define CONFIG_ARMV7_SECURE_BASE       SUNXI_SRAM_B_BASE
-#define CONFIG_ARMV7_SECURE_MAX_SIZE    (64 * 1024) /* 64 KB */
-
 /*
  * Include common sunxi configuration where most the settings are
  */
index 803a7514cc0691ff0a15b2d0f733f9907ceeb66f..bc2779fa26f8c4592eb262fda3fa2bc01f724249 100644 (file)
@@ -8,13 +8,6 @@
 #ifndef __CONFIG_H
 #define __CONFIG_H
 
-/*
- * A20 specific configuration
- */
-
-#define CONFIG_ARMV7_SECURE_BASE       SUNXI_SRAM_B_BASE
-#define CONFIG_ARMV7_SECURE_MAX_SIZE   (64 * 1024) /* 64 KB */
-
 /*
  * Include common sunxi configuration where most the settings are
  */
index 5636356366242d7acd4921bbe8045b8a885696f8..106139d0904ae9d73a0b8a8ea0510f53fb154f3f 100644 (file)
 
 #include <asm/arch/cpu.h>
 
-#ifdef SUNXI_SRAM_A2_SIZE
-/*
- * If the SoC has enough SRAM A2, use that for the secure monitor.
- * Skip the first 16 KiB of SRAM A2, which is not usable, as only certain bytes
- * are writable. Reserve the last 17 KiB for the resume shim and SCP firmware.
- */
-#define CONFIG_ARMV7_SECURE_BASE       (SUNXI_SRAM_A2_BASE + 16 * 1024)
-#define CONFIG_ARMV7_SECURE_MAX_SIZE   (SUNXI_SRAM_A2_SIZE - 33 * 1024)
-#endif
-
 /*
  * Include common sunxi configuration where most the settings are
  */