blob: 4d4ff16337f7360402366516d5a3c8e208b217f4 [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
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +02009config SPL_SIZE_LIMIT
Simon Glassa8f0c942019-09-25 08:56:28 -060010 default 0x10000 if TARGET_SOCFPGA_GEN5
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020011
12config SPL_SIZE_LIMIT_PROVIDE_STACK
13 default 0x200 if TARGET_SOCFPGA_GEN5
14
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020015config SPL_STACK_R_ADDR
16 default 0x00800000 if TARGET_SOCFPGA_GEN5
17
Simon Goldschmidt4f57b9a2019-04-09 21:02:06 +020018config SPL_SYS_MALLOC_F_LEN
19 default 0x800 if TARGET_SOCFPGA_GEN5
20
Dalon Westergreen8d770f42017-02-10 17:15:34 -080021config SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE
22 default 0xa2
23
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020024config SYS_MALLOC_F_LEN
25 default 0x2000 if TARGET_SOCFPGA_ARRIA10
26 default 0x2000 if TARGET_SOCFPGA_GEN5
27
28config SYS_TEXT_BASE
29 default 0x01000040 if TARGET_SOCFPGA_ARRIA10
30 default 0x01000040 if TARGET_SOCFPGA_GEN5
31
Ley Foon Tan461d2982019-11-27 15:55:32 +080032config TARGET_SOCFPGA_AGILEX
33 bool
34 select ARMV8_MULTIENTRY
35 select ARMV8_SET_SMPEN
Siew Chin Limdbe60eb2020-12-24 18:21:12 +080036 select BINMAN if SPL_ATF
Ley Foon Tan461d2982019-11-27 15:55:32 +080037 select CLK
Chee Hong Ang89ac34d2020-08-07 11:50:05 +080038 select FPGA_INTEL_SDM_MAILBOX
Ley Foon Tan461d2982019-11-27 15:55:32 +080039 select NCORE_CACHE
40 select SPL_CLK if SPL
41
Marek Vasut822e7952015-08-02 21:57:57 +020042config TARGET_SOCFPGA_ARRIA5
43 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060044 select TARGET_SOCFPGA_GEN5
Marek Vasut822e7952015-08-02 21:57:57 +020045
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080046config TARGET_SOCFPGA_ARRIA10
47 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080048 select SPL_ALTERA_SDRAM
Michal Simek7e7ba3b2018-07-23 15:55:15 +020049 select SPL_BOARD_INIT if SPL
Ley Foon Tan1d07b3e2020-04-07 15:43:14 +080050 select SPL_CACHE if SPL
Marek Vasute1dcd622018-07-30 15:56:19 +020051 select CLK
52 select SPL_CLK if SPL
Marek Vasut69fbb882018-08-13 18:32:38 +020053 select DM_I2C
Marek Vasut700b2c62018-08-13 18:32:38 +020054 select DM_RESET
55 select SPL_DM_RESET if SPL
Marek Vasut04c8f4f2018-08-13 20:06:46 +020056 select REGMAP
57 select SPL_REGMAP if SPL
58 select SYSCON
59 select SPL_SYSCON if SPL
60 select ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020061 imply FPGA_SOCFPGA
Simon Glass7611ac62019-09-25 08:56:27 -060062 imply SPL_USE_TINY_PRINTF
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080063
Marek Vasut822e7952015-08-02 21:57:57 +020064config TARGET_SOCFPGA_CYCLONE5
65 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060066 select TARGET_SOCFPGA_GEN5
67
68config TARGET_SOCFPGA_GEN5
69 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080070 select SPL_ALTERA_SDRAM
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020071 imply FPGA_SOCFPGA
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020072 imply SPL_SIZE_LIMIT_SUBTRACT_GD
73 imply SPL_SIZE_LIMIT_SUBTRACT_MALLOC
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020074 imply SPL_STACK_R
75 imply SPL_SYS_MALLOC_SIMPLE
Simon Glass7611ac62019-09-25 08:56:27 -060076 imply SPL_USE_TINY_PRINTF
Marek Vasut822e7952015-08-02 21:57:57 +020077
Ley Foon Tan9c407b52018-05-24 00:17:32 +080078config TARGET_SOCFPGA_STRATIX10
79 bool
80 select ARMV8_MULTIENTRY
Ley Foon Tan9c407b52018-05-24 00:17:32 +080081 select ARMV8_SET_SMPEN
Siew Chin Limdbe60eb2020-12-24 18:21:12 +080082 select BINMAN if SPL_ATF
Chee Hong Ang14192452020-08-07 11:50:03 +080083 select FPGA_INTEL_SDM_MAILBOX
Ley Foon Tan9c407b52018-05-24 00:17:32 +080084
Masahiro Yamada144a3e02015-04-21 20:38:20 +090085choice
86 prompt "Altera SOCFPGA board select"
Joe Hershbergerf0699602015-05-12 14:46:23 -050087 optional
Masahiro Yamada144a3e02015-04-21 20:38:20 +090088
Ley Foon Tan461d2982019-11-27 15:55:32 +080089config TARGET_SOCFPGA_AGILEX_SOCDK
90 bool "Intel SOCFPGA SoCDK (Agilex)"
91 select TARGET_SOCFPGA_AGILEX
92
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +020093config TARGET_SOCFPGA_ARIES_MCVEVK
94 bool "Aries MCVEVK (Cyclone V)"
95 select TARGET_SOCFPGA_CYCLONE5
96
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080097config TARGET_SOCFPGA_ARRIA10_SOCDK
98 bool "Altera SOCFPGA SoCDK (Arria 10)"
99 select TARGET_SOCFPGA_ARRIA10
100
Holger Brunckddef8892020-02-19 19:55:14 +0100101config TARGET_SOCFPGA_ARRIA5_SECU1
102 bool "ABB SECU1 (Arria V)"
103 select TARGET_SOCFPGA_ARRIA5
104 select VENDOR_KM
105
Marek Vasut822e7952015-08-02 21:57:57 +0200106config TARGET_SOCFPGA_ARRIA5_SOCDK
107 bool "Altera SOCFPGA SoCDK (Arria V)"
108 select TARGET_SOCFPGA_ARRIA5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900109
Marek Vasut822e7952015-08-02 21:57:57 +0200110config TARGET_SOCFPGA_CYCLONE5_SOCDK
111 bool "Altera SOCFPGA SoCDK (Cyclone V)"
112 select TARGET_SOCFPGA_CYCLONE5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900113
Marek Vasutb06dad22018-02-24 23:34:00 +0100114config TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
115 bool "Devboards DBM-SoC1 (Cyclone V)"
116 select TARGET_SOCFPGA_CYCLONE5
117
Marek Vasut567356a2015-11-23 17:06:27 +0100118config TARGET_SOCFPGA_EBV_SOCRATES
119 bool "EBV SoCrates (Cyclone V)"
120 select TARGET_SOCFPGA_CYCLONE5
121
Pavel Machek9802e872016-06-07 12:37:23 +0200122config TARGET_SOCFPGA_IS1
123 bool "IS1 (Cyclone V)"
124 select TARGET_SOCFPGA_CYCLONE5
125
Marek Vasut13da18c2019-06-27 00:19:31 +0200126config TARGET_SOCFPGA_SOFTING_VINING_FPGA
127 bool "Softing VIN|ING FPGA (Cyclone V)"
Tom Rini22d567e2017-01-22 19:43:11 -0500128 select BOARD_LATE_INIT
Marek Vasutba2ade92015-12-01 18:09:52 +0100129 select TARGET_SOCFPGA_CYCLONE5
130
Marek Vasut2e717ec2016-06-08 02:57:05 +0200131config TARGET_SOCFPGA_SR1500
132 bool "SR1500 (Cyclone V)"
133 select TARGET_SOCFPGA_CYCLONE5
134
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800135config TARGET_SOCFPGA_STRATIX10_SOCDK
136 bool "Intel SOCFPGA SoCDK (Stratix 10)"
137 select TARGET_SOCFPGA_STRATIX10
138
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500139config TARGET_SOCFPGA_TERASIC_DE0_NANO
140 bool "Terasic DE0-Nano-Atlas (Cyclone V)"
141 select TARGET_SOCFPGA_CYCLONE5
142
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700143config TARGET_SOCFPGA_TERASIC_DE10_NANO
144 bool "Terasic DE10-Nano (Cyclone V)"
145 select TARGET_SOCFPGA_CYCLONE5
146
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100147config TARGET_SOCFPGA_TERASIC_DE1_SOC
148 bool "Terasic DE1-SoC (Cyclone V)"
149 select TARGET_SOCFPGA_CYCLONE5
150
Marek Vasutb415bad2015-06-21 17:28:53 +0200151config TARGET_SOCFPGA_TERASIC_SOCKIT
152 bool "Terasic SoCkit (Cyclone V)"
153 select TARGET_SOCFPGA_CYCLONE5
154
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900155endchoice
156
157config SYS_BOARD
Ley Foon Tan461d2982019-11-27 15:55:32 +0800158 default "agilex-socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasut3f4c5612015-08-10 21:24:53 +0200159 default "arria5-socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800160 default "arria10-socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasut3f4c5612015-08-10 21:24:53 +0200161 default "cyclone5-socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100162 default "dbm-soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500163 default "de0-nano-soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100164 default "de1-soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700165 default "de10-nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Pavel Machek9802e872016-06-07 12:37:23 +0200166 default "is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200167 default "mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Holger Brunckddef8892020-02-19 19:55:14 +0100168 default "secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasutb415bad2015-06-21 17:28:53 +0200169 default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100170 default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100171 default "sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800172 default "stratix10-socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200173 default "vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900174
175config SYS_VENDOR
Ley Foon Tan461d2982019-11-27 15:55:32 +0800176 default "intel" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200177 default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800178 default "altera" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200179 default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800180 default "altera" if TARGET_SOCFPGA_STRATIX10_SOCDK
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200181 default "aries" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb06dad22018-02-24 23:34:00 +0100182 default "devboards" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Marek Vasut567356a2015-11-23 17:06:27 +0100183 default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
Holger Brunckddef8892020-02-19 19:55:14 +0100184 default "keymile" if TARGET_SOCFPGA_ARRIA5_SECU1
Marek Vasut13da18c2019-06-27 00:19:31 +0200185 default "softing" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500186 default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100187 default "terasic" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700188 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Marek Vasutb415bad2015-06-21 17:28:53 +0200189 default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900190
191config SYS_SOC
192 default "socfpga"
193
194config SYS_CONFIG_NAME
Ley Foon Tan461d2982019-11-27 15:55:32 +0800195 default "socfpga_agilex_socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Holger Brunckddef8892020-02-19 19:55:14 +0100196 default "socfpga_arria5_secu1" if TARGET_SOCFPGA_ARRIA5_SECU1
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500197 default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800198 default "socfpga_arria10_socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500199 default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100200 default "socfpga_dbm_soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500201 default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100202 default "socfpga_de1_soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700203 default "socfpga_de10_nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Pavel Machek9802e872016-06-07 12:37:23 +0200204 default "socfpga_is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200205 default "socfpga_mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb415bad2015-06-21 17:28:53 +0200206 default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100207 default "socfpga_socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100208 default "socfpga_sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800209 default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200210 default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900211
Holger Brunckddef8892020-02-19 19:55:14 +0100212source "board/keymile/Kconfig"
213
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900214endif