xref: /openbmc/u-boot/arch/arm/mach-mvebu/Kconfig (revision ad97051b)
1if ARCH_MVEBU
2
3config HAVE_MVEBU_EFUSE
4	bool
5	default n
6
7config ARMADA_32BIT
8	bool
9	select CPU_V7A
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
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_MVEBU_ARMADA_37XX
79	bool "Support Armada 37xx platforms"
80	select ARMADA_3700
81	imply SCSI
82
83config TARGET_DB_88F6720
84	bool "Support DB-88F6720 Armada 375"
85	select ARMADA_375
86
87config TARGET_DB_88F6820_GP
88	bool "Support DB-88F6820-GP"
89	select 88F6820
90
91config TARGET_DB_88F6820_AMC
92	bool "Support DB-88F6820-AMC"
93	select 88F6820
94
95config TARGET_TURRIS_OMNIA
96	bool "Support Turris Omnia"
97	select 88F6820
98
99config TARGET_TURRIS_MOX
100	bool "Support Turris Mox"
101	select ARMADA_3700
102
103config TARGET_MVEBU_ARMADA_8K
104	bool "Support Armada 7k/8k platforms"
105	select ARMADA_8K
106	select BOARD_LATE_INIT
107	imply SCSI
108
109config TARGET_DB_MV784MP_GP
110	bool "Support db-mv784mp-gp"
111	select MV78460
112
113config TARGET_DS414
114	bool "Support Synology DS414"
115	select MV78230
116
117config TARGET_MAXBCM
118	bool "Support maxbcm"
119	select MV78460
120
121config TARGET_THEADORABLE
122	bool "Support theadorable Armada XP"
123	select BOARD_LATE_INIT if USB
124	select MV78260
125	imply CMD_SATA
126
127config TARGET_CONTROLCENTERDC
128	bool "Support CONTROLCENTERDC"
129	select 88F6820
130
131endchoice
132
133config SYS_BOARD
134	default "clearfog" if TARGET_CLEARFOG
135	default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
136	default "db-88f6720" if TARGET_DB_88F6720
137	default "db-88f6820-gp" if TARGET_DB_88F6820_GP
138	default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
139	default "turris_omnia" if TARGET_TURRIS_OMNIA
140	default "turris_mox" if TARGET_TURRIS_MOX
141	default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
142	default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
143	default "ds414" if TARGET_DS414
144	default "maxbcm" if TARGET_MAXBCM
145	default "theadorable" if TARGET_THEADORABLE
146
147config SYS_CONFIG_NAME
148	default "clearfog" if TARGET_CLEARFOG
149	default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
150	default "db-88f6720" if TARGET_DB_88F6720
151	default "db-88f6820-gp" if TARGET_DB_88F6820_GP
152	default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
153	default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
154	default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
155	default "ds414" if TARGET_DS414
156	default "maxbcm" if TARGET_MAXBCM
157	default "theadorable" if TARGET_THEADORABLE
158	default "turris_omnia" if TARGET_TURRIS_OMNIA
159	default "turris_mox" if TARGET_TURRIS_MOX
160
161config SYS_VENDOR
162	default "Marvell" if TARGET_DB_MV784MP_GP
163	default "Marvell" if TARGET_MVEBU_ARMADA_37XX
164	default "Marvell" if TARGET_DB_88F6720
165	default "Marvell" if TARGET_DB_88F6820_GP
166	default "Marvell" if TARGET_DB_88F6820_AMC
167	default "Marvell" if TARGET_MVEBU_ARMADA_8K
168	default "solidrun" if TARGET_CLEARFOG
169	default "Synology" if TARGET_DS414
170	default "CZ.NIC" if TARGET_TURRIS_OMNIA
171	default "CZ.NIC" if TARGET_TURRIS_MOX
172
173config SYS_SOC
174	default "mvebu"
175
176if TARGET_TURRIS_OMNIA
177
178choice
179	prompt "Turris Omnia boot method"
180
181config TURRIS_OMNIA_SPL_BOOT_DEVICE_SPI
182	bool "SPI NOR flash"
183
184config TURRIS_OMNIA_SPL_BOOT_DEVICE_MMC
185	bool "SDIO/MMC card"
186
187endchoice
188
189endif
190
191config MVEBU_EFUSE
192	bool "Enable eFuse support"
193	default n
194	depends on HAVE_MVEBU_EFUSE
195	help
196	  Enable support for reading and writing eFuses on mvebu SoCs.
197
198config MVEBU_EFUSE_FAKE
199	bool "Fake eFuse access (dry run)"
200	default n
201	depends on MVEBU_EFUSE
202	help
203	  This enables a "dry run" mode where eFuses are not really programmed.
204	  Instead the eFuse accesses are emulated by writing to and reading
205	  from a memory block.
206	  This is can be used for testing prog scripts.
207
208config SECURED_MODE_IMAGE
209	bool "Build image for trusted boot"
210	default false
211	depends on 88F6820
212	help
213	  Build an image that employs the ARMADA SoC's trusted boot framework
214	  for securely booting images.
215
216config SECURED_MODE_CSK_INDEX
217	int "Index of active CSK"
218	default 0
219	depends on SECURED_MODE_IMAGE
220
221endif
222