blob: 1a057f7059b72f554759a0c44a147fb0408fe332 [file] [log] [blame]
York Sunb3d71642016-09-26 08:09:26 -07001config ARCH_LS1012A
York Sunfcd0e742016-10-04 14:31:47 -07002 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +08003 select ARMV8_SET_SMPEN
Rajesh Bhagatcd786e82018-11-05 18:01:48 +00004 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +00005 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -07006 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -04007 select GICV2
Tom Rinie1e85442021-08-27 21:18:30 -04008 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +05309 select SYS_FSL_SRDS_1
10 select SYS_HAS_SERDES
York Sunb6fffd82016-10-04 18:03:08 -070011 select SYS_FSL_DDR_BE
York Sunb3d71642016-09-26 08:09:26 -070012 select SYS_FSL_MMDC
Alban Bedel1b1ca2f2021-09-06 16:32:56 +020013 select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
Ran Wang02dc77b2017-11-13 16:14:48 +080014 select SYS_FSL_ERRATUM_A009798
15 select SYS_FSL_ERRATUM_A008997
16 select SYS_FSL_ERRATUM_A009007
17 select SYS_FSL_ERRATUM_A009008
Simon Glass62adede2017-01-23 13:31:19 -070018 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070019 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +053020 select SYS_I2C_MXC
Biwen Li0a759bb2019-12-31 15:33:41 +080021 select SYS_I2C_MXC_I2C1 if !DM_I2C
22 select SYS_I2C_MXC_I2C2 if !DM_I2C
Masahiro Yamadaacede7a2017-12-04 12:37:00 +090023 imply PANIC_HANG
York Sun149eb332016-09-26 08:09:27 -070024
Yuantian Tang4aefa162019-04-10 16:43:33 +080025config ARCH_LS1028A
26 bool
27 select ARMV8_SET_SMPEN
Michael Walle66f2a532020-05-10 01:20:11 +020028 select FSL_LAYERSCAPE
Yuantian Tang4aefa162019-04-10 16:43:33 +080029 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -040030 select GICV3
Yuantian Tang4aefa162019-04-10 16:43:33 +080031 select NXP_LSCH3_2
32 select SYS_FSL_HAS_CCI400
33 select SYS_FSL_SRDS_1
34 select SYS_HAS_SERDES
35 select SYS_FSL_DDR
36 select SYS_FSL_DDR_LE
37 select SYS_FSL_DDR_VER_50
38 select SYS_FSL_HAS_DDR3
39 select SYS_FSL_HAS_DDR4
40 select SYS_FSL_HAS_SEC
41 select SYS_FSL_SEC_COMPAT_5
42 select SYS_FSL_SEC_LE
43 select FSL_TZASC_1
44 select ARCH_EARLY_INIT_R
45 select BOARD_EARLY_INIT_F
46 select SYS_I2C_MXC
Ran Wange118acb2019-05-14 17:34:56 +080047 select SYS_FSL_ERRATUM_A008997
Yuantian Tang4aefa162019-04-10 16:43:33 +080048 select SYS_FSL_ERRATUM_A009007
49 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
50 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
51 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +000052 select SYS_FSL_ERRATUM_A050382
Michael Walle148dc612021-03-17 15:01:36 +010053 select SYS_FSL_ERRATUM_A011334
Michael Walle7259dc52021-03-17 15:01:37 +010054 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +080055 select RESV_RAM if GIC_V3_ITS
Yuantian Tang4aefa162019-04-10 16:43:33 +080056 imply PANIC_HANG
57
York Sun149eb332016-09-26 08:09:27 -070058config ARCH_LS1043A
York Sunfcd0e742016-10-04 14:31:47 -070059 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080060 select ARMV8_SET_SMPEN
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000061 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000062 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070063 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -040064 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -040065 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -040066 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +053067 select SYS_FSL_SRDS_1
68 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080069 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070070 select SYS_FSL_DDR_BE
71 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000072 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080073 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +080074 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +080075 select SYS_FSL_ERRATUM_A009008
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000076 select SYS_FSL_ERRATUM_A009660 if !TFABOOT
77 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +080078 select SYS_FSL_ERRATUM_A009798
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000079 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Alban Bedel1b1ca2f2021-09-06 16:32:56 +020080 select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +080081 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -080082 select SYS_FSL_HAS_DDR3
83 select SYS_FSL_HAS_DDR4
Simon Glass62adede2017-01-23 13:31:19 -070084 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070085 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +080086 select SYS_I2C_MXC
Biwen Li014460b2020-02-05 22:02:16 +080087 select SYS_I2C_MXC_I2C1 if !DM_I2C
88 select SYS_I2C_MXC_I2C2 if !DM_I2C
89 select SYS_I2C_MXC_I2C3 if !DM_I2C
90 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glassc88a09a2017-08-04 16:34:34 -060091 imply CMD_PCI
Tom Rini4abdf142021-08-17 17:59:41 -040092 imply ID_EEPROM
York Sunb3d71642016-09-26 08:09:26 -070093
York Sunbad49842016-09-26 08:09:24 -070094config ARCH_LS1046A
York Sunfcd0e742016-10-04 14:31:47 -070095 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080096 select ARMV8_SET_SMPEN
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000097 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070098 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -040099 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -0400100 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -0400101 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530102 select SYS_FSL_SRDS_1
103 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800104 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700105 select SYS_FSL_DDR_BE
York Sunb6fffd82016-10-04 18:03:08 -0700106 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000107 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
108 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
109 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +0800110 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800111 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800112 select SYS_FSL_ERRATUM_A009008
Ran Wang9e8fabc2017-09-04 18:46:49 +0800113 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800114 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000115 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
116 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
117 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800118 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -0800119 select SYS_FSL_HAS_DDR4
York Sun6b62ef02016-10-04 18:01:34 -0700120 select SYS_FSL_SRDS_2
Simon Glass62adede2017-01-23 13:31:19 -0700121 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700122 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +0800123 select SYS_I2C_MXC
Biwen Lif0018f52020-02-05 22:02:17 +0800124 select SYS_I2C_MXC_I2C1 if !DM_I2C
125 select SYS_I2C_MXC_I2C2 if !DM_I2C
126 select SYS_I2C_MXC_I2C3 if !DM_I2C
127 select SYS_I2C_MXC_I2C4 if !DM_I2C
Tom Rini4abdf142021-08-17 17:59:41 -0400128 imply ID_EEPROM
Simon Glass0e5faf02017-06-14 21:28:21 -0600129 imply SCSI
Tuomas Tynkkynenedf9f622017-12-08 15:36:19 +0200130 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400131 imply SPL_SYS_I2C_LEGACY
York Sunb3d71642016-09-26 08:09:26 -0700132
Ashish Kumarb25faa22017-08-31 16:12:53 +0530133config ARCH_LS1088A
134 bool
135 select ARMV8_SET_SMPEN
Pankit Gargf5c2a832018-12-27 04:37:55 +0000136 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000137 select FSL_LAYERSCAPE
Ashish Kumarb25faa22017-08-31 16:12:53 +0530138 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400139 select GICV3
Tom Rinie1e85442021-08-27 21:18:30 -0400140 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530141 select SYS_FSL_SRDS_1
142 select SYS_HAS_SERDES
Ashish Kumarb25faa22017-08-31 16:12:53 +0530143 select SYS_FSL_DDR
144 select SYS_FSL_DDR_LE
145 select SYS_FSL_DDR_VER_50
Ashish Kumarec455e22017-08-31 16:37:31 +0530146 select SYS_FSL_EC1
147 select SYS_FSL_EC2
Pankit Gargf5c2a832018-12-27 04:37:55 +0000148 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
149 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
150 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
151 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
152 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wangef277072017-09-22 15:21:34 +0800153 select SYS_FSL_ERRATUM_A009007
Ashish Kumarb25faa22017-08-31 16:12:53 +0530154 select SYS_FSL_HAS_CCI400
155 select SYS_FSL_HAS_DDR4
Ashish Kumarec455e22017-08-31 16:37:31 +0530156 select SYS_FSL_HAS_RGMII
Ashish Kumarb25faa22017-08-31 16:12:53 +0530157 select SYS_FSL_HAS_SEC
158 select SYS_FSL_SEC_COMPAT_5
159 select SYS_FSL_SEC_LE
160 select SYS_FSL_SRDS_1
161 select SYS_FSL_SRDS_2
162 select FSL_TZASC_1
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000163 select FSL_TZASC_400
164 select FSL_TZPC_BP147
Ashish Kumarb25faa22017-08-31 16:12:53 +0530165 select ARCH_EARLY_INIT_R
166 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530167 select SYS_I2C_MXC
Chuanhua Han98a5e402019-07-26 20:25:37 +0800168 select SYS_I2C_MXC_I2C1 if !TFABOOT
169 select SYS_I2C_MXC_I2C2 if !TFABOOT
170 select SYS_I2C_MXC_I2C3 if !TFABOOT
171 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800172 select RESV_RAM if GIC_V3_ITS
Tom Rini4abdf142021-08-17 17:59:41 -0400173 imply ID_EEPROM
Ashish Kumara179e562017-11-02 09:50:47 +0530174 imply SCSI
Tom Rini52b2e262021-08-18 23:12:24 -0400175 imply SPL_SYS_I2C_LEGACY
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900176 imply PANIC_HANG
Ashish Kumarb25faa22017-08-31 16:12:53 +0530177
York Sunfcd0e742016-10-04 14:31:47 -0700178config ARCH_LS2080A
179 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +0800180 select ARMV8_SET_SMPEN
Tom Rinibacb52c2017-03-07 07:13:42 -0500181 select ARM_ERRATA_826974
182 select ARM_ERRATA_828024
183 select ARM_ERRATA_829520
184 select ARM_ERRATA_833471
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000185 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700186 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400187 select GICV3
Tom Rinie1e85442021-08-27 21:18:30 -0400188 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530189 select SYS_FSL_SRDS_1
190 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800191 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700192 select SYS_FSL_DDR_LE
193 select SYS_FSL_DDR_VER_50
Ashish Kumar97393d62017-08-18 10:54:36 +0530194 select SYS_FSL_HAS_CCN504
York Sun6b62ef02016-10-04 18:01:34 -0700195 select SYS_FSL_HAS_DP_DDR
York Sun92c36e22016-12-28 08:43:30 -0800196 select SYS_FSL_HAS_SEC
York Sund297d392016-12-28 08:43:40 -0800197 select SYS_FSL_HAS_DDR4
York Sun92c36e22016-12-28 08:43:30 -0800198 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800199 select SYS_FSL_SEC_LE
York Sun6b62ef02016-10-04 18:01:34 -0700200 select SYS_FSL_SRDS_2
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530201 select FSL_TZASC_1
202 select FSL_TZASC_2
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000203 select FSL_TZASC_400
204 select FSL_TZPC_BP147
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000205 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
206 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
207 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
York Sun1dc61ca2016-12-28 08:43:41 -0800208 select SYS_FSL_ERRATUM_A008585
Ran Wange64f7472017-09-04 18:46:50 +0800209 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800210 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800211 select SYS_FSL_ERRATUM_A009008
York Sun1dc61ca2016-12-28 08:43:41 -0800212 select SYS_FSL_ERRATUM_A009635
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000213 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +0800214 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800215 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000216 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
217 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
218 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Ashish kumar3b52a232017-02-23 16:03:57 +0530219 select SYS_FSL_ERRATUM_A009203
Simon Glass62adede2017-01-23 13:31:19 -0700220 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700221 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530222 select SYS_I2C_MXC
Chuanhua Han3f27fff2019-07-26 19:24:03 +0800223 select SYS_I2C_MXC_I2C1 if !TFABOOT
224 select SYS_I2C_MXC_I2C2 if !TFABOOT
225 select SYS_I2C_MXC_I2C3 if !TFABOOT
226 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800227 select RESV_RAM if GIC_V3_ITS
Masahiro Yamada9afc6c52018-04-25 18:47:52 +0900228 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400229 imply ID_EEPROM
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900230 imply PANIC_HANG
Tom Rini52b2e262021-08-18 23:12:24 -0400231 imply SPL_SYS_I2C_LEGACY
York Sun4dd8c612016-10-04 14:31:48 -0700232
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530233config ARCH_LX2162A
234 bool
235 select ARMV8_SET_SMPEN
Tom Rini80b48612021-11-07 22:59:36 -0500236 select FSL_LAYERSCAPE
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530237 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400238 select GICV3
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530239 select NXP_LSCH3_2
240 select SYS_HAS_SERDES
241 select SYS_FSL_SRDS_1
242 select SYS_FSL_SRDS_2
243 select SYS_FSL_DDR
244 select SYS_FSL_DDR_LE
245 select SYS_FSL_DDR_VER_50
246 select SYS_FSL_EC1
247 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530248 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800249 select SYS_FSL_ERRATUM_A011334
250 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530251 select SYS_FSL_HAS_RGMII
252 select SYS_FSL_HAS_SEC
253 select SYS_FSL_HAS_CCN508
254 select SYS_FSL_HAS_DDR4
255 select SYS_FSL_SEC_COMPAT_5
256 select SYS_FSL_SEC_LE
257 select ARCH_EARLY_INIT_R
258 select BOARD_EARLY_INIT_F
259 select SYS_I2C_MXC
260 select RESV_RAM if GIC_V3_ITS
261 imply DISTRO_DEFAULTS
262 imply PANIC_HANG
263 imply SCSI
264 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400265 imply SPL_SYS_I2C_LEGACY
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530266
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000267config ARCH_LX2160A
268 bool
269 select ARMV8_SET_SMPEN
Tom Rini80b48612021-11-07 22:59:36 -0500270 select FSL_LAYERSCAPE
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000271 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400272 select GICV3
Tom Rini46c97312021-07-21 18:53:20 -0400273 select HAS_FSL_XHCI_USB if USB_HOST
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000274 select NXP_LSCH3_2
275 select SYS_HAS_SERDES
276 select SYS_FSL_SRDS_1
277 select SYS_FSL_SRDS_2
278 select SYS_NXP_SRDS_3
279 select SYS_FSL_DDR
280 select SYS_FSL_DDR_LE
281 select SYS_FSL_DDR_VER_50
282 select SYS_FSL_EC1
283 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530284 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800285 select SYS_FSL_ERRATUM_A011334
286 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000287 select SYS_FSL_HAS_RGMII
288 select SYS_FSL_HAS_SEC
289 select SYS_FSL_HAS_CCN508
290 select SYS_FSL_HAS_DDR4
291 select SYS_FSL_SEC_COMPAT_5
292 select SYS_FSL_SEC_LE
293 select ARCH_EARLY_INIT_R
294 select BOARD_EARLY_INIT_F
295 select SYS_I2C_MXC
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800296 select RESV_RAM if GIC_V3_ITS
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000297 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400298 imply ID_EEPROM
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000299 imply PANIC_HANG
300 imply SCSI
301 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400302 imply SPL_SYS_I2C_LEGACY
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000303
York Sun4dd8c612016-10-04 14:31:48 -0700304config FSL_LSCH2
305 bool
Tom Rinie1e85442021-08-27 21:18:30 -0400306 select SKIP_LOWLEVEL_INIT
Ashish Kumar11234062017-08-11 11:09:14 +0530307 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800308 select SYS_FSL_HAS_SEC
309 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800310 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700311
312config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200313 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700314 bool
315
Priyanka Jain88c25662018-10-29 09:11:29 +0000316config NXP_LSCH3_2
317 bool
318
York Sun4dd8c612016-10-04 14:31:48 -0700319menu "Layerscape architecture"
320 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700321
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000322config FSL_LAYERSCAPE
323 bool
324
Wenbin Songa8f57a92017-01-17 18:31:15 +0800325config HAS_FEATURE_GIC64K_ALIGN
326 bool
327 default y if ARCH_LS1043A
328
Wenbin Songc6bc7c02017-01-17 18:31:16 +0800329config HAS_FEATURE_ENHANCED_MSI
330 bool
331 default y if ARCH_LS1043A
Wenbin Songa8f57a92017-01-17 18:31:15 +0800332
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800333menu "Layerscape PPA"
334config FSL_LS_PPA
335 bool "FSL Layerscape PPA firmware support"
macro.wave.z@gmail.com01bd3342016-12-08 11:58:22 +0800336 depends on !ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800337 select ARMV8_SEC_FIRMWARE_SUPPORT
Hou Zhiqiang6be115d2017-01-16 17:31:48 +0800338 select SEC_FIRMWARE_ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800339 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800340 help
341 The FSL Primary Protected Application (PPA) is a software component
342 which is loaded during boot stage, and then remains resident in RAM
343 and runs in the TrustZone after boot.
344 Say y to enable it.
York Sunf2aaf842017-05-15 08:52:00 -0700345
346config SPL_FSL_LS_PPA
347 bool "FSL Layerscape PPA firmware support for SPL build"
348 depends on !ARMV8_PSCI
349 select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
350 select SEC_FIRMWARE_ARMV8_PSCI
351 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
352 help
353 The FSL Primary Protected Application (PPA) is a software component
354 which is loaded during boot stage, and then remains resident in RAM
355 and runs in the TrustZone after boot. This is to load PPA during SPL
356 stage instead of the RAM version of U-Boot. Once PPA is initialized,
357 the rest of U-Boot (including RAM version) runs at EL2.
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800358choice
359 prompt "FSL Layerscape PPA firmware loading-media select"
360 depends on FSL_LS_PPA
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800361 default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
362 default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800363 default SYS_LS_PPA_FW_IN_XIP
364
365config SYS_LS_PPA_FW_IN_XIP
366 bool "XIP"
367 help
368 Say Y here if the PPA firmware locate at XIP flash, such
369 as NOR or QSPI flash.
370
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800371config SYS_LS_PPA_FW_IN_MMC
372 bool "eMMC or SD Card"
373 help
374 Say Y here if the PPA firmware locate at eMMC/SD card.
375
376config SYS_LS_PPA_FW_IN_NAND
377 bool "NAND"
378 help
379 Say Y here if the PPA firmware locate at NAND flash.
380
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800381endchoice
382
Sumit Garg8fddf752017-04-20 05:09:11 +0530383config LS_PPA_ESBC_HDR_SIZE
384 hex "Length of PPA ESBC header"
385 depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
386 default 0x2000
387 help
388 Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
389 NAND to memory to validate PPA image.
390
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800391endmenu
392
Ran Wange64f7472017-09-04 18:46:50 +0800393config SYS_FSL_ERRATUM_A008997
394 bool "Workaround for USB PHY erratum A008997"
395
Ran Wang3ba69482017-09-04 18:46:51 +0800396config SYS_FSL_ERRATUM_A009007
397 bool
398 help
399 Workaround for USB PHY erratum A009007
400
Ran Wangb358b7b2017-09-04 18:46:48 +0800401config SYS_FSL_ERRATUM_A009008
402 bool "Workaround for USB PHY erratum A009008"
403
Ran Wang9e8fabc2017-09-04 18:46:49 +0800404config SYS_FSL_ERRATUM_A009798
405 bool "Workaround for USB PHY erratum A009798"
406
Ran Wang13a84a52021-06-16 17:53:19 +0530407config SYS_FSL_ERRATUM_A050204
408 bool "Workaround for USB PHY erratum A050204"
Ran Wangd0270dc2019-11-26 11:40:40 +0800409 help
410 USB3.0 Receiver needs to enable fixed equalization
411 for each of PHY instances in an SOC. This is similar
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530412 to erratum A-009007, but this one is for LX2160A and LX2162A,
Ran Wangd0270dc2019-11-26 11:40:40 +0800413 and the register value is different.
414
York Sun149eb332016-09-26 08:09:27 -0700415config SYS_FSL_ERRATUM_A010315
416 bool "Workaround for PCIe erratum A010315"
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800417
418config SYS_FSL_ERRATUM_A010539
419 bool "Workaround for PIN MUX erratum A010539"
York Sun4dd8c612016-10-04 14:31:48 -0700420
York Sunf188d222016-10-04 14:45:01 -0700421config MAX_CPUS
422 int "Maximum number of CPUs permitted for Layerscape"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800423 default 2 if ARCH_LS1028A
York Sunf188d222016-10-04 14:45:01 -0700424 default 4 if ARCH_LS1043A
425 default 4 if ARCH_LS1046A
426 default 16 if ARCH_LS2080A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530427 default 8 if ARCH_LS1088A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000428 default 16 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530429 default 16 if ARCH_LX2162A
York Sunf188d222016-10-04 14:45:01 -0700430 default 1
431 help
432 Set this number to the maximum number of possible CPUs in the SoC.
433 SoCs may have multiple clusters with each cluster may have multiple
434 ports. If some ports are reserved but higher ports are used for
435 cores, count the reserved ports. This will allocate enough memory
436 in spin table to properly handle all cores.
437
Meenakshi Aggarwalbbd33182018-11-30 22:32:11 +0530438config EMC2305
439 bool "Fan controller"
440 help
441 Enable the EMC2305 fan controller for configuration of fan
442 speed.
443
Udit Agarwal22ec2382019-11-07 16:11:32 +0000444config NXP_ESBC
445 bool "NXP_ESBC"
York Sun728e7002016-12-02 09:32:35 -0800446 help
447 Enable Freescale Secure Boot feature
448
Yuan Yao52ae4fd2016-12-01 10:13:52 +0800449config QSPI_AHB_INIT
450 bool "Init the QSPI AHB bus"
451 help
452 The default setting for QSPI AHB bus just support 3bytes addressing.
453 But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
454 bus for those flashes to support the full QSPI flash size.
455
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530456config FSPI_AHB_EN_4BYTE
457 bool "Enable 4-byte Fast Read command for AHB mode"
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530458 help
459 The default setting for FlexSPI AHB bus just supports 3-byte addressing.
460 But some FlexSPI flash sizes are up to 64MBytes.
461 This flag enables fast read command for AHB mode and modifies required
462 LUT to support full FlexSPI flash.
463
Ashish Kumar11234062017-08-11 11:09:14 +0530464config SYS_CCI400_OFFSET
465 hex "Offset for CCI400 base"
466 depends on SYS_FSL_HAS_CCI400
Yuantian Tang4aefa162019-04-10 16:43:33 +0800467 default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
Ashish Kumar11234062017-08-11 11:09:14 +0530468 default 0x180000 if FSL_LSCH2
469 help
470 Offset for CCI400 base
471 CCI400 base addr = CCSRBAR + CCI400_OFFSET
472
York Sune7310a32016-10-04 14:45:54 -0700473config SYS_FSL_IFC_BANK_COUNT
474 int "Maximum banks of Integrated flash controller"
Ashish Kumarb25faa22017-08-31 16:12:53 +0530475 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700476 default 4 if ARCH_LS1043A
477 default 4 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530478 default 8 if ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700479
Ashish Kumar11234062017-08-11 11:09:14 +0530480config SYS_FSL_HAS_CCI400
481 bool
482
Ashish Kumar97393d62017-08-18 10:54:36 +0530483config SYS_FSL_HAS_CCN504
484 bool
485
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000486config SYS_FSL_HAS_CCN508
487 bool
488
York Sun0dc9abb2016-10-04 14:46:50 -0700489config SYS_FSL_HAS_DP_DDR
490 bool
491
York Sun6b62ef02016-10-04 18:01:34 -0700492config SYS_FSL_SRDS_1
493 bool
494
495config SYS_FSL_SRDS_2
496 bool
497
Priyanka Jain1a602532018-09-27 10:32:05 +0530498config SYS_NXP_SRDS_3
499 bool
500
York Sun6b62ef02016-10-04 18:01:34 -0700501config SYS_HAS_SERDES
502 bool
503
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530504config FSL_TZASC_1
505 bool
506
507config FSL_TZASC_2
508 bool
509
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000510config FSL_TZASC_400
511 bool
512
513config FSL_TZPC_BP147
514 bool
York Sun4dd8c612016-10-04 14:31:48 -0700515endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800516
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800517menu "Layerscape clock tree configuration"
518 depends on FSL_LSCH2 || FSL_LSCH3
519
520config SYS_FSL_CLK
521 bool "Enable clock tree initialization"
522 default y
523
524config CLUSTER_CLK_FREQ
525 int "Reference clock of core cluster"
526 depends on ARCH_LS1012A
527 default 100000000
528 help
529 This number is the reference clock frequency of core PLL.
530 For most platforms, the core PLL and Platform PLL have the same
531 reference clock, but for some platforms, LS1012A for instance,
532 they are provided sepatately.
533
534config SYS_FSL_PCLK_DIV
535 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800536 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800537 default 1 if ARCH_LS1043A
538 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530539 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800540 default 2
541 help
542 This is the divider that is used to derive Platform clock from
543 Platform PLL, in another word:
544 Platform_clk = Platform_PLL_freq / this_divider
545
546config SYS_FSL_DSPI_CLK_DIV
547 int "DSPI clock divider"
548 default 1 if ARCH_LS1043A
549 default 2
550 help
551 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800552 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800553
554config SYS_FSL_DUART_CLK_DIV
555 int "DUART clock divider"
556 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000557 default 4 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530558 default 4 if ARCH_LX2162A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800559 default 2
560 help
561 This is the divider that is used to derive DUART clock from Platform
562 clock, in another word DUART_clk = Platform_clk / this_divider.
563
564config SYS_FSL_I2C_CLK_DIV
565 int "I2C clock divider"
566 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800567 default 4 if ARCH_LS1012A
568 default 4 if ARCH_LS1028A
569 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530570 default 8 if ARCH_LX2162A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800571 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800572 default 2
573 help
574 This is the divider that is used to derive I2C clock from Platform
575 clock, in another word I2C_clk = Platform_clk / this_divider.
576
577config SYS_FSL_IFC_CLK_DIV
578 int "IFC clock divider"
579 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800580 default 4 if ARCH_LS1012A
581 default 4 if ARCH_LS1028A
582 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530583 default 8 if ARCH_LX2162A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800584 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800585 default 2
586 help
587 This is the divider that is used to derive IFC clock from Platform
588 clock, in another word IFC_clk = Platform_clk / this_divider.
589
590config SYS_FSL_LPUART_CLK_DIV
591 int "LPUART clock divider"
592 default 1 if ARCH_LS1043A
593 default 2
594 help
595 This is the divider that is used to derive LPUART clock from Platform
596 clock, in another word LPUART_clk = Platform_clk / this_divider.
597
598config SYS_FSL_SDHC_CLK_DIV
599 int "SDHC clock divider"
600 default 1 if ARCH_LS1043A
601 default 1 if ARCH_LS1012A
602 default 2
603 help
604 This is the divider that is used to derive SDHC clock from Platform
605 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800606
607config SYS_FSL_QMAN_CLK_DIV
608 int "QMAN clock divider"
609 default 1 if ARCH_LS1043A
610 default 2
611 help
612 This is the divider that is used to derive QMAN clock from Platform
613 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800614endmenu
615
York Sund6964b32017-03-06 09:02:24 -0800616config RESV_RAM
617 bool
618 help
619 Reserve memory from the top, tracked by gd->arch.resv_ram. This
620 reserved RAM can be used by special driver that resides in memory
621 after U-Boot exits. It's up to implementation to allocate and allow
622 access to this reserved memory. For example, the reserved RAM can
623 be at the high end of physical memory. The reserve RAM may be
624 excluded from memory bank(s) passed to OS, or marked as reserved.
625
Ashish Kumarec455e22017-08-31 16:37:31 +0530626config SYS_FSL_EC1
627 bool
628 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000629 Ethernet controller 1, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530630 MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530631 Provides DPAA2 capabilities
632
633config SYS_FSL_EC2
634 bool
635 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000636 Ethernet controller 2, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530637 MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530638 Provides DPAA2 capabilities
639
York Sun1dc61ca2016-12-28 08:43:41 -0800640config SYS_FSL_ERRATUM_A008336
641 bool
642
643config SYS_FSL_ERRATUM_A008514
644 bool
645
646config SYS_FSL_ERRATUM_A008585
647 bool
648
649config SYS_FSL_ERRATUM_A008850
650 bool
651
Ashish kumar3b52a232017-02-23 16:03:57 +0530652config SYS_FSL_ERRATUM_A009203
653 bool
654
York Sun1dc61ca2016-12-28 08:43:41 -0800655config SYS_FSL_ERRATUM_A009635
656 bool
657
658config SYS_FSL_ERRATUM_A009660
659 bool
660
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000661config SYS_FSL_ERRATUM_A050382
662 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530663
664config SYS_FSL_HAS_RGMII
665 bool
666 depends on SYS_FSL_EC1 || SYS_FSL_EC2
667
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200668config SPL_LDSCRIPT
669 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800670
671config HAS_FSL_XHCI_USB
672 bool
Ran Wang5959f842017-10-23 10:09:21 +0800673 help
Tom Rini46c97312021-07-21 18:53:20 -0400674 For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
Ran Wang5959f842017-10-23 10:09:21 +0800675 pins, select it when the pins are assigned to USB.
Rajesh Bhagat729f22f2021-02-11 13:28:49 +0100676
677config SYS_FSL_BOOTROM_BASE
678 hex
679 depends on FSL_LSCH2
680 default 0
681
682config SYS_FSL_BOOTROM_SIZE
683 hex
684 depends on FSL_LSCH2
685 default 0x1000000