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