blob: e4d621dee884a32de3c04703cc803209217da4db [file] [log] [blame]
Patrick Delaunay2514c2d2018-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 Delaunaybc061342018-07-09 15:17:21 +02008 select SPL_DRIVERS_MISC_SUPPORT
Patrick Delaunay2514c2d2018-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 Tanbfc6bae2018-06-14 18:45:19 +080017 select SPL_DM_RESET
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010018 select SPL_SERIAL_SUPPORT
Patrick Delaunay49ef8e12019-07-30 19:16:36 +020019 select SPL_SPI_LOAD
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010020 select SPL_SYSCON
Patrick Delaunay9cd8b9f2019-07-30 19:16:33 +020021 select SPL_WATCHDOG_SUPPORT if WATCHDOG
Patrick Delaunay27a986d2019-04-18 17:32:47 +020022 imply BOOTSTAGE_STASH if SPL_BOOTSTAGE
23 imply SPL_BOOTSTAGE if BOOTSTAGE
Patrick Delaunay006ea182019-02-27 17:01:14 +010024 imply SPL_DISPLAY_PRINT
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010025 imply SPL_LIBDISK_SUPPORT
26
27config SYS_SOC
28 default "stm32mp"
29
Patrick Delaunayef84ddd2019-04-18 17:32:36 +020030config SYS_MALLOC_LEN
31 default 0x2000000
32
Patrick Delaunay579a3e72019-04-18 17:32:37 +020033config ENV_SIZE
Patrice Chotard1538e1a2019-05-07 18:40:47 +020034 default 0x2000
Patrick Delaunay579a3e72019-04-18 17:32:37 +020035
Patrick Delaunay84625482020-01-13 15:17:42 +010036config STM32MP15x
37 bool "Support STMicroelectronics STM32MP15x Soc"
Patrick Delaunayabf26782019-02-12 11:44:39 +010038 select ARCH_SUPPORT_PSCI if !STM32MP1_TRUSTED
Lokesh Vutlaacf15002018-04-26 18:21:26 +053039 select CPU_V7A
Patrick Delaunayabf26782019-02-12 11:44:39 +010040 select CPU_V7_HAS_NONSEC if !STM32MP1_TRUSTED
Patrick Delaunay41c79772018-04-16 10:13:24 +020041 select CPU_V7_HAS_VIRT
Patrick Delaunaye81f8d12019-07-02 13:26:07 +020042 select OF_BOARD_SETUP
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010043 select PINCTRL_STM32
Patrick Delaunayd090cba2018-07-09 15:17:20 +020044 select STM32_RCC
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010045 select STM32_RESET
Patrick Delaunay16a07222019-07-30 19:16:25 +020046 select STM32_SERIAL
Andre Przywara7842b6a2018-04-12 04:24:46 +030047 select SYS_ARCH_TIMER
Patrick Delaunay84625482020-01-13 15:17:42 +010048 imply SYSRESET_PSCI if STM32MP1_TRUSTED
49 imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
50 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 Delaunay34199822019-04-18 17:32:45 +020064 imply BOOTCOUNT_LIMIT
65 imply CMD_BOOTCOUNT
Patrick Delaunayeee15802019-12-03 09:38:58 +010066 imply CMD_CLS if CMD_BMP
Patrick Delaunaya67d9582019-07-30 19:16:26 +020067 imply DISABLE_CONSOLE
Patrick Delaunay67551982019-07-30 19:16:23 +020068 imply PRE_CONSOLE_BUFFER
Patrick Delaunayc50c9282019-07-30 19:16:22 +020069 imply SILENT_CONSOLE
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010070 help
Patrick Delaunay84625482020-01-13 15:17:42 +010071 target the STMicroelectronics board with SOC STM32MP15x
72 managed by board/st/stm32mp1:
73 Evalulation board (EV1) or Discovery board (DK1 and DK2).
74 The difference between board are managed with devicetree
75
Marek Vasut19953732020-01-24 18:39:16 +010076config TARGET_DH_STM32MP1_PDK2
77 bool "DH STM32MP1 PDK2"
78 select STM32MP15x
79 imply BOOTCOUNT_LIMIT
80 imply CMD_BOOTCOUNT
81 help
82 Target the DH PDK2 development kit with STM32MP15x SoM.
83
Patrick Delaunay84625482020-01-13 15:17:42 +010084endchoice
Patrick Delaunay2514c2d2018-03-12 10:46:10 +010085
Patrick Delaunayabf26782019-02-12 11:44:39 +010086config STM32MP1_TRUSTED
87 bool "Support trusted boot with TF-A"
88 default y if !SPL
89 select ARM_SMCCC
90 help
91 Say Y here to enable boot with TF-A
92 Trusted boot chain is :
93 BootRom => TF-A.stm32 (clock & DDR) => U-Boot.stm32
Patrick Delaunay152c84b2019-07-02 13:26:06 +020094 TF-A monitor provides proprietary SMC to manage secure devices
95
96config STM32MP1_OPTEE
97 bool "Support trusted boot with TF-A and OP-TEE"
98 depends on STM32MP1_TRUSTED
99 default n
100 help
101 Say Y here to enable boot with TF-A and OP-TEE
102 Trusted boot chain is :
103 BootRom => TF-A.stm32 (clock & DDR) => OP-TEE => U-Boot.stm32
104 OP-TEE monitor provides ST SMC to access to secure resources
Patrick Delaunayabf26782019-02-12 11:44:39 +0100105
Patrick Delaunay2514c2d2018-03-12 10:46:10 +0100106config SYS_TEXT_BASE
Patrick Delaunay2514c2d2018-03-12 10:46:10 +0100107 default 0xC0100000
Patrick Delaunay2514c2d2018-03-12 10:46:10 +0100108
Patrick Delaunay45ccdb62019-02-27 17:01:15 +0100109config NR_DRAM_BANKS
110 default 1
111
Patrick Delaunay11dfd1a2018-03-20 10:54:54 +0100112config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_MMC2
113 hex "Partition on MMC2 to use to load U-Boot from"
114 depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
115 default 1
116 help
117 Partition on the second MMC to load U-Boot from when the MMC is being
118 used in raw mode
119
Patrick Delaunayc60f3b32019-07-05 17:20:15 +0200120config STM32_ETZPC
121 bool "STM32 Extended TrustZone Protection"
122 depends on TARGET_STM32MP1
123 default y
124 help
125 Say y to enable STM32 Extended TrustZone Protection
126
Patrick Delaunayf4cb5d62019-07-05 17:20:17 +0200127config CMD_STM32KEY
128 bool "command stm32key to fuse public key hash"
129 default y
130 depends on CMD_FUSE
131 help
132 fuse public key hash in corresponding fuse used to authenticate
133 binary.
134
Patrick Delaunay67551982019-07-30 19:16:23 +0200135
136config PRE_CON_BUF_ADDR
137 default 0xC02FF000
138
139config PRE_CON_BUF_SZ
140 default 4096
141
Patrick Delaunay27a986d2019-04-18 17:32:47 +0200142config BOOTSTAGE_STASH_ADDR
143 default 0xC3000000
144
Patrick Delaunay34199822019-04-18 17:32:45 +0200145if BOOTCOUNT_LIMIT
146config SYS_BOOTCOUNT_SINGLEWORD
147 default y
148
149# TAMP_BOOTCOUNT = TAMP_BACKUP_REGISTER(21)
150config SYS_BOOTCOUNT_ADDR
151 default 0x5C00A154
152endif
153
Patrick Delaunay320d2662018-05-17 14:50:46 +0200154if DEBUG_UART
155
156config DEBUG_UART_BOARD_INIT
157 default y
158
159# debug on UART4 by default
160config DEBUG_UART_BASE
161 default 0x40010000
162
163# clock source is HSI on reset
164config DEBUG_UART_CLOCK
165 default 64000000
166endif
167
Patrick Delaunay45ccdb62019-02-27 17:01:15 +0100168source "board/st/stm32mp1/Kconfig"
Marek Vasut19953732020-01-24 18:39:16 +0100169source "board/dhelectronics/dh_stm32mp1/Kconfig"
Patrick Delaunay45ccdb62019-02-27 17:01:15 +0100170
Patrick Delaunay2514c2d2018-03-12 10:46:10 +0100171endif