stm32mp1: add trusted boot with TF-A
[oweals/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_DRIVERS_MISC_SUPPORT
21         imply SPL_LIBDISK_SUPPORT
22
23 config SYS_SOC
24         default "stm32mp"
25
26 config TARGET_STM32MP1
27         bool "Support stm32mp1xx"
28         select ARCH_SUPPORT_PSCI if !STM32MP1_TRUSTED
29         select CPU_V7A
30         select CPU_V7_HAS_NONSEC if !STM32MP1_TRUSTED
31         select CPU_V7_HAS_VIRT
32         select PINCTRL_STM32
33         select STM32_RCC
34         select STM32_RESET
35         select SYS_ARCH_TIMER
36         imply SYSRESET_PSCI if STM32MP1_TRUSTED
37         imply SYSRESET_SYSCON if !STM32MP1_TRUSTED
38         help
39                 target STMicroelectronics SOC STM32MP1 family
40                 STMicroelectronics MPU with core ARMv7
41
42 config STM32MP1_TRUSTED
43         bool "Support trusted boot with TF-A"
44         default y if !SPL
45         select ARM_SMCCC
46         help
47                 Say Y here to enable boot with TF-A
48                 Trusted boot chain is :
49                 BootRom => TF-A.stm32 (clock & DDR) => U-Boot.stm32
50                 TF-A monitor provides proprietary smc to manage secure devices
51
52 config SYS_TEXT_BASE
53         prompt "U-Boot base address"
54         default 0xC0100000
55         help
56                 configure the U-Boot base address
57                 when DDR driver is used:
58                   DDR + 1MB (0xC0100000)
59
60 config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_MMC2
61         hex "Partition on MMC2 to use to load U-Boot from"
62         depends on SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION
63         default 1
64         help
65           Partition on the second MMC to load U-Boot from when the MMC is being
66           used in raw mode
67
68 source "board/st/stm32mp1/Kconfig"
69
70 # currently activated for debug / should be deactivated for real product
71 if DEBUG_UART
72
73 config DEBUG_UART_BOARD_INIT
74         default y
75
76 # debug on UART4 by default
77 config DEBUG_UART_BASE
78         default 0x40010000
79
80 # clock source is HSI on reset
81 config DEBUG_UART_CLOCK
82         default 64000000
83 endif
84
85 endif