blob: 1b12b330608e8f4aeb3710ecf08f67843e68df3d [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
5 default n
6
Stefan Roesef61aefc2016-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 Glassa5d67542017-01-23 13:31:20 -070015 select BOARD_EARLY_INIT_F
Simon Glass45856012017-01-23 13:31:21 -070016 select ARCH_MISC_INIT
Stefan Roesef61aefc2016-05-17 15:00:30 +020017
18config ARMADA_64BIT
19 bool
20 select ARM64
21
22# ARMv7 SoCs...
Stefan Roese606576d2016-01-29 09:14:54 +010023config ARMADA_375
24 bool
Stefan Roesef61aefc2016-05-17 15:00:30 +020025 select ARMADA_32BIT
Stefan Roese606576d2016-01-29 09:14:54 +010026
Stefan Roese81e33f42015-12-21 13:56:33 +010027config ARMADA_38X
28 bool
Stefan Roesef61aefc2016-05-17 15:00:30 +020029 select ARMADA_32BIT
Mario Sixa1b6b0a2017-01-11 16:01:00 +010030 select HAVE_MVEBU_EFUSE
Stefan Roese81e33f42015-12-21 13:56:33 +010031
32config ARMADA_XP
33 bool
Stefan Roesef61aefc2016-05-17 15:00:30 +020034 select ARMADA_32BIT
Simon Glass91c868f2017-07-23 21:19:45 -060035 imply ENV_IS_IN_SPI_FLASH
Stefan Roese81e33f42015-12-21 13:56:33 +010036
Stefan Roesef61aefc2016-05-17 15:00:30 +020037# ARMv8 SoCs...
38config ARMADA_3700
39 bool
40 select ARM64
41
Stefan Roese21b29fc2016-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 Packhama53d97a2016-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 Roesef61aefc2016-05-17 15:00:30 +020053# Armada XP/38x SoC types...
Phil Sutter42902522015-12-25 14:41:22 +010054config MV78230
55 bool
56 select ARMADA_XP
57
58config MV78260
59 bool
60 select ARMADA_XP
Simon Glass3bf926c2017-06-14 21:28:24 -060061 imply CMD_SATA
Phil Sutter42902522015-12-25 14:41:22 +010062
63config MV78460
64 bool
65 select ARMADA_XP
66
Chris Packham53d601f2016-09-22 12:56:13 +120067config 88F6820
Phil Sutter42902522015-12-25 14:41:22 +010068 bool
69 select ARMADA_38X
70
Stefan Roesec3d89142015-08-25 13:18:38 +020071choice
Stefan Roese21b29fc2016-05-25 08:13:45 +020072 prompt "Armada XP/375/38x/3700/7K/8K board select"
Stefan Roesec3d89142015-08-25 13:18:38 +020073 optional
74
Stefan Roese0299c902015-10-20 15:14:47 +020075config TARGET_CLEARFOG
76 bool "Support ClearFog"
Chris Packham53d601f2016-09-22 12:56:13 +120077 select 88F6820
Stefan Roese0299c902015-10-20 15:14:47 +020078
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +020079config TARGET_MVEBU_ARMADA_37XX
80 bool "Support Armada 37xx platforms"
Stefan Roese01e62c72016-05-17 15:04:16 +020081 select ARMADA_3700
Simon Glassfedb4282017-06-14 21:28:21 -060082 imply SCSI
Stefan Roese01e62c72016-05-17 15:04:16 +020083
Stefan Roese606576d2016-01-29 09:14:54 +010084config TARGET_DB_88F6720
85 bool "Support DB-88F6720 Armada 375"
86 select ARMADA_375
87
Stefan Roesec3d89142015-08-25 13:18:38 +020088config TARGET_DB_88F6820_GP
89 bool "Support DB-88F6820-GP"
Chris Packham53d601f2016-09-22 12:56:13 +120090 select 88F6820
Stefan Roesec3d89142015-08-25 13:18:38 +020091
Chris Packhamc0def242016-09-22 12:56:14 +120092config TARGET_DB_88F6820_AMC
93 bool "Support DB-88F6820-AMC"
94 select 88F6820
95
Marek Behúnb6ee8602017-06-09 19:28:45 +020096config TARGET_TURRIS_OMNIA
97 bool "Support Turris Omnia"
98 select 88F6820
99
Stefan Roese633fa0e2016-10-25 10:56:19 +0200100config TARGET_MVEBU_ARMADA_8K
101 bool "Support Armada 7k/8k platforms"
Stefan Roese6f8c2d42016-05-25 08:21:21 +0200102 select ARMADA_8K
Tom Rinie5ec4812017-01-22 19:43:11 -0500103 select BOARD_LATE_INIT
Simon Glassfedb4282017-06-14 21:28:21 -0600104 imply SCSI
Stefan Roese6f8c2d42016-05-25 08:21:21 +0200105
Stefan Roesec3d89142015-08-25 13:18:38 +0200106config TARGET_DB_MV784MP_GP
107 bool "Support db-mv784mp-gp"
Phil Sutter42902522015-12-25 14:41:22 +0100108 select MV78460
Stefan Roesec3d89142015-08-25 13:18:38 +0200109
Phil Sutteraefb8f42015-12-25 14:41:25 +0100110config TARGET_DS414
111 bool "Support Synology DS414"
112 select MV78230
113
Stefan Roesec3d89142015-08-25 13:18:38 +0200114config TARGET_MAXBCM
115 bool "Support maxbcm"
Phil Sutter42902522015-12-25 14:41:22 +0100116 select MV78460
Stefan Roesec3d89142015-08-25 13:18:38 +0200117
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100118config TARGET_THEADORABLE
119 bool "Support theadorable Armada XP"
Tom Rinie5ec4812017-01-22 19:43:11 -0500120 select BOARD_LATE_INIT if USB
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100121 select MV78260
Simon Glass3bf926c2017-06-14 21:28:24 -0600122 imply CMD_SATA
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100123
Dirk Eibach60083262017-02-22 16:07:23 +0100124config TARGET_CONTROLCENTERDC
125 bool "Support CONTROLCENTERDC"
126 select 88F6820
127
Stefan Roesec3d89142015-08-25 13:18:38 +0200128endchoice
129
Stefan Roeseb322c832015-12-21 13:40:37 +0100130config SYS_BOARD
131 default "clearfog" if TARGET_CLEARFOG
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200132 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese606576d2016-01-29 09:14:54 +0100133 default "db-88f6720" if TARGET_DB_88F6720
Stefan Roeseb322c832015-12-21 13:40:37 +0100134 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
Chris Packhamc0def242016-09-22 12:56:14 +1200135 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
Marek Behúnb6ee8602017-06-09 19:28:45 +0200136 default "turris_omnia" if TARGET_TURRIS_OMNIA
Stefan Roese633fa0e2016-10-25 10:56:19 +0200137 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
Stefan Roeseb322c832015-12-21 13:40:37 +0100138 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
Phil Sutteraefb8f42015-12-25 14:41:25 +0100139 default "ds414" if TARGET_DS414
Stefan Roeseb322c832015-12-21 13:40:37 +0100140 default "maxbcm" if TARGET_MAXBCM
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100141 default "theadorable" if TARGET_THEADORABLE
Stefan Roeseb322c832015-12-21 13:40:37 +0100142
143config SYS_CONFIG_NAME
144 default "clearfog" if TARGET_CLEARFOG
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200145 default "mvebu_armada-37xx" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese606576d2016-01-29 09:14:54 +0100146 default "db-88f6720" if TARGET_DB_88F6720
Stefan Roeseb322c832015-12-21 13:40:37 +0100147 default "db-88f6820-gp" if TARGET_DB_88F6820_GP
Chris Packhamc0def242016-09-22 12:56:14 +1200148 default "db-88f6820-amc" if TARGET_DB_88F6820_AMC
Stefan Roese633fa0e2016-10-25 10:56:19 +0200149 default "mvebu_armada-8k" if TARGET_MVEBU_ARMADA_8K
Stefan Roeseb322c832015-12-21 13:40:37 +0100150 default "db-mv784mp-gp" if TARGET_DB_MV784MP_GP
Phil Sutteraefb8f42015-12-25 14:41:25 +0100151 default "ds414" if TARGET_DS414
Stefan Roeseb322c832015-12-21 13:40:37 +0100152 default "maxbcm" if TARGET_MAXBCM
Stefan Roeseb20c38a2016-01-20 08:13:29 +0100153 default "theadorable" if TARGET_THEADORABLE
Marek Behúnb6ee8602017-06-09 19:28:45 +0200154 default "turris_omnia" if TARGET_TURRIS_OMNIA
Stefan Roeseb322c832015-12-21 13:40:37 +0100155
156config SYS_VENDOR
157 default "Marvell" if TARGET_DB_MV784MP_GP
Konstantin Porotchkinc5330ae2017-02-16 13:52:22 +0200158 default "Marvell" if TARGET_MVEBU_ARMADA_37XX
Stefan Roese606576d2016-01-29 09:14:54 +0100159 default "Marvell" if TARGET_DB_88F6720
Stefan Roeseb322c832015-12-21 13:40:37 +0100160 default "Marvell" if TARGET_DB_88F6820_GP
Chris Packhamc0def242016-09-22 12:56:14 +1200161 default "Marvell" if TARGET_DB_88F6820_AMC
Stefan Roese633fa0e2016-10-25 10:56:19 +0200162 default "Marvell" if TARGET_MVEBU_ARMADA_8K
Stefan Roeseb322c832015-12-21 13:40:37 +0100163 default "solidrun" if TARGET_CLEARFOG
Phil Sutteraefb8f42015-12-25 14:41:25 +0100164 default "Synology" if TARGET_DS414
Marek Behúnb6ee8602017-06-09 19:28:45 +0200165 default "CZ.NIC" if TARGET_TURRIS_OMNIA
Stefan Roeseb322c832015-12-21 13:40:37 +0100166
Stefan Roesec3d89142015-08-25 13:18:38 +0200167config SYS_SOC
168 default "mvebu"
169
Marek Behúnb6ee8602017-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 Sixa1b6b0a2017-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 Roesec3d89142015-08-25 13:18:38 +0200215endif