1if ARCH_STM32MP
2
3config SPL
4 select SPL_BOARD_INIT
5 select SPL_CLK
6 select SPL_DM
7 select SPL_DM_SEQ_ALIAS
8 select SPL_DRIVERS_MISC_SUPPORT
9 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
17 select SPL_DM_RESET
18 select SPL_SERIAL_SUPPORT
19 select SPL_SPI_LOAD
20 select SPL_SYSCON
21 select SPL_WATCHDOG_SUPPORT if WATCHDOG
22 imply BOOTSTAGE_STASH if SPL_BOOTSTAGE
23 imply SPL_BOOTSTAGE if BOOTSTAGE
24 imply SPL_DISPLAY_PRINT
25 imply SPL_LIBDISK_SUPPORT
26
27config SYS_SOC
28 default "stm32mp"
29
30config SYS_MALLOC_LEN
31 default 0x2000000
32
33config ENV_SIZE
34 default 0x2000
35
36config TARGET_STM32MP1
37 bool "Support stm32mp1xx"
38 select ARCH_SUPPORT_PSCI if !STM32MP1_TRUSTED
39 select CPU_V7A
40 select CPU_V7_HAS_NONSEC if !STM32MP1_TRUSTED
41 select CPU_V7_HAS_VIRT
42 select OF_BOARD_SETUP
43 select PINCTRL_STM32
44 select STM32_RCC
45 select STM32_RESET
46 select STM32_SERIAL
47 select SYS_ARCH_TIMER
48 imply BOOTCOUNT_LIMIT
49 imply CMD_BOOTCOUNT
50 imply CMD_CLS if CMD_BMP
51 imply DISABLE_CONSOLE
52 imply PRE_CONSOLE_BUFFER
53 imply SILENT_CONSOLE
54 imply SYSRESET_PSCI if STM32MP1_TRUSTED
55 imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
56 help
57 target STMicroelectronics SOC STM32MP1 family
58 STM32MP157, STM32MP153 or STM32MP151
59 STMicroelectronics MPU with core ARMv7
60 dual core A7 for STM32MP157/3, monocore for STM32MP151
61
62config STM32MP1_TRUSTED
63 bool "Support trusted boot with TF-A"
64 default y if !SPL
65 select ARM_SMCCC
66 help
67 Say Y here to enable boot with TF-A
68 Trusted boot chain is :
69 BootRom => TF-A.stm32 (clock & DDR) => U-Boot.stm32
70 TF-A monitor provides proprietary SMC to manage secure devices
71
72config STM32MP1_OPTEE
73 bool "Support trusted boot with TF-A and OP-TEE"
74 depends on STM32MP1_TRUSTED
75 default n
76 help
77 Say Y here to enable boot with TF-A and OP-TEE
78 Trusted boot chain is :
79 BootRom => TF-A.stm32 (clock & DDR) => OP-TEE => U-Boot.stm32
80 OP-TEE monitor provides ST SMC to access to secure resources
81
82config SYS_TEXT_BASE
83 prompt "U-Boot base address"
84 default 0xC0100000
85 help
86 configure the U-Boot base address
87 when DDR driver is used:
88 DDR + 1MB (0xC0100000)
89
90config NR_DRAM_BANKS
91 default 1
92
93config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_MMC2
94 hex "Partition on MMC2 to use to load U-Boot from"
95 depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
96 default 1
97 help
98 Partition on the second MMC to load U-Boot from when the MMC is being
99 used in raw mode
100
101config STM32_ETZPC
102 bool "STM32 Extended TrustZone Protection"
103 depends on TARGET_STM32MP1
104 default y
105 help
106 Say y to enable STM32 Extended TrustZone Protection
107
108config CMD_STM32KEY
109 bool "command stm32key to fuse public key hash"
110 default y
111 depends on CMD_FUSE
112 help
113 fuse public key hash in corresponding fuse used to authenticate
114 binary.
115
116
117config PRE_CON_BUF_ADDR
118 default 0xC02FF000
119
120config PRE_CON_BUF_SZ
121 default 4096
122
123config BOOTSTAGE_STASH_ADDR
124 default 0xC3000000
125
126if BOOTCOUNT_LIMIT
127config SYS_BOOTCOUNT_SINGLEWORD
128 default y
129
130
131config SYS_BOOTCOUNT_ADDR
132 default 0x5C00A154
133endif
134
135if DEBUG_UART
136
137config DEBUG_UART_BOARD_INIT
138 default y
139
140
141config DEBUG_UART_BASE
142 default 0x40010000
143
144
145config DEBUG_UART_CLOCK
146 default 64000000
147endif
148
149source "board/st/stm32mp1/Kconfig"
150
151endif
152