xref: /openbmc/u-boot/arch/arm/mach-mvebu/Kconfig (revision 403e9cbc)
1if ARCH_MVEBU
2
3config HAVE_MVEBU_EFUSE
4	bool
5	default n
6
7config ARMADA_32BIT
8	bool
9	select CPU_V7
10	select SUPPORT_SPL
11	select SPL_DM
12	select SPL_DM_SEQ_ALIAS
13	select SPL_OF_CONTROL
14	select SPL_SIMPLE_BUS
15	select BOARD_EARLY_INIT_F
16	select ARCH_MISC_INIT
17
18config ARMADA_64BIT
19	bool
20	select ARM64
21
22# ARMv7 SoCs...
23config ARMADA_375
24	bool
25	select ARMADA_32BIT
26
27config ARMADA_38X
28	bool
29	select ARMADA_32BIT
30	select HAVE_MVEBU_EFUSE
31
32config ARMADA_XP
33	bool
34	select ARMADA_32BIT
35	imply ENV_IS_IN_SPI_FLASH
36
37# ARMv8 SoCs...
38config ARMADA_3700
39	bool
40	select ARM64
41
42# Armada 7K and 8K are very similar - use only one Kconfig symbol for both
43config ARMADA_8K
44	bool
45	select ARM64
46
47# Armada PLL frequency (used for NAND clock generation)
48config SYS_MVEBU_PLL_CLOCK
49	int
50	default "2000000000" if ARMADA_XP || ARMADA_3700 || ARMADA_8K
51	default "1000000000" if ARMADA_38X || ARMADA_375
52
53# Armada XP/38x SoC types...
54config MV78230
55	bool
56	select ARMADA_XP
57
58config MV78260
59	bool
60	select ARMADA_XP
61	imply CMD_SATA
62
63config MV78460
64	bool
65	select ARMADA_XP
66
67config 88F6820
68	bool
69	select ARMADA_38X
70
71choice
72	prompt "Armada XP/375/38x/3700/7K/8K board select"
73	optional
74
75config TARGET_CLEARFOG
76	bool "Support ClearFog"
77	select 88F6820
78
79config TARGET_MVEBU_ARMADA_37XX
80	bool "Support Armada 37xx platforms"
81	select ARMADA_3700
82	imply SCSI
83
84config TARGET_DB_88F6720
85	bool "Support DB-88F6720 Armada 375"
86	select ARMADA_375
87
88config TARGET_DB_88F6820_GP
89	bool "Support DB-88F6820-GP"
90	select 88F6820
91
92config TARGET_DB_88F6820_AMC
93	bool "Support DB-88F6820-AMC"
94	select 88F6820
95
96config TARGET_TURRIS_OMNIA
97	bool "Support Turris Omnia"
98	select 88F6820
99
100config TARGET_MVEBU_ARMADA_8K
101	bool "Support Armada 7k/8k platforms"
102	select ARMADA_8K
103	select BOARD_LATE_INIT
104	imply SCSI
105
106config TARGET_DB_MV784MP_GP
107	bool "Support db-mv784mp-gp"
108	select MV78460
109
110config TARGET_DS414
111	bool "Support Synology DS414"
112	select MV78230
113
114config TARGET_MAXBCM
115	bool "Support maxbcm"
116	select MV78460
117
118config TARGET_THEADORABLE
119	bool "Support theadorable Armada XP"
120	select BOARD_LATE_INIT if USB
121	select MV78260
122	imply CMD_SATA
123
124config TARGET_CONTROLCENTERDC
125	bool "Support CONTROLCENTERDC"
126	select 88F6820
127
128endchoice
129
130config SYS_BOARD
131	default "clearfog" if TARGET_CLEARFOG
132	default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
133	default "db-88f6720" if TARGET_DB_88F6720
134	default "db-88f6820-gp" if TARGET_DB_88F6820_GP
135	default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
136	default "turris_omnia" if TARGET_TURRIS_OMNIA
137	default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
138	default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
139	default "ds414" if TARGET_DS414
140	default "maxbcm" if TARGET_MAXBCM
141	default "theadorable" if TARGET_THEADORABLE
142
143config SYS_CONFIG_NAME
144	default "clearfog" if TARGET_CLEARFOG
145	default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
146	default "db-88f6720" if TARGET_DB_88F6720
147	default "db-88f6820-gp" if TARGET_DB_88F6820_GP
148	default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
149	default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
150	default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
151	default "ds414" if TARGET_DS414
152	default "maxbcm" if TARGET_MAXBCM
153	default "theadorable" if TARGET_THEADORABLE
154	default "turris_omnia" if TARGET_TURRIS_OMNIA
155
156config SYS_VENDOR
157	default "Marvell" if TARGET_DB_MV784MP_GP
158	default "Marvell" if TARGET_MVEBU_ARMADA_37XX
159	default "Marvell" if TARGET_DB_88F6720
160	default "Marvell" if TARGET_DB_88F6820_GP
161	default "Marvell" if TARGET_DB_88F6820_AMC
162	default "Marvell" if TARGET_MVEBU_ARMADA_8K
163	default "solidrun" if TARGET_CLEARFOG
164	default "Synology" if TARGET_DS414
165	default "CZ.NIC" if TARGET_TURRIS_OMNIA
166
167config SYS_SOC
168	default "mvebu"
169
170if TARGET_TURRIS_OMNIA
171
172choice
173	prompt "Turris Omnia boot method"
174
175config TURRIS_OMNIA_SPL_BOOT_DEVICE_SPI
176	bool "SPI NOR flash"
177
178config TURRIS_OMNIA_SPL_BOOT_DEVICE_MMC
179	bool "SDIO/MMC card"
180
181endchoice
182
183endif
184
185config MVEBU_EFUSE
186	bool "Enable eFuse support"
187	default n
188	depends on HAVE_MVEBU_EFUSE
189	help
190	  Enable support for reading and writing eFuses on mvebu SoCs.
191
192config MVEBU_EFUSE_FAKE
193	bool "Fake eFuse access (dry run)"
194	default n
195	depends on MVEBU_EFUSE
196	help
197	  This enables a "dry run" mode where eFuses are not really programmed.
198	  Instead the eFuse accesses are emulated by writing to and reading
199	  from a memory block.
200	  This is can be used for testing prog scripts.
201
202config SECURED_MODE_IMAGE
203	bool "Build image for trusted boot"
204	default false
205	depends on 88F6820
206	help
207	  Build an image that employs the ARMADA SoC's trusted boot framework
208	  for securely booting images.
209
210config SECURED_MODE_CSK_INDEX
211	int "Index of active CSK"
212	default 0
213	depends on SECURED_MODE_IMAGE
214
215endif
216