blob: 1f0dbef1c68a48908d141488513e393ff6b0be08 [file] [log] [blame]
Stefan Roesec3d89142015-08-25 13:18:38 +02001if ARCH_MVEBU
2
Mario Sixa1b6b0a2017-01-11 16:01:00 +01003config HAVE_MVEBU_EFUSE
4 bool
Mario Sixa1b6b0a2017-01-11 16:01:00 +01005
Stefan Roesef61aefc2016-05-17 15:00:30 +02006config ARMADA_32BIT
7 bool
Michal Simek58008cb2018-07-23 15:55:15 +02008 select BOARD_EARLY_INIT_F
Lokesh Vutlaacf15002018-04-26 18:21:26 +05309 select CPU_V7A
Stefan Roese237b6292019-04-11 08:58:32 +020010 select SPL_DM if SPL
11 select SPL_DM_SEQ_ALIAS if SPL
12 select SPL_OF_CONTROL if SPL
Tom Rini7609e022021-10-15 10:54:41 -040013 select SPL_SKIP_LOWLEVEL_INIT if SPL
Stefan Roese237b6292019-04-11 08:58:32 +020014 select SPL_SIMPLE_BUS if SPL
Michal Simek58008cb2018-07-23 15:55:15 +020015 select SUPPORT_SPL
Philip Oberfichtner11168882022-08-17 15:07:12 +020016 select SYS_L2_PL310 if !SYS_L2CACHE_OFF
Stefan Roesef2100f62019-04-12 16:42:28 +020017 select TRANSLATION_OFFSET
Pali Rohár2975bba2022-04-06 16:20:20 +020018 select SPL_SYS_NO_VECTOR_TABLE if SPL
Pali Rohár5bb2c552022-05-06 11:05:14 +020019 select ARCH_VERY_EARLY_INIT
Stefan Roesef61aefc2016-05-17 15:00:30 +020020
Stefan Roesef61aefc2016-05-17 15:00:30 +020021# ARMv7 SoCs...
Stefan Roese606576d2016-01-29 09:14:54 +010022config ARMADA_375
23 bool
Stefan Roesef61aefc2016-05-17 15:00:30 +020024 select ARMADA_32BIT
Stefan Roese606576d2016-01-29 09:14:54 +010025
Stefan Roese81e33f42015-12-21 13:56:33 +010026config ARMADA_38X
27 bool
Stefan Roesef61aefc2016-05-17 15:00:30 +020028 select ARMADA_32BIT
Mario Sixa1b6b0a2017-01-11 16:01:00 +010029 select HAVE_MVEBU_EFUSE
Stefan Roese81e33f42015-12-21 13:56:33 +010030
Joshua Scott28f0cbc2020-11-09 10:14:08 +130031config ARMADA_38X_HS_IMPEDANCE_THRESH
32 hex "Armada 38x USB 2.0 High-Speed Impedance Threshold (0x0 - 0x7)"
33 depends on ARMADA_38X
34 default 0x6
35 range 0x0 0x7
36
Stefan Roese81e33f42015-12-21 13:56:33 +010037config ARMADA_XP
38 bool
Stefan Roesef61aefc2016-05-17 15:00:30 +020039 select ARMADA_32BIT
Stefan Roese81e33f42015-12-21 13:56:33 +010040
Stefan Roesef61aefc2016-05-17 15:00:30 +020041# ARMv8 SoCs...
42config ARMADA_3700
43 bool
44 select ARM64
Pali Rohár10154b82022-02-23 14:15:45 +010045 select HAVE_MVEBU_EFUSE
Stefan Roesef61aefc2016-05-17 15:00:30 +020046
Stefan Roese21b29fc2016-05-25 08:13:45 +020047# Armada 7K and 8K are very similar - use only one Kconfig symbol for both
48config ARMADA_8K
49 bool
50 select ARM64
51
Chris Packham7d7bb992022-11-05 17:23:59 +130052config ALLEYCAT_5
53 bool
54 select ARM64
55
Chris Packhama53d97a2016-10-26 14:08:30 +130056# Armada PLL frequency (used for NAND clock generation)
57config SYS_MVEBU_PLL_CLOCK
58 int
Chris Packham0d0df462019-04-11 22:22:50 +120059 default "2000000000" if ARMADA_XP || ARMADA_3700 || ARMADA_8K || ARMADA_MSYS
Chris Packhama53d97a2016-10-26 14:08:30 +130060 default "1000000000" if ARMADA_38X || ARMADA_375
61
Stefan Roesef61aefc2016-05-17 15:00:30 +020062# Armada XP/38x SoC types...
Phil Sutter42902522015-12-25 14:41:22 +010063config MV78230
64 bool
65 select ARMADA_XP
66
67config MV78260
68 bool
69 select ARMADA_XP
Simon Glass3bf926c2017-06-14 21:28:24 -060070 imply CMD_SATA
Phil Sutter42902522015-12-25 14:41:22 +010071
72config MV78460
73 bool
74 select ARMADA_XP
75
Chris Packham0d0df462019-04-11 22:22:50 +120076config ARMADA_MSYS
77 bool
78 select ARMADA_32BIT
79
80config 98DX4251
81 bool
82 select ARMADA_MSYS
83
84config 98DX3336
85 bool
86 select ARMADA_MSYS
87
88config 98DX3236
89 bool
90 select ARMADA_MSYS
91
Chris Packham53d601f2016-09-22 12:56:13 +120092config 88F6820
Phil Sutter42902522015-12-25 14:41:22 +010093 bool
94 select ARMADA_38X
95
Tom Rini53dbf112022-03-30 18:07:24 -040096config CUSTOMER_BOARD_SUPPORT
97 bool
98
Tony Dinh3fdd09f2023-02-01 15:13:05 -080099config DDR4
100 bool "Support Marvell DDR4 Training driver"
101
Stefan Roesec3d89142015-08-25 13:18:38 +0200102choice
Chris Packham6cc8b5d2022-11-05 17:24:00 +1300103 prompt "Armada XP/375/38x/3700/7K/8K/Alleycat-5 board select"
Stefan Roesec3d89142015-08-25 13:18:38 +0200104 optional
105
Stefan Roese0299c902015-10-20 15:14:47 +0200106config TARGET_CLEARFOG
107 bool "Support ClearFog"
Chris Packham53d601f2016-09-22 12:56:13 +1200108 select 88F6820
Baruch Siach867572f2020-01-20 14:20:13 +0200109 select BOARD_LATE_INIT
Stefan Roese0299c902015-10-20 15:14:47 +0200110
Dennis Gilmoreae28a5f2018-06-11 19:39:53 -0500111config TARGET_HELIOS4
112 bool "Support Helios4"
113 select 88F6820
114
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200115config TARGET_MVEBU_ARMADA_37XX
116 bool "Support Armada 37xx platforms"
Stefan Roese01e62c72016-05-17 15:04:16 +0200117 select ARMADA_3700
Simon Glassfedb4282017-06-14 21:28:21 -0600118 imply SCSI
Stefan Roese01e62c72016-05-17 15:04:16 +0200119
Stefan Roese606576d2016-01-29 09:14:54 +0100120config TARGET_DB_88F6720
121 bool "Support DB-88F6720 Armada 375"
122 select ARMADA_375
123
Stefan Roesec3d89142015-08-25 13:18:38 +0200124config TARGET_DB_88F6820_GP
125 bool "Support DB-88F6820-GP"
Chris Packham53d601f2016-09-22 12:56:13 +1200126 select 88F6820
Stefan Roesec3d89142015-08-25 13:18:38 +0200127
Chris Packhamc0def242016-09-22 12:56:14 +1200128config TARGET_DB_88F6820_AMC
129 bool "Support DB-88F6820-AMC"
130 select 88F6820
131
Marek Behúnb6ee8602017-06-09 19:28:45 +0200132config TARGET_TURRIS_OMNIA
133 bool "Support Turris Omnia"
134 select 88F6820
Marek Behún539f0242019-05-02 16:53:37 +0200135 select BOARD_LATE_INIT
Marek Behún8420edc2019-05-02 16:53:28 +0200136 select DM_I2C
137 select I2C_MUX
138 select I2C_MUX_PCA954x
Marek Behún6d7bfb62021-10-09 19:33:46 +0200139 select SPL_DRIVERS_MISC
Marek Behún8420edc2019-05-02 16:53:28 +0200140 select SPL_I2C_MUX
Marek Behún2c8a4e42021-10-09 19:33:45 +0200141 select SPL_SYS_MALLOC_SIMPLE
Marek Behún8420edc2019-05-02 16:53:28 +0200142 select SYS_I2C_MVTWSI
Marek Behún6b26f3e2019-05-02 16:53:32 +0200143 select ATSHA204A
Marek Behúnb6ee8602017-06-09 19:28:45 +0200144
Marek Behún80af1a92018-04-24 17:21:31 +0200145config TARGET_TURRIS_MOX
146 bool "Support Turris Mox"
147 select ARMADA_3700
148
Stefan Roese633fa0e2016-10-25 10:56:19 +0200149config TARGET_MVEBU_ARMADA_8K
150 bool "Support Armada 7k/8k platforms"
Stefan Roese6f8c2d42016-05-25 08:21:21 +0200151 select ARMADA_8K
Tom Rinie5ec4812017-01-22 19:43:11 -0500152 select BOARD_LATE_INIT
Simon Glassfedb4282017-06-14 21:28:21 -0600153 imply SCSI
Stefan Roese6f8c2d42016-05-25 08:21:21 +0200154
Chris Packham6cc8b5d2022-11-05 17:24:00 +1300155config TARGET_MVEBU_ALLEYCAT5
156 bool "Support AlleyCat 5 platforms"
157 select ALLEYCAT_5
158
Konstantin Porotchkinc4052262021-03-16 17:20:57 +0100159config TARGET_OCTEONTX2_CN913x
160 bool "Support CN913x platforms"
161 select ARMADA_8K
162 imply BOARD_EARLY_INIT_R
163 select BOARD_LATE_INIT
164 imply SCSI
165
Stefan Roesec3d89142015-08-25 13:18:38 +0200166config TARGET_DB_MV784MP_GP
167 bool "Support db-mv784mp-gp"
Tom Rinida8592d2022-02-25 11:19:46 -0500168 select BOARD_ECC_SUPPORT
Phil Sutter42902522015-12-25 14:41:22 +0100169 select MV78460
Stefan Roesec3d89142015-08-25 13:18:38 +0200170
Tony Dinhb21f87a52023-02-09 14:00:03 -0800171config TARGET_DS116
172 bool "Support Synology DS116"
173 select 88F6820
174
Phil Sutteraefb8f42015-12-25 14:41:25 +0100175config TARGET_DS414
176 bool "Support Synology DS414"
177 select MV78230
178
Stefan Roesec3d89142015-08-25 13:18:38 +0200179config TARGET_MAXBCM
180 bool "Support maxbcm"
Tom Rinida8592d2022-02-25 11:19:46 -0500181 select BOARD_ECC_SUPPORT
Phil Sutter42902522015-12-25 14:41:22 +0100182 select MV78460
Stefan Roesec3d89142015-08-25 13:18:38 +0200183
Tony Dinh3fdd09f2023-02-01 15:13:05 -0800184config TARGET_N2350
185 bool "Support Thecus N2350"
186 select 88F6820
187 select DDR4
188
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100189config TARGET_THEADORABLE
190 bool "Support theadorable Armada XP"
Tom Rinie5ec4812017-01-22 19:43:11 -0500191 select BOARD_LATE_INIT if USB
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100192 select MV78260
Simon Glass3bf926c2017-06-14 21:28:24 -0600193 imply CMD_SATA
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100194
Dirk Eibach60083262017-02-22 16:07:23 +0100195config TARGET_CONTROLCENTERDC
196 bool "Support CONTROLCENTERDC"
197 select 88F6820
Tom Rini53dbf112022-03-30 18:07:24 -0400198 select CUSTOMER_BOARD_SUPPORT
Dirk Eibach60083262017-02-22 16:07:23 +0100199
Chris Packham0e316662019-01-10 21:01:00 +1300200config TARGET_X530
201 bool "Support Allied Telesis x530"
202 select 88F6820
203
Chris Packham4db944a2019-04-11 22:22:53 +1200204config TARGET_DB_XC3_24G4XG
205 bool "Support DB-XC3-24G4XG"
206 select 98DX3336
207
Luka Kovacicdf9ebbe2020-05-26 20:17:50 +0200208config TARGET_CRS3XX_98DX3236
209 bool "Support CRS3XX-98DX3236"
Luka Kovacic22bb9132019-05-07 19:35:55 +0200210 select 98DX3236
211
Stefan Roesec3d89142015-08-25 13:18:38 +0200212endchoice
213
Tom Rini5b527c52021-08-21 13:50:13 -0400214choice
215 prompt "DDR bus width"
216 default DDR_64BIT
217 depends on ARMADA_XP
218
219config DDR_64BIT
220 bool "64bit bus width"
221
222config DDR_32BIT
223 bool "32bit bus width"
224
225endchoice
226
Tom Rinif66a3fd2021-08-21 13:50:15 -0400227config DDR_LOG_LEVEL
228 int "DDR training code log level"
229 depends on ARMADA_XP
230 default 0
231 range 0 3
232 help
233 Amount of information provided on error while running the DDR
234 training code. At level 0, provides an error code in a case of
235 failure, RL, WL errors and other algorithm failure. At level 1,
236 provides the D-Unit setup (SPD/Static configuration). At level 2,
237 provides the windows margin as a results of DQS centeralization.
238 At level 3, rovides the windows margin of each DQ as a results of
239 DQS centeralization.
240
Marek Behún871ee662022-02-17 13:54:42 +0100241config DDR_RESET_ON_TRAINING_FAILURE
242 bool "Reset the board on DDR training failure instead of hanging"
243 depends on ARMADA_38X || ARMADA_XP
244 help
245 If DDR training fails in SPL, reset the board instead of hanging.
246 Some boards are known to fail DDR training occasionally and an
247 immediate reset may be preferable to waiting until the board is
248 reset by watchdog (if there even is one).
249
250 Note that if booting via UART and the DDR training fails, the
251 device will still hang - it doesn't make sense to reset the board
252 in such a case.
253
Tom Rinida8592d2022-02-25 11:19:46 -0500254config BOARD_ECC_SUPPORT
255 bool
256
Stefan Roeseb322c832015-12-21 13:40:37 +0100257config SYS_BOARD
258 default "clearfog" if TARGET_CLEARFOG
Dennis Gilmoreae28a5f2018-06-11 19:39:53 -0500259 default "helios4" if TARGET_HELIOS4
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200260 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese606576d2016-01-29 09:14:54 +0100261 default "db-88f6720" if TARGET_DB_88F6720
Stefan Roeseb322c832015-12-21 13:40:37 +0100262 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
Chris Packhamc0def242016-09-22 12:56:14 +1200263 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
Marek Behúnb6ee8602017-06-09 19:28:45 +0200264 default "turris_omnia" if TARGET_TURRIS_OMNIA
Marek Behún80af1a92018-04-24 17:21:31 +0200265 default "turris_mox" if TARGET_TURRIS_MOX
Stefan Roese633fa0e2016-10-25 10:56:19 +0200266 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
Konstantin Porotchkinc4052262021-03-16 17:20:57 +0100267 default "octeontx2_cn913x" if TARGET_OCTEONTX2_CN913x
Stefan Roeseb322c832015-12-21 13:40:37 +0100268 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
Tony Dinhb21f87a52023-02-09 14:00:03 -0800269 default "ds116" if TARGET_DS116
Phil Sutteraefb8f42015-12-25 14:41:25 +0100270 default "ds414" if TARGET_DS414
Stefan Roeseb322c832015-12-21 13:40:37 +0100271 default "maxbcm" if TARGET_MAXBCM
Tony Dinh3fdd09f2023-02-01 15:13:05 -0800272 default "n2350" if TARGET_N2350
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100273 default "theadorable" if TARGET_THEADORABLE
Baruch Siachd38f04f2018-06-18 21:56:23 +0300274 default "a38x" if TARGET_CONTROLCENTERDC
Chris Packham0e316662019-01-10 21:01:00 +1300275 default "x530" if TARGET_X530
Chris Packham4db944a2019-04-11 22:22:53 +1200276 default "db-xc3-24g4xg" if TARGET_DB_XC3_24G4XG
Luka Kovacicdf9ebbe2020-05-26 20:17:50 +0200277 default "crs3xx-98dx3236" if TARGET_CRS3XX_98DX3236
Chris Packham6cc8b5d2022-11-05 17:24:00 +1300278 default "mvebu_alleycat-5" if TARGET_MVEBU_ALLEYCAT5
Stefan Roeseb322c832015-12-21 13:40:37 +0100279
280config SYS_CONFIG_NAME
281 default "clearfog" if TARGET_CLEARFOG
Dennis Gilmoreae28a5f2018-06-11 19:39:53 -0500282 default "helios4" if TARGET_HELIOS4
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200283 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese606576d2016-01-29 09:14:54 +0100284 default "db-88f6720" if TARGET_DB_88F6720
Stefan Roeseb322c832015-12-21 13:40:37 +0100285 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
Chris Packhamc0def242016-09-22 12:56:14 +1200286 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
Stefan Roese633fa0e2016-10-25 10:56:19 +0200287 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
Konstantin Porotchkinc4052262021-03-16 17:20:57 +0100288 default "mvebu_armada-8k" if TARGET_OCTEONTX2_CN913x
Stefan Roeseb322c832015-12-21 13:40:37 +0100289 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
Tony Dinhb21f87a52023-02-09 14:00:03 -0800290 default "ds116" if TARGET_DS116
Phil Sutteraefb8f42015-12-25 14:41:25 +0100291 default "ds414" if TARGET_DS414
Stefan Roeseb322c832015-12-21 13:40:37 +0100292 default "maxbcm" if TARGET_MAXBCM
Tony Dinh3fdd09f2023-02-01 15:13:05 -0800293 default "n2350" if TARGET_N2350
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100294 default "theadorable" if TARGET_THEADORABLE
Marek Behúnb6ee8602017-06-09 19:28:45 +0200295 default "turris_omnia" if TARGET_TURRIS_OMNIA
Marek Behún80af1a92018-04-24 17:21:31 +0200296 default "turris_mox" if TARGET_TURRIS_MOX
Baruch Siachd38f04f2018-06-18 21:56:23 +0300297 default "controlcenterdc" if TARGET_CONTROLCENTERDC
Chris Packham0e316662019-01-10 21:01:00 +1300298 default "x530" if TARGET_X530
Chris Packham4db944a2019-04-11 22:22:53 +1200299 default "db-xc3-24g4xg" if TARGET_DB_XC3_24G4XG
Luka Kovacicdf9ebbe2020-05-26 20:17:50 +0200300 default "crs3xx-98dx3236" if TARGET_CRS3XX_98DX3236
Chris Packham6cc8b5d2022-11-05 17:24:00 +1300301 default "mvebu_alleycat-5" if TARGET_MVEBU_ALLEYCAT5
Stefan Roeseb322c832015-12-21 13:40:37 +0100302
303config SYS_VENDOR
304 default "Marvell" if TARGET_DB_MV784MP_GP
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200305 default "Marvell" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese606576d2016-01-29 09:14:54 +0100306 default "Marvell" if TARGET_DB_88F6720
Stefan Roeseb322c832015-12-21 13:40:37 +0100307 default "Marvell" if TARGET_DB_88F6820_GP
Chris Packhamc0def242016-09-22 12:56:14 +1200308 default "Marvell" if TARGET_DB_88F6820_AMC
Stefan Roese633fa0e2016-10-25 10:56:19 +0200309 default "Marvell" if TARGET_MVEBU_ARMADA_8K
Konstantin Porotchkinc4052262021-03-16 17:20:57 +0100310 default "Marvell" if TARGET_OCTEONTX2_CN913x
Chris Packham4db944a2019-04-11 22:22:53 +1200311 default "Marvell" if TARGET_DB_XC3_24G4XG
312 default "Marvell" if TARGET_MVEBU_DB_88F7040
Stefan Roeseb322c832015-12-21 13:40:37 +0100313 default "solidrun" if TARGET_CLEARFOG
Dennis Gilmoreae28a5f2018-06-11 19:39:53 -0500314 default "kobol" if TARGET_HELIOS4
Tony Dinhb21f87a52023-02-09 14:00:03 -0800315 default "Synology" if TARGET_DS116
Phil Sutteraefb8f42015-12-25 14:41:25 +0100316 default "Synology" if TARGET_DS414
Tony Dinh3fdd09f2023-02-01 15:13:05 -0800317 default "thecus" if TARGET_N2350
Marek Behúnb6ee8602017-06-09 19:28:45 +0200318 default "CZ.NIC" if TARGET_TURRIS_OMNIA
Marek Behún80af1a92018-04-24 17:21:31 +0200319 default "CZ.NIC" if TARGET_TURRIS_MOX
Baruch Siachd38f04f2018-06-18 21:56:23 +0300320 default "gdsys" if TARGET_CONTROLCENTERDC
Chris Packham0e316662019-01-10 21:01:00 +1300321 default "alliedtelesis" if TARGET_X530
Luka Kovacicdf9ebbe2020-05-26 20:17:50 +0200322 default "mikrotik" if TARGET_CRS3XX_98DX3236
Chris Packham6cc8b5d2022-11-05 17:24:00 +1300323 default "Marvell" if TARGET_MVEBU_ALLEYCAT5
Stefan Roeseb322c832015-12-21 13:40:37 +0100324
Stefan Roesec3d89142015-08-25 13:18:38 +0200325config SYS_SOC
326 default "mvebu"
327
Marek Behúnb6ee8602017-06-09 19:28:45 +0200328choice
Baruch Siachad105f52018-06-18 21:56:24 +0300329 prompt "Boot method"
Joel Johnsonab2f7572020-04-17 01:19:05 -0600330 depends on SPL
Marek Behúnb6ee8602017-06-09 19:28:45 +0200331
Baruch Siachad105f52018-06-18 21:56:24 +0300332config MVEBU_SPL_BOOT_DEVICE_SPI
Pali Rohár41d52f32023-01-10 23:13:01 +0100333 bool "NOR flash (SPI or parallel)"
Joel Johnsonab2f7572020-04-17 01:19:05 -0600334 imply ENV_IS_IN_SPI_FLASH
Pali Rohár2226ca12021-07-23 11:14:29 +0200335 imply SPL_DM_SPI
336 imply SPL_SPI_FLASH_SUPPORT
337 imply SPL_SPI_LOAD
Simon Glassea2ca7e2021-08-08 12:20:14 -0600338 imply SPL_SPI
Pali Rohár9d0225b2021-07-23 11:14:25 +0200339 select SPL_BOOTROM_SUPPORT
Marek Behúnb6ee8602017-06-09 19:28:45 +0200340
Pali Rohár67bd6152023-01-10 22:55:21 +0100341config MVEBU_SPL_BOOT_DEVICE_NAND
342 bool "NAND flash (SPI or parallel)"
343 select MTD_RAW_NAND
344 select SPL_BOOTROM_SUPPORT
345
Baruch Siachad105f52018-06-18 21:56:24 +0300346config MVEBU_SPL_BOOT_DEVICE_MMC
Pali Rohár41d52f32023-01-10 23:13:01 +0100347 bool "eMMC or SD card"
Joel Johnsonab2f7572020-04-17 01:19:05 -0600348 imply ENV_IS_IN_MMC
349 # GPIO needed for eMMC/SD card presence detection
Pali Rohár2226ca12021-07-23 11:14:29 +0200350 imply SPL_DM_GPIO
351 imply SPL_DM_MMC
352 imply SPL_GPIO
353 imply SPL_LIBDISK_SUPPORT
Simon Glass103c5f12021-08-08 12:20:09 -0600354 imply SPL_MMC
Pali Rohár2f27db22023-01-08 13:31:41 +0100355 select SUPPORT_EMMC_BOOT if SPL_MMC
Pali Rohár913d7562023-01-09 00:52:09 +0100356 select SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR if SPL_MMC
Pali Rohár9d0225b2021-07-23 11:14:25 +0200357 select SPL_BOOTROM_SUPPORT
Marek Behúnb6ee8602017-06-09 19:28:45 +0200358
Baruch Siach22c65452019-05-16 13:03:58 +0300359config MVEBU_SPL_BOOT_DEVICE_SATA
360 bool "SATA"
Simon Glassf7560372021-08-08 12:20:17 -0600361 imply SPL_SATA
Pali Rohár2226ca12021-07-23 11:14:29 +0200362 imply SPL_LIBDISK_SUPPORT
Pali Rohár9d0225b2021-07-23 11:14:25 +0200363 select SPL_BOOTROM_SUPPORT
Baruch Siach22c65452019-05-16 13:03:58 +0300364
Pali Rohár50afad52023-01-10 23:09:15 +0100365config MVEBU_SPL_BOOT_DEVICE_PEX
366 bool "PCI Express"
367 select SPL_BOOTROM_SUPPORT
368
Baruch Siach72c4e672018-06-18 21:56:26 +0300369config MVEBU_SPL_BOOT_DEVICE_UART
370 bool "UART"
Pali Rohár9d0225b2021-07-23 11:14:25 +0200371 select SPL_BOOTROM_SUPPORT
Baruch Siach72c4e672018-06-18 21:56:26 +0300372
Marek Behúnb6ee8602017-06-09 19:28:45 +0200373endchoice
374
Pali Rohár67bd6152023-01-10 22:55:21 +0100375config MVEBU_SPL_NAND_BADBLK_LOCATION
376 hex "NAND Bad block indicator location"
377 depends on MVEBU_SPL_BOOT_DEVICE_NAND
378 range 0x0 0x1
379 help
380 Value 0x0 = SLC flash = BBI at page 0 or page 1
381 Value 0x1 = MLC flash = BBI at last page in the block
382
Mario Sixa1b6b0a2017-01-11 16:01:00 +0100383config MVEBU_EFUSE
384 bool "Enable eFuse support"
Mario Sixa1b6b0a2017-01-11 16:01:00 +0100385 depends on HAVE_MVEBU_EFUSE
386 help
387 Enable support for reading and writing eFuses on mvebu SoCs.
388
389config MVEBU_EFUSE_FAKE
390 bool "Fake eFuse access (dry run)"
Mario Sixa1b6b0a2017-01-11 16:01:00 +0100391 depends on MVEBU_EFUSE
392 help
393 This enables a "dry run" mode where eFuses are not really programmed.
394 Instead the eFuse accesses are emulated by writing to and reading
395 from a memory block.
396 This is can be used for testing prog scripts.
397
Pali Rohár8092d1d2022-09-22 13:43:45 +0200398config MVEBU_EFUSE_VHV_GPIO
399 string "VHV_Enable GPIO name for eFuse programming"
400 depends on MVEBU_EFUSE && !ARMADA_3700
401 help
402 The eFuse programing (burning) phase requires supplying 1.8V to the
403 device on the VHV power pin, while for normal operation the VHV power
404 rail must be left unconnected. See Marvell AN-389: ARMADA VHV Power
405 document (Doc. No. MV-S302545-00 Rev. C, August 2, 2016) for details.
406 .
407 This specify VHV_Enable GPIO name used in U-Boot for enabling VHV power.
408
409config MVEBU_EFUSE_VHV_GPIO_ACTIVE_LOW
410 bool "VHV_Enable GPIO is Active Low"
411 depends on MVEBU_EFUSE_VHV_GPIO != ""
412
Mario Sixa1b6b0a2017-01-11 16:01:00 +0100413config SECURED_MODE_IMAGE
414 bool "Build image for trusted boot"
415 default false
416 depends on 88F6820
417 help
418 Build an image that employs the ARMADA SoC's trusted boot framework
419 for securely booting images.
420
421config SECURED_MODE_CSK_INDEX
422 int "Index of active CSK"
423 default 0
424 depends on SECURED_MODE_IMAGE
425
Tony Dinh21f62272023-03-02 19:27:29 -0800426config SF_DEFAULT_SPEED
427 int "Default speed for SPI flash in Hz"
428 default 10000000
429 depends on MVEBU_SPL_BOOT_DEVICE_SPI
430
431config SF_DEFAULT_MODE
432 hex "Default mode for SPI flash"
433 default 0x0
434 depends on MVEBU_SPL_BOOT_DEVICE_SPI
435
Joel Johnson9f205d62020-03-23 14:21:32 -0600436source "board/solidrun/clearfog/Kconfig"
Dennis Gilmore5a3db5d2020-12-08 21:07:36 -0600437source "board/kobol/helios4/Kconfig"
Joel Johnson9f205d62020-03-23 14:21:32 -0600438
Stefan Roesec3d89142015-08-25 13:18:38 +0200439endif