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