blob: 0de9b3ea12cc8a6fbb315b2aab6a5d26767577ed [file] [log] [blame]
Patrick Delaunay85b53972018-03-12 10:46:10 +01001if ARCH_STM32MP
2
3config SPL
4 select SPL_BOARD_INIT
5 select SPL_CLK
6 select SPL_DM
7 select SPL_DM_SEQ_ALIAS
Patrick Delaunay636279a2018-07-09 15:17:21 +02008 select SPL_DRIVERS_MISC_SUPPORT
Patrick Delaunay85b53972018-03-12 10:46:10 +01009 select SPL_FRAMEWORK
10 select SPL_GPIO_SUPPORT
11 select SPL_LIBCOMMON_SUPPORT
12 select SPL_LIBGENERIC_SUPPORT
13 select SPL_OF_CONTROL
14 select SPL_OF_TRANSLATE
15 select SPL_PINCTRL
16 select SPL_REGMAP
Ley Foon Tan9caf7122018-06-14 18:45:19 +080017 select SPL_DM_RESET
Patrick Delaunay85b53972018-03-12 10:46:10 +010018 select SPL_SERIAL_SUPPORT
19 select SPL_SYSCON
Patrice Chotard473b2442019-04-30 17:26:22 +020020 select SPL_WATCHDOG_SUPPORT
Patrick Delaunayf8600202019-04-18 17:32:47 +020021 imply BOOTSTAGE_STASH if SPL_BOOTSTAGE
22 imply SPL_BOOTSTAGE if BOOTSTAGE
Patrick Delaunayaa4e6852019-02-27 17:01:14 +010023 imply SPL_DISPLAY_PRINT
Patrick Delaunay85b53972018-03-12 10:46:10 +010024 imply SPL_LIBDISK_SUPPORT
25
26config SYS_SOC
27 default "stm32mp"
28
Patrick Delaunay7e517c62019-04-18 17:32:36 +020029config SYS_MALLOC_LEN
30 default 0x2000000
31
Patrick Delaunay088b6762019-04-18 17:32:37 +020032config ENV_SIZE
Patrice Chotardd83bba42019-05-07 18:40:47 +020033 default 0x2000
Patrick Delaunay088b6762019-04-18 17:32:37 +020034
Patrick Delaunay85b53972018-03-12 10:46:10 +010035config TARGET_STM32MP1
36 bool "Support stm32mp1xx"
Patrick Delaunay5d061412019-02-12 11:44:39 +010037 select ARCH_SUPPORT_PSCI if !STM32MP1_TRUSTED
Lokesh Vutla81b1a672018-04-26 18:21:26 +053038 select CPU_V7A
Patrick Delaunay5d061412019-02-12 11:44:39 +010039 select CPU_V7_HAS_NONSEC if !STM32MP1_TRUSTED
Patrick Delaunaye0207372018-04-16 10:13:24 +020040 select CPU_V7_HAS_VIRT
Patrick Delaunayde98cbf2019-07-02 13:26:07 +020041 select OF_BOARD_SETUP
Patrick Delaunay85b53972018-03-12 10:46:10 +010042 select PINCTRL_STM32
Patrick Delaunayb139a5b2018-07-09 15:17:20 +020043 select STM32_RCC
Patrick Delaunay85b53972018-03-12 10:46:10 +010044 select STM32_RESET
Patrick Delaunay4368e562019-07-30 19:16:25 +020045 select STM32_SERIAL
Andre Przywara7b169252018-04-12 04:24:46 +030046 select SYS_ARCH_TIMER
Patrick Delaunay9c07f4a2019-04-18 17:32:45 +020047 imply BOOTCOUNT_LIMIT
Patrick Delaunayf8600202019-04-18 17:32:47 +020048 imply BOOTSTAGE
Patrick Delaunay9c07f4a2019-04-18 17:32:45 +020049 imply CMD_BOOTCOUNT
Patrick Delaunayf8600202019-04-18 17:32:47 +020050 imply CMD_BOOTSTAGE
Patrick Delaunayfcb49912019-07-30 19:16:23 +020051 imply PRE_CONSOLE_BUFFER
Patrick Delaunay887d9e42019-07-30 19:16:22 +020052 imply SILENT_CONSOLE
Patrick Delaunay5d061412019-02-12 11:44:39 +010053 imply SYSRESET_PSCI if STM32MP1_TRUSTED
54 imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
Patrick Delaunay85b53972018-03-12 10:46:10 +010055 help
56 target STMicroelectronics SOC STM32MP1 family
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +010057 STM32MP157, STM32MP153 or STM32MP151
Patrick Delaunay85b53972018-03-12 10:46:10 +010058 STMicroelectronics MPU with core ARMv7
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +010059 dual core A7 for STM32MP157/3, monocore for STM32MP151
Patrick Delaunay85b53972018-03-12 10:46:10 +010060
Patrick Delaunay5d061412019-02-12 11:44:39 +010061config STM32MP1_TRUSTED
62 bool "Support trusted boot with TF-A"
63 default y if !SPL
64 select ARM_SMCCC
65 help
66 Say Y here to enable boot with TF-A
67 Trusted boot chain is :
68 BootRom => TF-A.stm32 (clock & DDR) => U-Boot.stm32
Patrick Delaunayff215a42019-07-02 13:26:06 +020069 TF-A monitor provides proprietary SMC to manage secure devices
70
71config STM32MP1_OPTEE
72 bool "Support trusted boot with TF-A and OP-TEE"
73 depends on STM32MP1_TRUSTED
74 default n
75 help
76 Say Y here to enable boot with TF-A and OP-TEE
77 Trusted boot chain is :
78 BootRom => TF-A.stm32 (clock & DDR) => OP-TEE => U-Boot.stm32
79 OP-TEE monitor provides ST SMC to access to secure resources
Patrick Delaunay5d061412019-02-12 11:44:39 +010080
Patrick Delaunay85b53972018-03-12 10:46:10 +010081config SYS_TEXT_BASE
82 prompt "U-Boot base address"
83 default 0xC0100000
84 help
85 configure the U-Boot base address
86 when DDR driver is used:
87 DDR + 1MB (0xC0100000)
88
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +010089config NR_DRAM_BANKS
90 default 1
91
Patrick Delaunayfc69c682018-03-20 10:54:54 +010092config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_MMC2
93 hex "Partition on MMC2 to use to load U-Boot from"
94 depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
95 default 1
96 help
97 Partition on the second MMC to load U-Boot from when the MMC is being
98 used in raw mode
99
Patrick Delaunay43f214c2019-07-05 17:20:15 +0200100config STM32_ETZPC
101 bool "STM32 Extended TrustZone Protection"
102 depends on TARGET_STM32MP1
103 default y
104 help
105 Say y to enable STM32 Extended TrustZone Protection
106
Patrick Delaunay109d13f2019-07-05 17:20:17 +0200107config CMD_STM32KEY
108 bool "command stm32key to fuse public key hash"
109 default y
110 depends on CMD_FUSE
111 help
112 fuse public key hash in corresponding fuse used to authenticate
113 binary.
114
Patrick Delaunayfcb49912019-07-30 19:16:23 +0200115
116config PRE_CON_BUF_ADDR
117 default 0xC02FF000
118
119config PRE_CON_BUF_SZ
120 default 4096
121
Patrick Delaunayf8600202019-04-18 17:32:47 +0200122config BOOTSTAGE_STASH_ADDR
123 default 0xC3000000
124
Patrick Delaunay9c07f4a2019-04-18 17:32:45 +0200125if BOOTCOUNT_LIMIT
126config SYS_BOOTCOUNT_SINGLEWORD
127 default y
128
129# TAMP_BOOTCOUNT = TAMP_BACKUP_REGISTER(21)
130config SYS_BOOTCOUNT_ADDR
131 default 0x5C00A154
132endif
133
Patrick Delaunay82168e82018-05-17 14:50:46 +0200134if DEBUG_UART
135
136config DEBUG_UART_BOARD_INIT
137 default y
138
139# debug on UART4 by default
140config DEBUG_UART_BASE
141 default 0x40010000
142
143# clock source is HSI on reset
144config DEBUG_UART_CLOCK
145 default 64000000
146endif
147
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +0100148source "board/st/stm32mp1/Kconfig"
149
Patrick Delaunay85b53972018-03-12 10:46:10 +0100150endif