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