blob: ea7d57477b5a8aee47de4dc8b27996cec5ca1824 [file] [log] [blame]
Patrick Delaunay85b53972018-03-12 10:46:10 +01001if ARCH_STM32MP
2
3config SPL
Patrick Delaunay85b53972018-03-12 10:46:10 +01004 select SPL_CLK
5 select SPL_DM
6 select SPL_DM_SEQ_ALIAS
Patrick Delaunay636279a2018-07-09 15:17:21 +02007 select SPL_DRIVERS_MISC_SUPPORT
Patrick Delaunay85b53972018-03-12 10:46:10 +01008 select SPL_FRAMEWORK
9 select SPL_GPIO_SUPPORT
10 select SPL_LIBCOMMON_SUPPORT
11 select SPL_LIBGENERIC_SUPPORT
12 select SPL_OF_CONTROL
13 select SPL_OF_TRANSLATE
14 select SPL_PINCTRL
15 select SPL_REGMAP
Ley Foon Tan9caf7122018-06-14 18:45:19 +080016 select SPL_DM_RESET
Patrick Delaunay85b53972018-03-12 10:46:10 +010017 select SPL_SERIAL_SUPPORT
Patrick Delaunayfbe54572019-07-30 19:16:36 +020018 select SPL_SPI_LOAD
Patrick Delaunay85b53972018-03-12 10:46:10 +010019 select SPL_SYSCON
Patrick Delaunay8bbadde2019-07-30 19:16:33 +020020 select SPL_WATCHDOG_SUPPORT if WATCHDOG
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 Delaunay310aa8a2020-01-13 15:17:42 +010035config STM32MP15x
36 bool "Support STMicroelectronics STM32MP15x Soc"
Patrick Delaunayf8fe21d2020-04-01 09:07:33 +020037 select ARCH_SUPPORT_PSCI if !TFABOOT
38 select ARM_SMCCC if TFABOOT
Lokesh Vutla81b1a672018-04-26 18:21:26 +053039 select CPU_V7A
Patrick Delaunayf8fe21d2020-04-01 09:07:33 +020040 select CPU_V7_HAS_NONSEC if !TFABOOT
Patrick Delaunaye0207372018-04-16 10:13:24 +020041 select CPU_V7_HAS_VIRT
Patrick Delaunayde98cbf2019-07-02 13:26:07 +020042 select OF_BOARD_SETUP
Patrick Delaunay85b53972018-03-12 10:46:10 +010043 select PINCTRL_STM32
Patrick Delaunayb139a5b2018-07-09 15:17:20 +020044 select STM32_RCC
Patrick Delaunay85b53972018-03-12 10:46:10 +010045 select STM32_RESET
Patrick Delaunay4368e562019-07-30 19:16:25 +020046 select STM32_SERIAL
Andre Przywara7b169252018-04-12 04:24:46 +030047 select SYS_ARCH_TIMER
Patrick Delaunayf8fe21d2020-04-01 09:07:33 +020048 imply SYSRESET_PSCI if TFABOOT
49 imply SYSRESET_SYSCON if !TFABOOT
Patrick Delaunay310aa8a2020-01-13 15:17:42 +010050 help
51 support of STMicroelectronics SOC STM32MP15x family
52 STM32MP157, STM32MP153 or STM32MP151
53 STMicroelectronics MPU with core ARMv7
54 dual core A7 for STM32MP157/3, monocore for STM32MP151
55 target all the STMicroelectronics board with SOC STM32MP1 family
56
57choice
58 prompt "STM32MP15x board select"
59 optional
60
61config TARGET_ST_STM32MP15x
62 bool "STMicroelectronics STM32MP15x boards"
63 select STM32MP15x
Patrick Delaunay9c07f4a2019-04-18 17:32:45 +020064 imply BOOTCOUNT_LIMIT
Patrick Delaunay66111eb2020-03-10 10:15:03 +010065 imply BOOTSTAGE
Patrick Delaunay9c07f4a2019-04-18 17:32:45 +020066 imply CMD_BOOTCOUNT
Patrick Delaunay66111eb2020-03-10 10:15:03 +010067 imply CMD_BOOTSTAGE
Patrick Delaunayf97beae2019-12-03 09:38:58 +010068 imply CMD_CLS if CMD_BMP
Patrick Delaunay28a46092019-07-30 19:16:26 +020069 imply DISABLE_CONSOLE
Patrick Delaunayfcb49912019-07-30 19:16:23 +020070 imply PRE_CONSOLE_BUFFER
Patrick Delaunay887d9e42019-07-30 19:16:22 +020071 imply SILENT_CONSOLE
Patrick Delaunay85b53972018-03-12 10:46:10 +010072 help
Patrick Delaunay310aa8a2020-01-13 15:17:42 +010073 target the STMicroelectronics board with SOC STM32MP15x
74 managed by board/st/stm32mp1:
75 Evalulation board (EV1) or Discovery board (DK1 and DK2).
76 The difference between board are managed with devicetree
77
Marek Vasut5ff05292020-01-24 18:39:16 +010078config TARGET_DH_STM32MP1_PDK2
79 bool "DH STM32MP1 PDK2"
80 select STM32MP15x
81 imply BOOTCOUNT_LIMIT
82 imply CMD_BOOTCOUNT
83 help
84 Target the DH PDK2 development kit with STM32MP15x SoM.
85
Patrick Delaunay310aa8a2020-01-13 15:17:42 +010086endchoice
Patrick Delaunay85b53972018-03-12 10:46:10 +010087
88config SYS_TEXT_BASE
Patrick Delaunay85b53972018-03-12 10:46:10 +010089 default 0xC0100000
Patrick Delaunay85b53972018-03-12 10:46:10 +010090
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +010091config NR_DRAM_BANKS
92 default 1
93
Patrick Delaunayfc69c682018-03-20 10:54:54 +010094config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_MMC2
95 hex "Partition on MMC2 to use to load U-Boot from"
96 depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
97 default 1
98 help
99 Partition on the second MMC to load U-Boot from when the MMC is being
100 used in raw mode
101
Patrick Delaunay43f214c2019-07-05 17:20:15 +0200102config STM32_ETZPC
103 bool "STM32 Extended TrustZone Protection"
Patrick Delaunay3a6e3872020-03-10 16:05:43 +0100104 depends on STM32MP15x
Patrick Delaunay43f214c2019-07-05 17:20:15 +0200105 default y
106 help
107 Say y to enable STM32 Extended TrustZone Protection
108
Patrick Delaunay7daa91d2020-03-18 09:24:49 +0100109config CMD_STM32PROG
110 bool "command stm32prog for STM32CudeProgrammer"
111 select DFU
112 select DFU_RAM
113 select DFU_VIRT
Patrick Delaunay7aae1e32020-03-18 09:24:51 +0100114 select PARTITION_TYPE_GUID
115 imply CMD_GPT if MMC
Patrick Delaunay6ab74962020-03-18 09:24:54 +0100116 imply CMD_MTD if MTD
Patrick Delaunay7aae1e32020-03-18 09:24:51 +0100117 imply DFU_MMC if MMC
Patrick Delaunay6ab74962020-03-18 09:24:54 +0100118 imply DFU_MTD if MTD
Patrick Delaunay7daa91d2020-03-18 09:24:49 +0100119 help
120 activate a specific command stm32prog for STM32MP soc family
121 witch update the device with the tools STM32CubeProgrammer,
122 using UART with STM32 protocol or USB with DFU protocol
123 NB: access to not volatile memory (NOR/NAND/SD/eMMC) is based
124 on U-Boot DFU framework
125
Patrick Delaunay109d13f2019-07-05 17:20:17 +0200126config CMD_STM32KEY
127 bool "command stm32key to fuse public key hash"
128 default y
Patrick Delaunay109d13f2019-07-05 17:20:17 +0200129 help
130 fuse public key hash in corresponding fuse used to authenticate
131 binary.
132
Patrick Delaunayfcb49912019-07-30 19:16:23 +0200133config PRE_CON_BUF_ADDR
134 default 0xC02FF000
135
136config PRE_CON_BUF_SZ
137 default 4096
138
Patrick Delaunayf8600202019-04-18 17:32:47 +0200139config BOOTSTAGE_STASH_ADDR
140 default 0xC3000000
141
Patrick Delaunay9c07f4a2019-04-18 17:32:45 +0200142if BOOTCOUNT_LIMIT
143config SYS_BOOTCOUNT_SINGLEWORD
144 default y
145
146# TAMP_BOOTCOUNT = TAMP_BACKUP_REGISTER(21)
147config SYS_BOOTCOUNT_ADDR
148 default 0x5C00A154
149endif
150
Patrick Delaunay82168e82018-05-17 14:50:46 +0200151if DEBUG_UART
152
153config DEBUG_UART_BOARD_INIT
154 default y
155
156# debug on UART4 by default
157config DEBUG_UART_BASE
158 default 0x40010000
159
160# clock source is HSI on reset
161config DEBUG_UART_CLOCK
162 default 64000000
163endif
164
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +0100165source "board/st/stm32mp1/Kconfig"
Marek Vasut5ff05292020-01-24 18:39:16 +0100166source "board/dhelectronics/dh_stm32mp1/Kconfig"
Patrick Delaunay6d3cbf32019-02-27 17:01:15 +0100167
Patrick Delaunay85b53972018-03-12 10:46:10 +0100168endif