blob: 969698c83fa576fa8a8034aa8d95476049bd3df4 [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
36 select ARMV8_SPIN_TABLE
37 select CLK
38 select NCORE_CACHE
39 select SPL_CLK if SPL
40
Marek Vasut822e7952015-08-02 21:57:57 +020041config TARGET_SOCFPGA_ARRIA5
42 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060043 select TARGET_SOCFPGA_GEN5
Marek Vasut822e7952015-08-02 21:57:57 +020044
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080045config TARGET_SOCFPGA_ARRIA10
46 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080047 select SPL_ALTERA_SDRAM
Michal Simek7e7ba3b2018-07-23 15:55:15 +020048 select SPL_BOARD_INIT if SPL
Marek Vasute1dcd622018-07-30 15:56:19 +020049 select CLK
50 select SPL_CLK if SPL
Marek Vasut69fbb882018-08-13 18:32:38 +020051 select DM_I2C
Marek Vasut700b2c62018-08-13 18:32:38 +020052 select DM_RESET
53 select SPL_DM_RESET if SPL
Marek Vasut04c8f4f2018-08-13 20:06:46 +020054 select REGMAP
55 select SPL_REGMAP if SPL
56 select SYSCON
57 select SPL_SYSCON if SPL
58 select ETH_DESIGNWARE_SOCFPGA
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020059 imply FPGA_SOCFPGA
Simon Glass7611ac62019-09-25 08:56:27 -060060 imply SPL_USE_TINY_PRINTF
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080061
Marek Vasut822e7952015-08-02 21:57:57 +020062config TARGET_SOCFPGA_CYCLONE5
63 bool
Dinh Nguyen677a16f2015-12-02 13:31:25 -060064 select TARGET_SOCFPGA_GEN5
65
66config TARGET_SOCFPGA_GEN5
67 bool
Ley Foon Tan17b9ba62019-05-06 09:55:59 +080068 select SPL_ALTERA_SDRAM
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020069 imply FPGA_SOCFPGA
Simon Goldschmidt20fd7de2019-06-13 21:50:28 +020070 imply SPL_SIZE_LIMIT_SUBTRACT_GD
71 imply SPL_SIZE_LIMIT_SUBTRACT_MALLOC
Simon Goldschmidtb1c42692019-04-09 21:02:05 +020072 imply SPL_STACK_R
73 imply SPL_SYS_MALLOC_SIMPLE
Simon Glass7611ac62019-09-25 08:56:27 -060074 imply SPL_USE_TINY_PRINTF
Marek Vasut822e7952015-08-02 21:57:57 +020075
Ley Foon Tan9c407b52018-05-24 00:17:32 +080076config TARGET_SOCFPGA_STRATIX10
77 bool
78 select ARMV8_MULTIENTRY
Ley Foon Tan9c407b52018-05-24 00:17:32 +080079 select ARMV8_SET_SMPEN
Michal Simek7e7ba3b2018-07-23 15:55:15 +020080 select ARMV8_SPIN_TABLE
Ang, Chee Hongda9640e2018-12-19 18:35:16 -080081 select FPGA_STRATIX10
Ley Foon Tan9c407b52018-05-24 00:17:32 +080082
Masahiro Yamada144a3e02015-04-21 20:38:20 +090083choice
84 prompt "Altera SOCFPGA board select"
Joe Hershbergerf0699602015-05-12 14:46:23 -050085 optional
Masahiro Yamada144a3e02015-04-21 20:38:20 +090086
Ley Foon Tan461d2982019-11-27 15:55:32 +080087config TARGET_SOCFPGA_AGILEX_SOCDK
88 bool "Intel SOCFPGA SoCDK (Agilex)"
89 select TARGET_SOCFPGA_AGILEX
90
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +020091config TARGET_SOCFPGA_ARIES_MCVEVK
92 bool "Aries MCVEVK (Cyclone V)"
93 select TARGET_SOCFPGA_CYCLONE5
94
Ley Foon Tan5b7cea62017-04-26 02:44:48 +080095config TARGET_SOCFPGA_ARRIA10_SOCDK
96 bool "Altera SOCFPGA SoCDK (Arria 10)"
97 select TARGET_SOCFPGA_ARRIA10
98
Marek Vasut822e7952015-08-02 21:57:57 +020099config TARGET_SOCFPGA_ARRIA5_SOCDK
100 bool "Altera SOCFPGA SoCDK (Arria V)"
101 select TARGET_SOCFPGA_ARRIA5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900102
Marek Vasut822e7952015-08-02 21:57:57 +0200103config TARGET_SOCFPGA_CYCLONE5_SOCDK
104 bool "Altera SOCFPGA SoCDK (Cyclone V)"
105 select TARGET_SOCFPGA_CYCLONE5
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900106
Marek Vasutb06dad22018-02-24 23:34:00 +0100107config TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
108 bool "Devboards DBM-SoC1 (Cyclone V)"
109 select TARGET_SOCFPGA_CYCLONE5
110
Marek Vasut567356a2015-11-23 17:06:27 +0100111config TARGET_SOCFPGA_EBV_SOCRATES
112 bool "EBV SoCrates (Cyclone V)"
113 select TARGET_SOCFPGA_CYCLONE5
114
Pavel Machek9802e872016-06-07 12:37:23 +0200115config TARGET_SOCFPGA_IS1
116 bool "IS1 (Cyclone V)"
117 select TARGET_SOCFPGA_CYCLONE5
118
Marek Vasut13da18c2019-06-27 00:19:31 +0200119config TARGET_SOCFPGA_SOFTING_VINING_FPGA
120 bool "Softing VIN|ING FPGA (Cyclone V)"
Tom Rini22d567e2017-01-22 19:43:11 -0500121 select BOARD_LATE_INIT
Marek Vasutba2ade92015-12-01 18:09:52 +0100122 select TARGET_SOCFPGA_CYCLONE5
123
Marek Vasut2e717ec2016-06-08 02:57:05 +0200124config TARGET_SOCFPGA_SR1500
125 bool "SR1500 (Cyclone V)"
126 select TARGET_SOCFPGA_CYCLONE5
127
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800128config TARGET_SOCFPGA_STRATIX10_SOCDK
129 bool "Intel SOCFPGA SoCDK (Stratix 10)"
130 select TARGET_SOCFPGA_STRATIX10
131
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500132config TARGET_SOCFPGA_TERASIC_DE0_NANO
133 bool "Terasic DE0-Nano-Atlas (Cyclone V)"
134 select TARGET_SOCFPGA_CYCLONE5
135
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700136config TARGET_SOCFPGA_TERASIC_DE10_NANO
137 bool "Terasic DE10-Nano (Cyclone V)"
138 select TARGET_SOCFPGA_CYCLONE5
139
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100140config TARGET_SOCFPGA_TERASIC_DE1_SOC
141 bool "Terasic DE1-SoC (Cyclone V)"
142 select TARGET_SOCFPGA_CYCLONE5
143
Marek Vasutb415bad2015-06-21 17:28:53 +0200144config TARGET_SOCFPGA_TERASIC_SOCKIT
145 bool "Terasic SoCkit (Cyclone V)"
146 select TARGET_SOCFPGA_CYCLONE5
147
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900148endchoice
149
150config SYS_BOARD
Ley Foon Tan461d2982019-11-27 15:55:32 +0800151 default "agilex-socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasut3f4c5612015-08-10 21:24:53 +0200152 default "arria5-socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800153 default "arria10-socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasut3f4c5612015-08-10 21:24:53 +0200154 default "cyclone5-socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100155 default "dbm-soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500156 default "de0-nano-soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100157 default "de1-soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700158 default "de10-nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Pavel Machek9802e872016-06-07 12:37:23 +0200159 default "is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200160 default "mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb415bad2015-06-21 17:28:53 +0200161 default "sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100162 default "socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100163 default "sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800164 default "stratix10-socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200165 default "vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900166
167config SYS_VENDOR
Ley Foon Tan461d2982019-11-27 15:55:32 +0800168 default "intel" if TARGET_SOCFPGA_AGILEX_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200169 default "altera" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800170 default "altera" if TARGET_SOCFPGA_ARRIA10_SOCDK
Marek Vasut822e7952015-08-02 21:57:57 +0200171 default "altera" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800172 default "altera" if TARGET_SOCFPGA_STRATIX10_SOCDK
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200173 default "aries" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb06dad22018-02-24 23:34:00 +0100174 default "devboards" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Marek Vasut567356a2015-11-23 17:06:27 +0100175 default "ebv" if TARGET_SOCFPGA_EBV_SOCRATES
Marek Vasut13da18c2019-06-27 00:19:31 +0200176 default "softing" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500177 default "terasic" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100178 default "terasic" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700179 default "terasic" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Marek Vasutb415bad2015-06-21 17:28:53 +0200180 default "terasic" if TARGET_SOCFPGA_TERASIC_SOCKIT
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900181
182config SYS_SOC
183 default "socfpga"
184
185config SYS_CONFIG_NAME
Ley Foon Tan461d2982019-11-27 15:55:32 +0800186 default "socfpga_agilex_socdk" if TARGET_SOCFPGA_AGILEX_SOCDK
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500187 default "socfpga_arria5_socdk" if TARGET_SOCFPGA_ARRIA5_SOCDK
Ley Foon Tan5b7cea62017-04-26 02:44:48 +0800188 default "socfpga_arria10_socdk" if TARGET_SOCFPGA_ARRIA10_SOCDK
Dinh Nguyen16f6ffd2015-09-22 17:01:32 -0500189 default "socfpga_cyclone5_socdk" if TARGET_SOCFPGA_CYCLONE5_SOCDK
Marek Vasutb06dad22018-02-24 23:34:00 +0100190 default "socfpga_dbm_soc1" if TARGET_SOCFPGA_DEVBOARDS_DBM_SOC1
Dinh Nguyenc3364da2015-09-01 17:41:52 -0500191 default "socfpga_de0_nano_soc" if TARGET_SOCFPGA_TERASIC_DE0_NANO
Anatolij Gustschin705bf372016-11-14 16:07:10 +0100192 default "socfpga_de1_soc" if TARGET_SOCFPGA_TERASIC_DE1_SOC
Dalon Westergreen7a0fe0d2017-04-18 08:11:16 -0700193 default "socfpga_de10_nano" if TARGET_SOCFPGA_TERASIC_DE10_NANO
Pavel Machek9802e872016-06-07 12:37:23 +0200194 default "socfpga_is1" if TARGET_SOCFPGA_IS1
Wolfgang Grandegger7789aab22019-05-12 19:25:18 +0200195 default "socfpga_mcvevk" if TARGET_SOCFPGA_ARIES_MCVEVK
Marek Vasutb415bad2015-06-21 17:28:53 +0200196 default "socfpga_sockit" if TARGET_SOCFPGA_TERASIC_SOCKIT
Marek Vasut567356a2015-11-23 17:06:27 +0100197 default "socfpga_socrates" if TARGET_SOCFPGA_EBV_SOCRATES
Stefan Roesebf5ed2e2015-11-18 11:06:09 +0100198 default "socfpga_sr1500" if TARGET_SOCFPGA_SR1500
Ley Foon Tan9c407b52018-05-24 00:17:32 +0800199 default "socfpga_stratix10_socdk" if TARGET_SOCFPGA_STRATIX10_SOCDK
Marek Vasut13da18c2019-06-27 00:19:31 +0200200 default "socfpga_vining_fpga" if TARGET_SOCFPGA_SOFTING_VINING_FPGA
Masahiro Yamada144a3e02015-04-21 20:38:20 +0900201
202endif