blob: 1b12b330608e8f4aeb3710ecf08f67843e68df3d [file] [log] [blame]
Stefan Roese383e0c12015-08-25 13:18:38 +02001if ARCH_MVEBU
2
Mario Six10d14492017-01-11 16:01:00 +01003config HAVE_MVEBU_EFUSE
4 bool
5 default n
6
Stefan Roese05b17652016-05-17 15:00:30 +02007config 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
Simon Glass7a99a872017-01-23 13:31:20 -070015 select BOARD_EARLY_INIT_F
Simon Glass95d31412017-01-23 13:31:21 -070016 select ARCH_MISC_INIT
Stefan Roese05b17652016-05-17 15:00:30 +020017
18config ARMADA_64BIT
19 bool
20 select ARM64
21
22# ARMv7 SoCs...
Stefan Roese9106ed02016-01-29 09:14:54 +010023config ARMADA_375
24 bool
Stefan Roese05b17652016-05-17 15:00:30 +020025 select ARMADA_32BIT
Stefan Roese9106ed02016-01-29 09:14:54 +010026
Stefan Roeseeb083e52015-12-21 13:56:33 +010027config ARMADA_38X
28 bool
Stefan Roese05b17652016-05-17 15:00:30 +020029 select ARMADA_32BIT
Mario Six10d14492017-01-11 16:01:00 +010030 select HAVE_MVEBU_EFUSE
Stefan Roeseeb083e52015-12-21 13:56:33 +010031
32config ARMADA_XP
33 bool
Stefan Roese05b17652016-05-17 15:00:30 +020034 select ARMADA_32BIT
Simon Glass3b21fdd2017-07-23 21:19:45 -060035 imply ENV_IS_IN_SPI_FLASH
Stefan Roese05b17652016-05-17 15:00:30 +020036
37# ARMv8 SoCs...
38config ARMADA_3700
39 bool
40 select ARM64
Stefan Roeseeb083e52015-12-21 13:56:33 +010041
Stefan Roesecb410332016-05-25 08:13:45 +020042# Armada 7K and 8K are very similar - use only one Kconfig symbol for both
43config ARMADA_8K
44 bool
45 select ARM64
46
Chris Packham1d496682016-10-26 14:08:30 +130047# 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
Stefan Roese05b17652016-05-17 15:00:30 +020053# Armada XP/38x SoC types...
Phil Suttera7f94ad2015-12-25 14:41:22 +010054config MV78230
55 bool
56 select ARMADA_XP
57
58config MV78260
59 bool
60 select ARMADA_XP
Simon Glass203b3ab2017-06-14 21:28:24 -060061 imply CMD_SATA
Phil Suttera7f94ad2015-12-25 14:41:22 +010062
63config MV78460
64 bool
65 select ARMADA_XP
66
Chris Packhamf5fc25b2016-09-22 12:56:13 +120067config 88F6820
Phil Suttera7f94ad2015-12-25 14:41:22 +010068 bool
69 select ARMADA_38X
70
Stefan Roese383e0c12015-08-25 13:18:38 +020071choice
Stefan Roesecb410332016-05-25 08:13:45 +020072 prompt "Armada XP/375/38x/3700/7K/8K board select"
Stefan Roese383e0c12015-08-25 13:18:38 +020073 optional
74
Stefan Roese73606402015-10-20 15:14:47 +020075config TARGET_CLEARFOG
76 bool "Support ClearFog"
Chris Packhamf5fc25b2016-09-22 12:56:13 +120077 select 88F6820
Stefan Roese73606402015-10-20 15:14:47 +020078
Konstantin Porotchkin7f8dfea2017-02-16 13:52:22 +020079config TARGET_MVEBU_ARMADA_37XX
80 bool "Support Armada 37xx platforms"
Stefan Roese6edf27e2016-05-17 15:04:16 +020081 select ARMADA_3700
Simon Glass0e5faf02017-06-14 21:28:21 -060082 imply SCSI
Stefan Roese6edf27e2016-05-17 15:04:16 +020083
Stefan Roese9106ed02016-01-29 09:14:54 +010084config TARGET_DB_88F6720
85 bool "Support DB-88F6720 Armada 375"
86 select ARMADA_375
87
Stefan Roese383e0c12015-08-25 13:18:38 +020088config TARGET_DB_88F6820_GP
89 bool "Support DB-88F6820-GP"
Chris Packhamf5fc25b2016-09-22 12:56:13 +120090 select 88F6820
Stefan Roese383e0c12015-08-25 13:18:38 +020091
Chris Packhama90dd4c2016-09-22 12:56:14 +120092config TARGET_DB_88F6820_AMC
93 bool "Support DB-88F6820-AMC"
94 select 88F6820
95
Marek Behún09e16b82017-06-09 19:28:45 +020096config TARGET_TURRIS_OMNIA
97 bool "Support Turris Omnia"
98 select 88F6820
99
Stefan Roese5c806f12016-10-25 10:56:19 +0200100config TARGET_MVEBU_ARMADA_8K
101 bool "Support Armada 7k/8k platforms"
Stefan Roese7be1b9b2016-05-25 08:21:21 +0200102 select ARMADA_8K
Tom Rini22d567e2017-01-22 19:43:11 -0500103 select BOARD_LATE_INIT
Simon Glass0e5faf02017-06-14 21:28:21 -0600104 imply SCSI
Stefan Roese7be1b9b2016-05-25 08:21:21 +0200105
Stefan Roese383e0c12015-08-25 13:18:38 +0200106config TARGET_DB_MV784MP_GP
107 bool "Support db-mv784mp-gp"
Phil Suttera7f94ad2015-12-25 14:41:22 +0100108 select MV78460
Stefan Roese383e0c12015-08-25 13:18:38 +0200109
Phil Sutterd76eba62015-12-25 14:41:25 +0100110config TARGET_DS414
111 bool "Support Synology DS414"
112 select MV78230
113
Stefan Roese383e0c12015-08-25 13:18:38 +0200114config TARGET_MAXBCM
115 bool "Support maxbcm"
Phil Suttera7f94ad2015-12-25 14:41:22 +0100116 select MV78460
Stefan Roese383e0c12015-08-25 13:18:38 +0200117
Stefan Roese459e0642016-01-20 08:13:29 +0100118config TARGET_THEADORABLE
119 bool "Support theadorable Armada XP"
Tom Rini22d567e2017-01-22 19:43:11 -0500120 select BOARD_LATE_INIT if USB
Stefan Roese459e0642016-01-20 08:13:29 +0100121 select MV78260
Simon Glass203b3ab2017-06-14 21:28:24 -0600122 imply CMD_SATA
Stefan Roese459e0642016-01-20 08:13:29 +0100123
Dirk Eibachfb605942017-02-22 16:07:23 +0100124config TARGET_CONTROLCENTERDC
125 bool "Support CONTROLCENTERDC"
126 select 88F6820
127
Stefan Roese383e0c12015-08-25 13:18:38 +0200128endchoice
129
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100130config SYS_BOARD
131 default "clearfog" if TARGET_CLEARFOG
Konstantin Porotchkin7f8dfea2017-02-16 13:52:22 +0200132 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese9106ed02016-01-29 09:14:54 +0100133 default "db-88f6720" if TARGET_DB_88F6720
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100134 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
Chris Packhama90dd4c2016-09-22 12:56:14 +1200135 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
Marek Behún09e16b82017-06-09 19:28:45 +0200136 default "turris_omnia" if TARGET_TURRIS_OMNIA
Stefan Roese5c806f12016-10-25 10:56:19 +0200137 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100138 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
Phil Sutterd76eba62015-12-25 14:41:25 +0100139 default "ds414" if TARGET_DS414
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100140 default "maxbcm" if TARGET_MAXBCM
Stefan Roese459e0642016-01-20 08:13:29 +0100141 default "theadorable" if TARGET_THEADORABLE
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100142
143config SYS_CONFIG_NAME
144 default "clearfog" if TARGET_CLEARFOG
Konstantin Porotchkin7f8dfea2017-02-16 13:52:22 +0200145 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese9106ed02016-01-29 09:14:54 +0100146 default "db-88f6720" if TARGET_DB_88F6720
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100147 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
Chris Packhama90dd4c2016-09-22 12:56:14 +1200148 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
Stefan Roese5c806f12016-10-25 10:56:19 +0200149 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100150 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
Phil Sutterd76eba62015-12-25 14:41:25 +0100151 default "ds414" if TARGET_DS414
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100152 default "maxbcm" if TARGET_MAXBCM
Stefan Roese459e0642016-01-20 08:13:29 +0100153 default "theadorable" if TARGET_THEADORABLE
Marek Behún09e16b82017-06-09 19:28:45 +0200154 default "turris_omnia" if TARGET_TURRIS_OMNIA
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100155
156config SYS_VENDOR
157 default "Marvell" if TARGET_DB_MV784MP_GP
Konstantin Porotchkin7f8dfea2017-02-16 13:52:22 +0200158 default "Marvell" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese9106ed02016-01-29 09:14:54 +0100159 default "Marvell" if TARGET_DB_88F6720
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100160 default "Marvell" if TARGET_DB_88F6820_GP
Chris Packhama90dd4c2016-09-22 12:56:14 +1200161 default "Marvell" if TARGET_DB_88F6820_AMC
Stefan Roese5c806f12016-10-25 10:56:19 +0200162 default "Marvell" if TARGET_MVEBU_ARMADA_8K
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100163 default "solidrun" if TARGET_CLEARFOG
Phil Sutterd76eba62015-12-25 14:41:25 +0100164 default "Synology" if TARGET_DS414
Marek Behún09e16b82017-06-09 19:28:45 +0200165 default "CZ.NIC" if TARGET_TURRIS_OMNIA
Stefan Roeseb9f41bf2015-12-21 13:40:37 +0100166
Stefan Roese383e0c12015-08-25 13:18:38 +0200167config SYS_SOC
168 default "mvebu"
169
Marek Behún09e16b82017-06-09 19:28:45 +0200170if 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
Mario Six10d14492017-01-11 16:01:00 +0100185config 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
Stefan Roese383e0c12015-08-25 13:18:38 +0200215endif