blob: 547e47ed9df03c430ab6e32f4d344603c69e84ed [file] [log] [blame]
Masahiro Yamada7865f4b2015-04-21 20:38:20 +09001if ARCH_SOCFPGA
2
Simon Goldschmidta43b60c2019-10-22 21:29:48 +02003config ERR_PTR_OFFSET
4 default 0xfffec000 if TARGET_SOCFPGA_GEN5 # Boot ROM range
5
Simon Goldschmidtaef44282019-04-09 21:02:05 +02006config NR_DRAM_BANKS
7 default 1
8
Siew Chin Lim1bc20892021-03-01 20:04:11 +08009config SOCFPGA_SECURE_VAB_AUTH
10 bool "Enable boot image authentication with Secure Device Manager"
Siew Chin Lim31b51cb2021-08-10 11:26:42 +080011 depends on TARGET_SOCFPGA_AGILEX || TARGET_SOCFPGA_N5X
Siew Chin Lim1bc20892021-03-01 20:04:11 +080012 select FIT_IMAGE_POST_PROCESS
13 select SHA384
Alexandru Gagniuce60e4492021-09-02 19:54:18 -050014 select SHA512
Siew Chin Lim1bc20892021-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 Goldschmidtd6d383c2019-06-13 21:50:28 +020024config SPL_SIZE_LIMIT
Simon Glassb51882d2019-09-25 08:56:28 -060025 default 0x10000 if TARGET_SOCFPGA_GEN5
Simon Goldschmidtd6d383c2019-06-13 21:50:28 +020026
27config SPL_SIZE_LIMIT_PROVIDE_STACK
28 default 0x200 if TARGET_SOCFPGA_GEN5
29
Simon Goldschmidtaef44282019-04-09 21:02:05 +020030config SPL_STACK_R_ADDR
31 default 0x00800000 if TARGET_SOCFPGA_GEN5
32
Simon Goldschmidt9dc61aa2019-04-09 21:02:06 +020033config SPL_SYS_MALLOC_F_LEN
34 default 0x800 if TARGET_SOCFPGA_GEN5
35
Dalon Westergreenf0fb4fa2017-02-10 17:15:34 -080036config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE
37 default 0xa2
38
Simon Goldschmidtaef44282019-04-09 21:02:05 +020039config SYS_MALLOC_F_LEN
40 default 0x2000 if TARGET_SOCFPGA_ARRIA10
41 default 0x2000 if TARGET_SOCFPGA_GEN5
42
43config SYS_TEXT_BASE
44 default 0x01000040 if TARGET_SOCFPGA_ARRIA10
45 default 0x01000040 if TARGET_SOCFPGA_GEN5
46
Ley Foon Tana76b7112019-11-27 15:55:32 +080047config TARGET_SOCFPGA_AGILEX
48 bool
49 select ARMV8_MULTIENTRY
50 select ARMV8_SET_SMPEN
Siew Chin Lim362787e2020-12-24 18:21:12 +080051 select BINMAN if SPL_ATF
Ley Foon Tana76b7112019-11-27 15:55:32 +080052 select CLK
Chee Hong Angbd99fa52020-08-07 11:50:05 +080053 select FPGA_INTEL_SDM_MAILBOX
Ley Foon Tana76b7112019-11-27 15:55:32 +080054 select NCORE_CACHE
55 select SPL_CLK if SPL
Siew Chin Lim9a5bbdf2021-03-01 20:04:10 +080056 select TARGET_SOCFPGA_SOC64
Ley Foon Tana76b7112019-11-27 15:55:32 +080057
Marek Vasutcd9b7312015-08-02 21:57:57 +020058config TARGET_SOCFPGA_ARRIA5
59 bool
Dinh Nguyened77aeb2015-12-02 13:31:25 -060060 select TARGET_SOCFPGA_GEN5
Marek Vasutcd9b7312015-08-02 21:57:57 +020061
Ley Foon Tand89e9792017-04-26 02:44:48 +080062config TARGET_SOCFPGA_ARRIA10
63 bool
Ley Foon Tan5918afd2019-05-06 09:55:59 +080064 select SPL_ALTERA_SDRAM
Michal Simek58008cb2018-07-23 15:55:15 +020065 select SPL_BOARD_INIT if SPL
Ley Foon Tan3958ef32020-04-07 15:43:14 +080066 select SPL_CACHE if SPL
Marek Vasut934aec72018-07-30 15:56:19 +020067 select CLK
68 select SPL_CLK if SPL
Marek Vasutfe88c2f2018-08-13 18:32:38 +020069 select DM_I2C
Marek Vasut8145c1c2018-08-13 18:32:38 +020070 select DM_RESET
71 select SPL_DM_RESET if SPL
Marek Vasutd6a61da2018-08-13 20:06:46 +020072 select REGMAP
73 select SPL_REGMAP if SPL
74 select SYSCON
75 select SPL_SYSCON if SPL
76 select ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtaef44282019-04-09 21:02:05 +020077 imply FPGA_SOCFPGA
Simon Glass27084c02019-09-25 08:56:27 -060078 imply SPL_USE_TINY_PRINTF
Ley Foon Tand89e9792017-04-26 02:44:48 +080079
Marek Vasutcd9b7312015-08-02 21:57:57 +020080config TARGET_SOCFPGA_CYCLONE5
81 bool
Dinh Nguyened77aeb2015-12-02 13:31:25 -060082 select TARGET_SOCFPGA_GEN5
83
84config TARGET_SOCFPGA_GEN5
85 bool
Ley Foon Tan5918afd2019-05-06 09:55:59 +080086 select SPL_ALTERA_SDRAM
Simon Goldschmidtaef44282019-04-09 21:02:05 +020087 imply FPGA_SOCFPGA
Simon Goldschmidtd6d383c2019-06-13 21:50:28 +020088 imply SPL_SIZE_LIMIT_SUBTRACT_GD
89 imply SPL_SIZE_LIMIT_SUBTRACT_MALLOC
Simon Goldschmidtaef44282019-04-09 21:02:05 +020090 imply SPL_STACK_R
91 imply SPL_SYS_MALLOC_SIMPLE
Simon Glass27084c02019-09-25 08:56:27 -060092 imply SPL_USE_TINY_PRINTF
Marek Vasutcd9b7312015-08-02 21:57:57 +020093
Siew Chin Lim31b51cb2021-08-10 11:26:42 +080094config TARGET_SOCFPGA_N5X
95 bool
96 select ARMV8_MULTIENTRY
97 select ARMV8_SET_SMPEN
98 select BINMAN if SPL_ATF
99 select CLK
100 select FPGA_INTEL_SDM_MAILBOX
101 select NCORE_CACHE
102 select SPL_ALTERA_SDRAM
103 select SPL_CLK if SPL
104 select TARGET_SOCFPGA_SOC64
105
106config TARGET_SOCFPGA_N5X_SOCDK
107 bool "Intel eASIC SoCDK (N5X)"
108 select TARGET_SOCFPGA_N5X
109
Siew Chin Lim9a5bbdf2021-03-01 20:04:10 +0800110config TARGET_SOCFPGA_SOC64
111 bool
112
Ley Foon Tana6847292018-05-24 00:17:32 +0800113config TARGET_SOCFPGA_STRATIX10
114 bool
115 select ARMV8_MULTIENTRY
Ley Foon Tana6847292018-05-24 00:17:32 +0800116 select ARMV8_SET_SMPEN
Siew Chin Lim362787e2020-12-24 18:21:12 +0800117 select BINMAN if SPL_ATF
Chee Hong Angd2170162020-08-07 11:50:03 +0800118 select FPGA_INTEL_SDM_MAILBOX
Siew Chin Lim9a5bbdf2021-03-01 20:04:10 +0800119 select TARGET_SOCFPGA_SOC64
Ley Foon Tana6847292018-05-24 00:17:32 +0800120
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900121choice
122 prompt "Altera SOCFPGA board select"
Joe Hershbergera26cd042015-05-12 14:46:23 -0500123 optional
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900124
Ley Foon Tana76b7112019-11-27 15:55:32 +0800125config TARGET_SOCFPGA_AGILEX_SOCDK
126 bool "Intel SOCFPGA SoCDK (Agilex)"
127 select TARGET_SOCFPGA_AGILEX
128
Wolfgang Grandegger990ed442019-05-12 19:25:18 +0200129config TARGET_SOCFPGA_ARIES_MCVEVK
130 bool "Aries MCVEVK (Cyclone V)"
131 select TARGET_SOCFPGA_CYCLONE5
132
Ley Foon Tand89e9792017-04-26 02:44:48 +0800133config TARGET_SOCFPGA_ARRIA10_SOCDK
134 bool "Altera SOCFPGA SoCDK (Arria 10)"
135 select TARGET_SOCFPGA_ARRIA10
136
Holger Brunck468ba8d2020-02-19 19:55:14 +0100137config TARGET_SOCFPGA_ARRIA5_SECU1
138 bool "ABB SECU1 (Arria V)"
139 select TARGET_SOCFPGA_ARRIA5
140 select VENDOR_KM
141
Marek Vasutcd9b7312015-08-02 21:57:57 +0200142config TARGET_SOCFPGA_ARRIA5_SOCDK
143 bool "Altera SOCFPGA SoCDK (Arria V)"
144 select TARGET_SOCFPGA_ARRIA5
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900145
Marek Vasutcd9b7312015-08-02 21:57:57 +0200146config TARGET_SOCFPGA_CYCLONE5_SOCDK
147 bool "Altera SOCFPGA SoCDK (Cyclone V)"
148 select TARGET_SOCFPGA_CYCLONE5
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900149
Marek Vasut7fb46432018-02-24 23:34:00 +0100150config TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
151 bool "Devboards DBM-SoC1 (Cyclone V)"
152 select TARGET_SOCFPGA_CYCLONE5
153
Marek Vasut856b30d2015-11-23 17:06:27 +0100154config TARGET_SOCFPGA_EBV_SOCRATES
155 bool "EBV SoCrates (Cyclone V)"
156 select TARGET_SOCFPGA_CYCLONE5
157
Pavel Machek35546f62016-06-07 12:37:23 +0200158config TARGET_SOCFPGA_IS1
159 bool "IS1 (Cyclone V)"
160 select TARGET_SOCFPGA_CYCLONE5
161
Marek Vasut94a16b82019-06-27 00:19:31 +0200162config TARGET_SOCFPGA_SOFTING_VINING_FPGA
163 bool "Softing VIN|ING FPGA (Cyclone V)"
Tom Rinie5ec4812017-01-22 19:43:11 -0500164 select BOARD_LATE_INIT
Marek Vasut569a1912015-12-01 18:09:52 +0100165 select TARGET_SOCFPGA_CYCLONE5
166
Marek Vasutcf0a8da2016-06-08 02:57:05 +0200167config TARGET_SOCFPGA_SR1500
168 bool "SR1500 (Cyclone V)"
169 select TARGET_SOCFPGA_CYCLONE5
170
Ley Foon Tana6847292018-05-24 00:17:32 +0800171config TARGET_SOCFPGA_STRATIX10_SOCDK
172 bool "Intel SOCFPGA SoCDK (Stratix 10)"
173 select TARGET_SOCFPGA_STRATIX10
174
Dinh Nguyen55c7a762015-09-01 17:41:52 -0500175config TARGET_SOCFPGA_TERASIC_DE0_NANO
176 bool "Terasic DE0-Nano-Atlas (Cyclone V)"
177 select TARGET_SOCFPGA_CYCLONE5
178
Dalon Westergreen6bd041f2017-04-18 08:11:16 -0700179config TARGET_SOCFPGA_TERASIC_DE10_NANO
180 bool "Terasic DE10-Nano (Cyclone V)"
181 select TARGET_SOCFPGA_CYCLONE5
182
Humberto Naves1b051362022-05-22 21:54:57 -0400183config TARGET_SOCFPGA_TERASIC_DE10_STANDARD
184 bool "Terasic DE10-Standard (Cyclone V)"
185 select TARGET_SOCFPGA_CYCLONE5
186
Anatolij Gustschine9c847c2016-11-14 16:07:10 +0100187config TARGET_SOCFPGA_TERASIC_DE1_SOC
188 bool "Terasic DE1-SoC (Cyclone V)"
189 select TARGET_SOCFPGA_CYCLONE5
190
Marek Vasut952caa22015-06-21 17:28:53 +0200191config TARGET_SOCFPGA_TERASIC_SOCKIT
192 bool "Terasic SoCkit (Cyclone V)"
193 select TARGET_SOCFPGA_CYCLONE5
194
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900195endchoice
196
197config SYS_BOARD
Ley Foon Tana76b7112019-11-27 15:55:32 +0800198 default "agilex-socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasutf0892402015-08-10 21:24:53 +0200199 default "arria5-socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tand89e9792017-04-26 02:44:48 +0800200 default "arria10-socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasutf0892402015-08-10 21:24:53 +0200201 default "cyclone5-socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasut7fb46432018-02-24 23:34:00 +0100202 default "dbm-soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyen55c7a762015-09-01 17:41:52 -0500203 default "de0-nano-soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschine9c847c2016-11-14 16:07:10 +0100204 default "de1-soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen6bd041f2017-04-18 08:11:16 -0700205 default "de10-nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Naves1b051362022-05-22 21:54:57 -0400206 default "de10-standard" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Pavel Machek35546f62016-06-07 12:37:23 +0200207 default "is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger990ed442019-05-12 19:25:18 +0200208 default "mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Siew Chin Lim31b51cb2021-08-10 11:26:42 +0800209 default "n5x-socdk" if TARGET_SOCFPGA_N5X_SOCDK
Holger Brunck468ba8d2020-02-19 19:55:14 +0100210 default "secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasut952caa22015-06-21 17:28:53 +0200211 default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut856b30d2015-11-23 17:06:27 +0100212 default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roeseae9996c2015-11-18 11:06:09 +0100213 default "sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tana6847292018-05-24 00:17:32 +0800214 default "stratix10-socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut94a16b82019-06-27 00:19:31 +0200215 default "vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900216
217config SYS_VENDOR
Ley Foon Tana76b7112019-11-27 15:55:32 +0800218 default "intel" if TARGET_SOCFPGA_AGILEX_SOCDK
Siew Chin Lim31b51cb2021-08-10 11:26:42 +0800219 default "intel" if TARGET_SOCFPGA_N5X_SOCDK
Marek Vasutcd9b7312015-08-02 21:57:57 +0200220 default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tand89e9792017-04-26 02:44:48 +0800221 default "altera" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasutcd9b7312015-08-02 21:57:57 +0200222 default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Ley Foon Tana6847292018-05-24 00:17:32 +0800223 default "altera" if TARGET_SOCFPGA_STRATIX10_SOCDK
Wolfgang Grandegger990ed442019-05-12 19:25:18 +0200224 default "aries" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasut7fb46432018-02-24 23:34:00 +0100225 default "devboards" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Marek Vasut856b30d2015-11-23 17:06:27 +0100226 default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
Holger Brunck468ba8d2020-02-19 19:55:14 +0100227 default "keymile" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasut94a16b82019-06-27 00:19:31 +0200228 default "softing" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Dinh Nguyen55c7a762015-09-01 17:41:52 -0500229 default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschine9c847c2016-11-14 16:07:10 +0100230 default "terasic" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen6bd041f2017-04-18 08:11:16 -0700231 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Naves1b051362022-05-22 21:54:57 -0400232 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Marek Vasut952caa22015-06-21 17:28:53 +0200233 default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900234
235config SYS_SOC
236 default "socfpga"
237
238config SYS_CONFIG_NAME
Ley Foon Tana76b7112019-11-27 15:55:32 +0800239 default "socfpga_agilex_socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Holger Brunck468ba8d2020-02-19 19:55:14 +0100240 default "socfpga_arria5_secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Dinh Nguyen3cbc7b82015-09-22 17:01:32 -0500241 default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tand89e9792017-04-26 02:44:48 +0800242 default "socfpga_arria10_socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Dinh Nguyen3cbc7b82015-09-22 17:01:32 -0500243 default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasut7fb46432018-02-24 23:34:00 +0100244 default "socfpga_dbm_soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyen55c7a762015-09-01 17:41:52 -0500245 default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschine9c847c2016-11-14 16:07:10 +0100246 default "socfpga_de1_soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen6bd041f2017-04-18 08:11:16 -0700247 default "socfpga_de10_nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Humberto Naves1b051362022-05-22 21:54:57 -0400248 default "socfpga_de10_standard" if TARGET_SOCFPGA_TERASIC_DE10_STANDARD
Pavel Machek35546f62016-06-07 12:37:23 +0200249 default "socfpga_is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger990ed442019-05-12 19:25:18 +0200250 default "socfpga_mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Siew Chin Lim31b51cb2021-08-10 11:26:42 +0800251 default "socfpga_n5x_socdk" if TARGET_SOCFPGA_N5X_SOCDK
Marek Vasut952caa22015-06-21 17:28:53 +0200252 default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut856b30d2015-11-23 17:06:27 +0100253 default "socfpga_socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roeseae9996c2015-11-18 11:06:09 +0100254 default "socfpga_sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tana6847292018-05-24 00:17:32 +0800255 default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut94a16b82019-06-27 00:19:31 +0200256 default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900257
Masahiro Yamada7865f4b2015-04-21 20:38:20 +0900258endif