summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-stm32mp/Kconfig
blob: f538d7cb838ead8d447714d4622f54755855e531 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
if ARCH_STM32MP

config SPL
	select SPL_BOARD_INIT
	select SPL_CLK
	select SPL_DM
	select SPL_DM_SEQ_ALIAS
	select SPL_DRIVERS_MISC_SUPPORT
	select SPL_FRAMEWORK
	select SPL_GPIO_SUPPORT
	select SPL_LIBCOMMON_SUPPORT
	select SPL_LIBGENERIC_SUPPORT
	select SPL_OF_CONTROL
	select SPL_OF_TRANSLATE
	select SPL_PINCTRL
	select SPL_REGMAP
	select SPL_DM_RESET
	select SPL_SERIAL_SUPPORT
	select SPL_SPI_LOAD
	select SPL_SYSCON
	select SPL_WATCHDOG_SUPPORT if WATCHDOG
	imply BOOTSTAGE_STASH if SPL_BOOTSTAGE
	imply SPL_BOOTSTAGE if BOOTSTAGE
	imply SPL_DISPLAY_PRINT
	imply SPL_LIBDISK_SUPPORT

config SYS_SOC
	default "stm32mp"

config SYS_MALLOC_LEN
	default 0x2000000

config ENV_SIZE
	default 0x2000

config STM32MP15x
	bool "Support STMicroelectronics STM32MP15x Soc"
	select ARCH_SUPPORT_PSCI if !TFABOOT
	select ARM_SMCCC if TFABOOT
	select CPU_V7A
	select CPU_V7_HAS_NONSEC if !TFABOOT
	select CPU_V7_HAS_VIRT
	select OF_BOARD_SETUP
	select PINCTRL_STM32
	select STM32_RCC
	select STM32_RESET
	select STM32_SERIAL
	select SYS_ARCH_TIMER
	imply CMD_NVEDIT_INFO
	imply SYSRESET_PSCI if TFABOOT
	imply SYSRESET_SYSCON if !TFABOOT
	help
		support of STMicroelectronics SOC STM32MP15x family
		STM32MP157, STM32MP153 or STM32MP151
		STMicroelectronics MPU with core ARMv7
		dual core A7 for STM32MP157/3, monocore for STM32MP151
		target all the STMicroelectronics board with SOC STM32MP1 family

choice
	prompt "STM32MP15x board select"
	optional

config TARGET_ST_STM32MP15x
	bool "STMicroelectronics STM32MP15x boards"
	select STM32MP15x
	imply BOOTCOUNT_LIMIT
	imply BOOTSTAGE
	imply CMD_BOOTCOUNT
	imply CMD_BOOTSTAGE
	imply CMD_CLS if CMD_BMP
	imply DISABLE_CONSOLE
	imply PRE_CONSOLE_BUFFER
	imply SILENT_CONSOLE
	help
		target the STMicroelectronics board with SOC STM32MP15x
		managed by board/st/stm32mp1:
		Evalulation board (EV1) or Discovery board (DK1 and DK2).
		The difference between board are managed with devicetree

config TARGET_DH_STM32MP1_PDK2
	bool "DH STM32MP1 PDK2"
	select STM32MP15x
	imply BOOTCOUNT_LIMIT
	imply CMD_BOOTCOUNT
	help
		Target the DH PDK2 development kit with STM32MP15x SoM.

endchoice

config SYS_TEXT_BASE
	default 0xC0100000

config NR_DRAM_BANKS
	default 1

config DDR_CACHEABLE_SIZE
	hex "Size of the DDR marked cacheable in pre-reloc stage"
	default 0x10000000 if TFABOOT
	default 0x40000000
	help
		Define the size of the DDR marked as cacheable in U-Boot
		pre-reloc stage.
		This option can be useful to avoid speculatif access
		to secured area of DDR used by TF-A or OP-TEE before U-Boot
		initialization.
		The areas marked "no-map" in device tree should be located
		before this limit: STM32_DDR_BASE + DDR_CACHEABLE_SIZE.

config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_MMC2
	hex "Partition on MMC2 to use to load U-Boot from"
	depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
	default 1
	help
	  Partition on the second MMC to load U-Boot from when the MMC is being
	  used in raw mode

config STM32_ETZPC
	bool "STM32 Extended TrustZone Protection"
	depends on STM32MP15x
	default y
	help
	  Say y to enable STM32 Extended TrustZone Protection

config CMD_STM32PROG
	bool "command stm32prog for STM32CudeProgrammer"
	select DFU
	select DFU_RAM
	select DFU_VIRT
	select PARTITION_TYPE_GUID
	imply CMD_GPT if MMC
	imply CMD_MTD if MTD
	imply DFU_MMC if MMC
	imply DFU_MTD if MTD
	help
		activate a specific command stm32prog for STM32MP soc family
		witch update the device with the tools STM32CubeProgrammer,
		using UART with STM32 protocol or USB with DFU protocol
		NB: access to not volatile memory (NOR/NAND/SD/eMMC) is based
		    on U-Boot DFU framework

config CMD_STM32KEY
	bool "command stm32key to fuse public key hash"
	default y
	help
		fuse public key hash in corresponding fuse used to authenticate
		binary.

config PRE_CON_BUF_ADDR
	default 0xC02FF000

config PRE_CON_BUF_SZ
	default 4096

config BOOTSTAGE_STASH_ADDR
	default 0xC3000000

if BOOTCOUNT_LIMIT
config SYS_BOOTCOUNT_SINGLEWORD
	default y

# TAMP_BOOTCOUNT = TAMP_BACKUP_REGISTER(21)
config SYS_BOOTCOUNT_ADDR
	default 0x5C00A154
endif

if DEBUG_UART

config DEBUG_UART_BOARD_INIT
	default y

# debug on UART4 by default
config DEBUG_UART_BASE
	default 0x40010000

# clock source is HSI on reset
config DEBUG_UART_CLOCK
	default 64000000
endif

source "board/st/stm32mp1/Kconfig"
source "board/dhelectronics/dh_stm32mp1/Kconfig"

endif