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