blob: 1008232cac801fbd6b709526d8cec667b458be75 [file] [log] [blame]
Masahiro Yamada144a3e02015-04-21 20:38:20 +09001if ARCH_SOCFPGA
2
Simon Goldschmidt17d78522019-10-22 21:29:48 +02003config ERR_PTR_OFFSET
4 default 0xfffec000 if TARGET_SOCFPGA_GEN5 # Boot ROM range
5
Simon Goldschmidtb1c42692019-04-09 21:02:05 +02006config NR_DRAM_BANKS
7 default 1
8
Siew Chin Lim2492d592021-03-01 20:04:11 +08009config SOCFPGA_SECURE_VAB_AUTH
10 bool "Enable boot image authentication with Secure Device Manager"
Jit Loon Lim977071e2024-03-12 22:01:03 +080011 depends on TARGET_SOCFPGA_AGILEX || TARGET_SOCFPGA_N5X || \
12 TARGET_SOCFPGA_AGILEX5
Siew Chin Lim2492d592021-03-01 20:04:11 +080013 select FIT_IMAGE_POST_PROCESS
14 select SHA384
Alexandru Gagniuc5df5d692021-09-02 19:54:18 -050015 select SHA512
Siew Chin Lim2492d592021-03-01 20:04:11 +080016 select SPL_FIT_IMAGE_POST_PROCESS
17 help
18 All images loaded from FIT will be authenticated by Secure Device
19 Manager.
20
21config SOCFPGA_SECURE_VAB_AUTH_ALLOW_NON_FIT_IMAGE
22 bool "Allow non-FIT VAB signed images"
23 depends on SOCFPGA_SECURE_VAB_AUTH
24
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020025config SPL_SIZE_LIMIT
Simon Glassa8f0c942019-09-25 08:56:28 -060026 default 0x10000 if TARGET_SOCFPGA_GEN5
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020027
28config SPL_SIZE_LIMIT_PROVIDE_STACK
29 default 0x200 if TARGET_SOCFPGA_GEN5
30
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020031config SPL_STACK_R_ADDR
32 default 0x00800000 if TARGET_SOCFPGA_GEN5
33
Simon Glassb59037b2023-09-26 08:14:25 -060034config SPL_SYS_MALLOC_F
35 default y if TARGET_SOCFPGA_GEN5
36
Simon Goldschmidt4f57b9a2019-04-09 21:02:06 +020037config SPL_SYS_MALLOC_F_LEN
38 default 0x800 if TARGET_SOCFPGA_GEN5
39
Dalon Westergreen8d770f42017-02-10 17:15:34 -080040config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE
41 default 0xa2
42
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020043config SYS_MALLOC_F_LEN
44 default 0x2000 if TARGET_SOCFPGA_ARRIA10
45 default 0x2000 if TARGET_SOCFPGA_GEN5
46
Simon Glass72cc5382022-10-20 18:22:39 -060047config TEXT_BASE
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020048 default 0x01000040 if TARGET_SOCFPGA_ARRIA10
49 default 0x01000040 if TARGET_SOCFPGA_GEN5
50
Ley Foon Tan461d2982019-11-27 15:55:32 +080051config TARGET_SOCFPGA_AGILEX
52 bool
53 select ARMV8_MULTIENTRY
54 select ARMV8_SET_SMPEN
Siew Chin Limdbe60eb2020-12-24 18:21:12 +080055 select BINMAN if SPL_ATF
Ley Foon Tan461d2982019-11-27 15:55:32 +080056 select CLK
Chee Hong Ang89ac34d2020-08-07 11:50:05 +080057 select FPGA_INTEL_SDM_MAILBOX
Ley Foon Tan461d2982019-11-27 15:55:32 +080058 select NCORE_CACHE
59 select SPL_CLK if SPL
Siew Chin Lim8a714162021-03-01 20:04:10 +080060 select TARGET_SOCFPGA_SOC64
Ley Foon Tan461d2982019-11-27 15:55:32 +080061
Jit Loon Lim977071e2024-03-12 22:01:03 +080062config TARGET_SOCFPGA_AGILEX5
63 bool
64 select BINMAN if SPL_ATF
65 select CLK
66 select FPGA_INTEL_SDM_MAILBOX
67 select GICV3
68 select SPL_CLK if SPL
69 select TARGET_SOCFPGA_SOC64
70
Marek Vasut822e7952015-08-02 21:57:57 +020071config TARGET_SOCFPGA_ARRIA5
72 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060073 select TARGET_SOCFPGA_GEN5
Marek Vasut822e7952015-08-02 21:57:57 +020074
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080075config TARGET_SOCFPGA_ARRIA10
76 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080077 select SPL_ALTERA_SDRAM
Michal Simek7e7ba3b2018-07-23 15:55:15 +020078 select SPL_BOARD_INIT if SPL
Ley Foon Tan1d07b3e2020-04-07 15:43:14 +080079 select SPL_CACHE if SPL
Marek Vasute1dcd622018-07-30 15:56:19 +020080 select CLK
81 select SPL_CLK if SPL
Marek Vasut69fbb882018-08-13 18:32:38 +020082 select DM_I2C
Marek Vasut700b2c62018-08-13 18:32:38 +020083 select DM_RESET
84 select SPL_DM_RESET if SPL
Marek Vasut04c8f4f2018-08-13 20:06:46 +020085 select REGMAP
86 select SPL_REGMAP if SPL
87 select SYSCON
88 select SPL_SYSCON if SPL
89 select ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020090 imply FPGA_SOCFPGA
Simon Glass7611ac62019-09-25 08:56:27 -060091 imply SPL_USE_TINY_PRINTF
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080092
Marek Vasut822e7952015-08-02 21:57:57 +020093config TARGET_SOCFPGA_CYCLONE5
94 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060095 select TARGET_SOCFPGA_GEN5
96
97config TARGET_SOCFPGA_GEN5
98 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080099 select SPL_ALTERA_SDRAM
Simon Goldschmidtb1c42692019-04-09 21:02:05 +0200100 imply FPGA_SOCFPGA
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +0200101 imply SPL_SIZE_LIMIT_SUBTRACT_GD
102 imply SPL_SIZE_LIMIT_SUBTRACT_MALLOC
Simon Goldschmidtb1c42692019-04-09 21:02:05 +0200103 imply SPL_STACK_R
104 imply SPL_SYS_MALLOC_SIMPLE
Simon Glass7611ac62019-09-25 08:56:27 -0600105 imply SPL_USE_TINY_PRINTF
Marek Vasut822e7952015-08-02 21:57:57 +0200106
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800107config TARGET_SOCFPGA_N5X
108 bool
109 select ARMV8_MULTIENTRY
110 select ARMV8_SET_SMPEN
111 select BINMAN if SPL_ATF
112 select CLK
113 select FPGA_INTEL_SDM_MAILBOX
114 select NCORE_CACHE
115 select SPL_ALTERA_SDRAM
116 select SPL_CLK if SPL
117 select TARGET_SOCFPGA_SOC64
118
119config TARGET_SOCFPGA_N5X_SOCDK
120 bool "Intel eASIC SoCDK (N5X)"
121 select TARGET_SOCFPGA_N5X
122
Siew Chin Lim8a714162021-03-01 20:04:10 +0800123config TARGET_SOCFPGA_SOC64
124 bool
125
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800126config TARGET_SOCFPGA_STRATIX10
127 bool
128 select ARMV8_MULTIENTRY
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800129 select ARMV8_SET_SMPEN
Siew Chin Limdbe60eb2020-12-24 18:21:12 +0800130 select BINMAN if SPL_ATF
Chee Hong Ang14192452020-08-07 11:50:03 +0800131 select FPGA_INTEL_SDM_MAILBOX
Siew Chin Lim8a714162021-03-01 20:04:10 +0800132 select TARGET_SOCFPGA_SOC64
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800133
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900134choice
135 prompt "Altera SOCFPGA board select"
Joe Hershbergerf0699602015-05-12 14:46:23 -0500136 optional
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900137
Ley Foon Tan461d2982019-11-27 15:55:32 +0800138config TARGET_SOCFPGA_AGILEX_SOCDK
139 bool "Intel SOCFPGA SoCDK (Agilex)"
140 select TARGET_SOCFPGA_AGILEX
141
Jit Loon Lim977071e2024-03-12 22:01:03 +0800142config TARGET_SOCFPGA_AGILEX5_SOCDK
143 bool "Intel SOCFPGA SoCDK (Agilex5)"
144 select TARGET_SOCFPGA_AGILEX5
145
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200146config TARGET_SOCFPGA_ARIES_MCVEVK
147 bool "Aries MCVEVK (Cyclone V)"
148 select TARGET_SOCFPGA_CYCLONE5
149
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800150config TARGET_SOCFPGA_ARRIA10_SOCDK
151 bool "Altera SOCFPGA SoCDK (Arria 10)"
152 select TARGET_SOCFPGA_ARRIA10
153
Holger Brunckddef8892020-02-19 19:55:14 +0100154config TARGET_SOCFPGA_ARRIA5_SECU1
155 bool "ABB SECU1 (Arria V)"
156 select TARGET_SOCFPGA_ARRIA5
157 select VENDOR_KM
158
Marek Vasut822e7952015-08-02 21:57:57 +0200159config TARGET_SOCFPGA_ARRIA5_SOCDK
160 bool "Altera SOCFPGA SoCDK (Arria V)"
161 select TARGET_SOCFPGA_ARRIA5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900162
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200163config TARGET_SOCFPGA_CHAMELEONV3
164 bool "Google Chameleon v3 (Arria 10)"
165 select TARGET_SOCFPGA_ARRIA10
166
Marek Vasut822e7952015-08-02 21:57:57 +0200167config TARGET_SOCFPGA_CYCLONE5_SOCDK
168 bool "Altera SOCFPGA SoCDK (Cyclone V)"
169 select TARGET_SOCFPGA_CYCLONE5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900170
Marek Vasutb06dad22018-02-24 23:34:00 +0100171config TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
172 bool "Devboards DBM-SoC1 (Cyclone V)"
173 select TARGET_SOCFPGA_CYCLONE5
174
Marek Vasut567356a2015-11-23 17:06:27 +0100175config TARGET_SOCFPGA_EBV_SOCRATES
176 bool "EBV SoCrates (Cyclone V)"
177 select TARGET_SOCFPGA_CYCLONE5
178
Pavel Machek9802e872016-06-07 12:37:23 +0200179config TARGET_SOCFPGA_IS1
180 bool "IS1 (Cyclone V)"
181 select TARGET_SOCFPGA_CYCLONE5
182
Marek Vasut13da18c2019-06-27 00:19:31 +0200183config TARGET_SOCFPGA_SOFTING_VINING_FPGA
184 bool "Softing VIN|ING FPGA (Cyclone V)"
Tom Rini22d567e2017-01-22 19:43:11 -0500185 select BOARD_LATE_INIT
Marek Vasutba2ade92015-12-01 18:09:52 +0100186 select TARGET_SOCFPGA_CYCLONE5
187
Marek Vasut2e717ec2016-06-08 02:57:05 +0200188config TARGET_SOCFPGA_SR1500
189 bool "SR1500 (Cyclone V)"
190 select TARGET_SOCFPGA_CYCLONE5
191
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800192config TARGET_SOCFPGA_STRATIX10_SOCDK
193 bool "Intel SOCFPGA SoCDK (Stratix 10)"
194 select TARGET_SOCFPGA_STRATIX10
195
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500196config TARGET_SOCFPGA_TERASIC_DE0_NANO
197 bool "Terasic DE0-Nano-Atlas (Cyclone V)"
198 select TARGET_SOCFPGA_CYCLONE5
199
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700200config TARGET_SOCFPGA_TERASIC_DE10_NANO
201 bool "Terasic DE10-Nano (Cyclone V)"
202 select TARGET_SOCFPGA_CYCLONE5
203
Humberto Navesa563e2e2022-05-22 21:54:57 -0400204config TARGET_SOCFPGA_TERASIC_DE10_STANDARD
205 bool "Terasic DE10-Standard (Cyclone V)"
206 select TARGET_SOCFPGA_CYCLONE5
207
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100208config TARGET_SOCFPGA_TERASIC_DE1_SOC
209 bool "Terasic DE1-SoC (Cyclone V)"
210 select TARGET_SOCFPGA_CYCLONE5
211
Marek Vasutb415bad2015-06-21 17:28:53 +0200212config TARGET_SOCFPGA_TERASIC_SOCKIT
213 bool "Terasic SoCkit (Cyclone V)"
214 select TARGET_SOCFPGA_CYCLONE5
215
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900216endchoice
217
218config SYS_BOARD
Jit Loon Lim977071e2024-03-12 22:01:03 +0800219 default "agilex5-socdk" if TARGET_SOCFPGA_AGILEX5_SOCDK
Ley Foon Tan461d2982019-11-27 15:55:32 +0800220 default "agilex-socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasut3f4c5612015-08-10 21:24:53 +0200221 default "arria5-socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800222 default "arria10-socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200223 default "chameleonv3" if TARGET_SOCFPGA_CHAMELEONV3
Marek Vasut3f4c5612015-08-10 21:24:53 +0200224 default "cyclone5-socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100225 default "dbm-soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500226 default "de0-nano-soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100227 default "de1-soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700228 default "de10-nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Navesa563e2e2022-05-22 21:54:57 -0400229 default "de10-standard" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Pavel Machek9802e872016-06-07 12:37:23 +0200230 default "is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200231 default "mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800232 default "n5x-socdk" if TARGET_SOCFPGA_N5X_SOCDK
Holger Brunckddef8892020-02-19 19:55:14 +0100233 default "secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasutb415bad2015-06-21 17:28:53 +0200234 default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100235 default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100236 default "sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800237 default "stratix10-socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200238 default "vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900239
240config SYS_VENDOR
Jit Loon Lim977071e2024-03-12 22:01:03 +0800241 default "intel" if TARGET_SOCFPGA_AGILEX5_SOCDK
Ley Foon Tan461d2982019-11-27 15:55:32 +0800242 default "intel" if TARGET_SOCFPGA_AGILEX_SOCDK
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800243 default "intel" if TARGET_SOCFPGA_N5X_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200244 default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800245 default "altera" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200246 default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800247 default "altera" if TARGET_SOCFPGA_STRATIX10_SOCDK
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200248 default "aries" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb06dad22018-02-24 23:34:00 +0100249 default "devboards" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Marek Vasut567356a2015-11-23 17:06:27 +0100250 default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200251 default "google" if TARGET_SOCFPGA_CHAMELEONV3
Holger Brunckddef8892020-02-19 19:55:14 +0100252 default "keymile" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasut13da18c2019-06-27 00:19:31 +0200253 default "softing" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500254 default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100255 default "terasic" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700256 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Navesa563e2e2022-05-22 21:54:57 -0400257 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Marek Vasutb415bad2015-06-21 17:28:53 +0200258 default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900259
260config SYS_SOC
261 default "socfpga"
262
263config SYS_CONFIG_NAME
Jit Loon Lim977071e2024-03-12 22:01:03 +0800264 default "socfpga_agilex5_socdk" if TARGET_SOCFPGA_AGILEX5_SOCDK
Ley Foon Tan461d2982019-11-27 15:55:32 +0800265 default "socfpga_agilex_socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Holger Brunckddef8892020-02-19 19:55:14 +0100266 default "socfpga_arria5_secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500267 default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800268 default "socfpga_arria10_socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200269 default "socfpga_chameleonv3" if TARGET_SOCFPGA_CHAMELEONV3
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500270 default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100271 default "socfpga_dbm_soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500272 default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100273 default "socfpga_de1_soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700274 default "socfpga_de10_nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Navesa563e2e2022-05-22 21:54:57 -0400275 default "socfpga_de10_standard" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Pavel Machek9802e872016-06-07 12:37:23 +0200276 default "socfpga_is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200277 default "socfpga_mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800278 default "socfpga_n5x_socdk" if TARGET_SOCFPGA_N5X_SOCDK
Marek Vasutb415bad2015-06-21 17:28:53 +0200279 default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100280 default "socfpga_socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100281 default "socfpga_sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800282 default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200283 default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900284
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900285endif