blob: 114d243812940655e93601a32cc9955319a26c00 [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"
Siew Chin Lim988bfe42021-08-10 11:26:42 +080011 depends on TARGET_SOCFPGA_AGILEX || TARGET_SOCFPGA_N5X
Siew Chin Lim2492d592021-03-01 20:04:11 +080012 select FIT_IMAGE_POST_PROCESS
13 select SHA384
Alexandru Gagniuc5df5d692021-09-02 19:54:18 -050014 select SHA512
Siew Chin Lim2492d592021-03-01 20:04:11 +080015 select SPL_FIT_IMAGE_POST_PROCESS
16 help
17 All images loaded from FIT will be authenticated by Secure Device
18 Manager.
19
20config SOCFPGA_SECURE_VAB_AUTH_ALLOW_NON_FIT_IMAGE
21 bool "Allow non-FIT VAB signed images"
22 depends on SOCFPGA_SECURE_VAB_AUTH
23
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020024config SPL_SIZE_LIMIT
Simon Glassa8f0c942019-09-25 08:56:28 -060025 default 0x10000 if TARGET_SOCFPGA_GEN5
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020026
27config SPL_SIZE_LIMIT_PROVIDE_STACK
28 default 0x200 if TARGET_SOCFPGA_GEN5
29
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020030config SPL_STACK_R_ADDR
31 default 0x00800000 if TARGET_SOCFPGA_GEN5
32
Simon Glassb59037b2023-09-26 08:14:25 -060033config SPL_SYS_MALLOC_F
34 default y if TARGET_SOCFPGA_GEN5
35
Simon Goldschmidt4f57b9a2019-04-09 21:02:06 +020036config SPL_SYS_MALLOC_F_LEN
37 default 0x800 if TARGET_SOCFPGA_GEN5
38
Dalon Westergreen8d770f42017-02-10 17:15:34 -080039config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE
40 default 0xa2
41
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020042config SYS_MALLOC_F_LEN
43 default 0x2000 if TARGET_SOCFPGA_ARRIA10
44 default 0x2000 if TARGET_SOCFPGA_GEN5
45
Simon Glass72cc5382022-10-20 18:22:39 -060046config TEXT_BASE
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020047 default 0x01000040 if TARGET_SOCFPGA_ARRIA10
48 default 0x01000040 if TARGET_SOCFPGA_GEN5
49
Ley Foon Tan461d2982019-11-27 15:55:32 +080050config TARGET_SOCFPGA_AGILEX
51 bool
52 select ARMV8_MULTIENTRY
53 select ARMV8_SET_SMPEN
Siew Chin Limdbe60eb2020-12-24 18:21:12 +080054 select BINMAN if SPL_ATF
Ley Foon Tan461d2982019-11-27 15:55:32 +080055 select CLK
Chee Hong Ang89ac34d2020-08-07 11:50:05 +080056 select FPGA_INTEL_SDM_MAILBOX
Ley Foon Tan461d2982019-11-27 15:55:32 +080057 select NCORE_CACHE
58 select SPL_CLK if SPL
Siew Chin Lim8a714162021-03-01 20:04:10 +080059 select TARGET_SOCFPGA_SOC64
Ley Foon Tan461d2982019-11-27 15:55:32 +080060
Marek Vasut822e7952015-08-02 21:57:57 +020061config TARGET_SOCFPGA_ARRIA5
62 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060063 select TARGET_SOCFPGA_GEN5
Marek Vasut822e7952015-08-02 21:57:57 +020064
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080065config TARGET_SOCFPGA_ARRIA10
66 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080067 select SPL_ALTERA_SDRAM
Michal Simek7e7ba3b2018-07-23 15:55:15 +020068 select SPL_BOARD_INIT if SPL
Ley Foon Tan1d07b3e2020-04-07 15:43:14 +080069 select SPL_CACHE if SPL
Marek Vasute1dcd622018-07-30 15:56:19 +020070 select CLK
71 select SPL_CLK if SPL
Marek Vasut69fbb882018-08-13 18:32:38 +020072 select DM_I2C
Marek Vasut700b2c62018-08-13 18:32:38 +020073 select DM_RESET
74 select SPL_DM_RESET if SPL
Marek Vasut04c8f4f2018-08-13 20:06:46 +020075 select REGMAP
76 select SPL_REGMAP if SPL
77 select SYSCON
78 select SPL_SYSCON if SPL
79 select ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020080 imply FPGA_SOCFPGA
Simon Glass7611ac62019-09-25 08:56:27 -060081 imply SPL_USE_TINY_PRINTF
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080082
Marek Vasut822e7952015-08-02 21:57:57 +020083config TARGET_SOCFPGA_CYCLONE5
84 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060085 select TARGET_SOCFPGA_GEN5
86
87config TARGET_SOCFPGA_GEN5
88 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080089 select SPL_ALTERA_SDRAM
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020090 imply FPGA_SOCFPGA
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020091 imply SPL_SIZE_LIMIT_SUBTRACT_GD
92 imply SPL_SIZE_LIMIT_SUBTRACT_MALLOC
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020093 imply SPL_STACK_R
94 imply SPL_SYS_MALLOC_SIMPLE
Simon Glass7611ac62019-09-25 08:56:27 -060095 imply SPL_USE_TINY_PRINTF
Marek Vasut822e7952015-08-02 21:57:57 +020096
Siew Chin Lim988bfe42021-08-10 11:26:42 +080097config TARGET_SOCFPGA_N5X
98 bool
99 select ARMV8_MULTIENTRY
100 select ARMV8_SET_SMPEN
101 select BINMAN if SPL_ATF
102 select CLK
103 select FPGA_INTEL_SDM_MAILBOX
104 select NCORE_CACHE
105 select SPL_ALTERA_SDRAM
106 select SPL_CLK if SPL
107 select TARGET_SOCFPGA_SOC64
108
109config TARGET_SOCFPGA_N5X_SOCDK
110 bool "Intel eASIC SoCDK (N5X)"
111 select TARGET_SOCFPGA_N5X
112
Siew Chin Lim8a714162021-03-01 20:04:10 +0800113config TARGET_SOCFPGA_SOC64
114 bool
115
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800116config TARGET_SOCFPGA_STRATIX10
117 bool
118 select ARMV8_MULTIENTRY
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800119 select ARMV8_SET_SMPEN
Siew Chin Limdbe60eb2020-12-24 18:21:12 +0800120 select BINMAN if SPL_ATF
Chee Hong Ang14192452020-08-07 11:50:03 +0800121 select FPGA_INTEL_SDM_MAILBOX
Siew Chin Lim8a714162021-03-01 20:04:10 +0800122 select TARGET_SOCFPGA_SOC64
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800123
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900124choice
125 prompt "Altera SOCFPGA board select"
Joe Hershbergerf0699602015-05-12 14:46:23 -0500126 optional
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900127
Ley Foon Tan461d2982019-11-27 15:55:32 +0800128config TARGET_SOCFPGA_AGILEX_SOCDK
129 bool "Intel SOCFPGA SoCDK (Agilex)"
130 select TARGET_SOCFPGA_AGILEX
131
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200132config TARGET_SOCFPGA_ARIES_MCVEVK
133 bool "Aries MCVEVK (Cyclone V)"
134 select TARGET_SOCFPGA_CYCLONE5
135
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800136config TARGET_SOCFPGA_ARRIA10_SOCDK
137 bool "Altera SOCFPGA SoCDK (Arria 10)"
138 select TARGET_SOCFPGA_ARRIA10
139
Holger Brunckddef8892020-02-19 19:55:14 +0100140config TARGET_SOCFPGA_ARRIA5_SECU1
141 bool "ABB SECU1 (Arria V)"
142 select TARGET_SOCFPGA_ARRIA5
143 select VENDOR_KM
144
Marek Vasut822e7952015-08-02 21:57:57 +0200145config TARGET_SOCFPGA_ARRIA5_SOCDK
146 bool "Altera SOCFPGA SoCDK (Arria V)"
147 select TARGET_SOCFPGA_ARRIA5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900148
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200149config TARGET_SOCFPGA_CHAMELEONV3
150 bool "Google Chameleon v3 (Arria 10)"
151 select TARGET_SOCFPGA_ARRIA10
152
Marek Vasut822e7952015-08-02 21:57:57 +0200153config TARGET_SOCFPGA_CYCLONE5_SOCDK
154 bool "Altera SOCFPGA SoCDK (Cyclone V)"
155 select TARGET_SOCFPGA_CYCLONE5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900156
Marek Vasutb06dad22018-02-24 23:34:00 +0100157config TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
158 bool "Devboards DBM-SoC1 (Cyclone V)"
159 select TARGET_SOCFPGA_CYCLONE5
160
Marek Vasut567356a2015-11-23 17:06:27 +0100161config TARGET_SOCFPGA_EBV_SOCRATES
162 bool "EBV SoCrates (Cyclone V)"
163 select TARGET_SOCFPGA_CYCLONE5
164
Pavel Machek9802e872016-06-07 12:37:23 +0200165config TARGET_SOCFPGA_IS1
166 bool "IS1 (Cyclone V)"
167 select TARGET_SOCFPGA_CYCLONE5
168
Marek Vasut13da18c2019-06-27 00:19:31 +0200169config TARGET_SOCFPGA_SOFTING_VINING_FPGA
170 bool "Softing VIN|ING FPGA (Cyclone V)"
Tom Rini22d567e2017-01-22 19:43:11 -0500171 select BOARD_LATE_INIT
Marek Vasutba2ade92015-12-01 18:09:52 +0100172 select TARGET_SOCFPGA_CYCLONE5
173
Marek Vasut2e717ec2016-06-08 02:57:05 +0200174config TARGET_SOCFPGA_SR1500
175 bool "SR1500 (Cyclone V)"
176 select TARGET_SOCFPGA_CYCLONE5
177
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800178config TARGET_SOCFPGA_STRATIX10_SOCDK
179 bool "Intel SOCFPGA SoCDK (Stratix 10)"
180 select TARGET_SOCFPGA_STRATIX10
181
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500182config TARGET_SOCFPGA_TERASIC_DE0_NANO
183 bool "Terasic DE0-Nano-Atlas (Cyclone V)"
184 select TARGET_SOCFPGA_CYCLONE5
185
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700186config TARGET_SOCFPGA_TERASIC_DE10_NANO
187 bool "Terasic DE10-Nano (Cyclone V)"
188 select TARGET_SOCFPGA_CYCLONE5
189
Humberto Navesa563e2e2022-05-22 21:54:57 -0400190config TARGET_SOCFPGA_TERASIC_DE10_STANDARD
191 bool "Terasic DE10-Standard (Cyclone V)"
192 select TARGET_SOCFPGA_CYCLONE5
193
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100194config TARGET_SOCFPGA_TERASIC_DE1_SOC
195 bool "Terasic DE1-SoC (Cyclone V)"
196 select TARGET_SOCFPGA_CYCLONE5
197
Marek Vasutb415bad2015-06-21 17:28:53 +0200198config TARGET_SOCFPGA_TERASIC_SOCKIT
199 bool "Terasic SoCkit (Cyclone V)"
200 select TARGET_SOCFPGA_CYCLONE5
201
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900202endchoice
203
204config SYS_BOARD
Ley Foon Tan461d2982019-11-27 15:55:32 +0800205 default "agilex-socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasut3f4c5612015-08-10 21:24:53 +0200206 default "arria5-socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800207 default "arria10-socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200208 default "chameleonv3" if TARGET_SOCFPGA_CHAMELEONV3
Marek Vasut3f4c5612015-08-10 21:24:53 +0200209 default "cyclone5-socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100210 default "dbm-soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500211 default "de0-nano-soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100212 default "de1-soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700213 default "de10-nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Navesa563e2e2022-05-22 21:54:57 -0400214 default "de10-standard" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Pavel Machek9802e872016-06-07 12:37:23 +0200215 default "is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200216 default "mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800217 default "n5x-socdk" if TARGET_SOCFPGA_N5X_SOCDK
Holger Brunckddef8892020-02-19 19:55:14 +0100218 default "secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasutb415bad2015-06-21 17:28:53 +0200219 default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100220 default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100221 default "sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800222 default "stratix10-socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200223 default "vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900224
225config SYS_VENDOR
Ley Foon Tan461d2982019-11-27 15:55:32 +0800226 default "intel" if TARGET_SOCFPGA_AGILEX_SOCDK
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800227 default "intel" if TARGET_SOCFPGA_N5X_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200228 default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800229 default "altera" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200230 default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800231 default "altera" if TARGET_SOCFPGA_STRATIX10_SOCDK
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200232 default "aries" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb06dad22018-02-24 23:34:00 +0100233 default "devboards" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Marek Vasut567356a2015-11-23 17:06:27 +0100234 default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200235 default "google" if TARGET_SOCFPGA_CHAMELEONV3
Holger Brunckddef8892020-02-19 19:55:14 +0100236 default "keymile" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasut13da18c2019-06-27 00:19:31 +0200237 default "softing" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500238 default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100239 default "terasic" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700240 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Navesa563e2e2022-05-22 21:54:57 -0400241 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Marek Vasutb415bad2015-06-21 17:28:53 +0200242 default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900243
244config SYS_SOC
245 default "socfpga"
246
247config SYS_CONFIG_NAME
Ley Foon Tan461d2982019-11-27 15:55:32 +0800248 default "socfpga_agilex_socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Holger Brunckddef8892020-02-19 19:55:14 +0100249 default "socfpga_arria5_secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500250 default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800251 default "socfpga_arria10_socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Paweł Anikiel5ee903d2022-06-17 12:47:20 +0200252 default "socfpga_chameleonv3" if TARGET_SOCFPGA_CHAMELEONV3
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500253 default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100254 default "socfpga_dbm_soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500255 default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100256 default "socfpga_de1_soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700257 default "socfpga_de10_nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Navesa563e2e2022-05-22 21:54:57 -0400258 default "socfpga_de10_standard" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Pavel Machek9802e872016-06-07 12:37:23 +0200259 default "socfpga_is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200260 default "socfpga_mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Siew Chin Lim988bfe42021-08-10 11:26:42 +0800261 default "socfpga_n5x_socdk" if TARGET_SOCFPGA_N5X_SOCDK
Marek Vasutb415bad2015-06-21 17:28:53 +0200262 default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100263 default "socfpga_socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100264 default "socfpga_sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800265 default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200266 default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900267
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900268endif