blob: cb968bc5477daa28974e3e4b45acd73a20613896 [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
Tom Rini05b419e2021-12-11 14:55:49 -050062 select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000063 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070064 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -040065 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -040066 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -040067 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +053068 select SYS_FSL_SRDS_1
69 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080070 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070071 select SYS_FSL_DDR_BE
72 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000073 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080074 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +080075 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +080076 select SYS_FSL_ERRATUM_A009008
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000077 select SYS_FSL_ERRATUM_A009660 if !TFABOOT
78 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +080079 select SYS_FSL_ERRATUM_A009798
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000080 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Alban Bedel1b1ca2f2021-09-06 16:32:56 +020081 select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +080082 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -080083 select SYS_FSL_HAS_DDR3
84 select SYS_FSL_HAS_DDR4
Simon Glass62adede2017-01-23 13:31:19 -070085 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070086 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +080087 select SYS_I2C_MXC
Biwen Li014460b2020-02-05 22:02:16 +080088 select SYS_I2C_MXC_I2C1 if !DM_I2C
89 select SYS_I2C_MXC_I2C2 if !DM_I2C
90 select SYS_I2C_MXC_I2C3 if !DM_I2C
91 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glassc88a09a2017-08-04 16:34:34 -060092 imply CMD_PCI
Tom Rini4abdf142021-08-17 17:59:41 -040093 imply ID_EEPROM
York Sunb3d71642016-09-26 08:09:26 -070094
York Sunbad49842016-09-26 08:09:24 -070095config ARCH_LS1046A
York Sunfcd0e742016-10-04 14:31:47 -070096 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080097 select ARMV8_SET_SMPEN
Tom Rini05b419e2021-12-11 14:55:49 -050098 select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000099 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700100 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -0400101 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -0400102 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -0400103 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530104 select SYS_FSL_SRDS_1
105 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800106 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700107 select SYS_FSL_DDR_BE
York Sunb6fffd82016-10-04 18:03:08 -0700108 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000109 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
110 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
111 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +0800112 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800113 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800114 select SYS_FSL_ERRATUM_A009008
Ran Wang9e8fabc2017-09-04 18:46:49 +0800115 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800116 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000117 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
118 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
119 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800120 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -0800121 select SYS_FSL_HAS_DDR4
York Sun6b62ef02016-10-04 18:01:34 -0700122 select SYS_FSL_SRDS_2
Simon Glass62adede2017-01-23 13:31:19 -0700123 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700124 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +0800125 select SYS_I2C_MXC
Biwen Lif0018f52020-02-05 22:02:17 +0800126 select SYS_I2C_MXC_I2C1 if !DM_I2C
127 select SYS_I2C_MXC_I2C2 if !DM_I2C
128 select SYS_I2C_MXC_I2C3 if !DM_I2C
129 select SYS_I2C_MXC_I2C4 if !DM_I2C
Tom Rini4abdf142021-08-17 17:59:41 -0400130 imply ID_EEPROM
Simon Glass0e5faf02017-06-14 21:28:21 -0600131 imply SCSI
Tuomas Tynkkynenedf9f622017-12-08 15:36:19 +0200132 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400133 imply SPL_SYS_I2C_LEGACY
York Sunb3d71642016-09-26 08:09:26 -0700134
Ashish Kumarb25faa22017-08-31 16:12:53 +0530135config ARCH_LS1088A
136 bool
137 select ARMV8_SET_SMPEN
Pankit Gargf5c2a832018-12-27 04:37:55 +0000138 select ARM_ERRATA_855873 if !TFABOOT
Tom Rini05b419e2021-12-11 14:55:49 -0500139 select FSL_IFC
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000140 select FSL_LAYERSCAPE
Ashish Kumarb25faa22017-08-31 16:12:53 +0530141 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400142 select GICV3
Tom Rinie1e85442021-08-27 21:18:30 -0400143 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530144 select SYS_FSL_SRDS_1
145 select SYS_HAS_SERDES
Ashish Kumarb25faa22017-08-31 16:12:53 +0530146 select SYS_FSL_DDR
147 select SYS_FSL_DDR_LE
148 select SYS_FSL_DDR_VER_50
Ashish Kumarec455e22017-08-31 16:37:31 +0530149 select SYS_FSL_EC1
150 select SYS_FSL_EC2
Pankit Gargf5c2a832018-12-27 04:37:55 +0000151 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
152 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
153 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
154 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
155 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wangef277072017-09-22 15:21:34 +0800156 select SYS_FSL_ERRATUM_A009007
Ashish Kumarb25faa22017-08-31 16:12:53 +0530157 select SYS_FSL_HAS_CCI400
158 select SYS_FSL_HAS_DDR4
Ashish Kumarec455e22017-08-31 16:37:31 +0530159 select SYS_FSL_HAS_RGMII
Ashish Kumarb25faa22017-08-31 16:12:53 +0530160 select SYS_FSL_HAS_SEC
161 select SYS_FSL_SEC_COMPAT_5
162 select SYS_FSL_SEC_LE
163 select SYS_FSL_SRDS_1
164 select SYS_FSL_SRDS_2
165 select FSL_TZASC_1
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000166 select FSL_TZASC_400
167 select FSL_TZPC_BP147
Ashish Kumarb25faa22017-08-31 16:12:53 +0530168 select ARCH_EARLY_INIT_R
169 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530170 select SYS_I2C_MXC
Chuanhua Han98a5e402019-07-26 20:25:37 +0800171 select SYS_I2C_MXC_I2C1 if !TFABOOT
172 select SYS_I2C_MXC_I2C2 if !TFABOOT
173 select SYS_I2C_MXC_I2C3 if !TFABOOT
174 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800175 select RESV_RAM if GIC_V3_ITS
Tom Rini4abdf142021-08-17 17:59:41 -0400176 imply ID_EEPROM
Ashish Kumara179e562017-11-02 09:50:47 +0530177 imply SCSI
Tom Rini52b2e262021-08-18 23:12:24 -0400178 imply SPL_SYS_I2C_LEGACY
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900179 imply PANIC_HANG
Ashish Kumarb25faa22017-08-31 16:12:53 +0530180
York Sunfcd0e742016-10-04 14:31:47 -0700181config ARCH_LS2080A
182 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +0800183 select ARMV8_SET_SMPEN
Tom Rinibacb52c2017-03-07 07:13:42 -0500184 select ARM_ERRATA_826974
185 select ARM_ERRATA_828024
186 select ARM_ERRATA_829520
187 select ARM_ERRATA_833471
Tom Rini05b419e2021-12-11 14:55:49 -0500188 select FSL_IFC
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000189 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700190 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400191 select GICV3
Tom Rinie1e85442021-08-27 21:18:30 -0400192 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530193 select SYS_FSL_SRDS_1
194 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800195 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700196 select SYS_FSL_DDR_LE
197 select SYS_FSL_DDR_VER_50
Ashish Kumar97393d62017-08-18 10:54:36 +0530198 select SYS_FSL_HAS_CCN504
York Sun6b62ef02016-10-04 18:01:34 -0700199 select SYS_FSL_HAS_DP_DDR
York Sun92c36e22016-12-28 08:43:30 -0800200 select SYS_FSL_HAS_SEC
York Sund297d392016-12-28 08:43:40 -0800201 select SYS_FSL_HAS_DDR4
York Sun92c36e22016-12-28 08:43:30 -0800202 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800203 select SYS_FSL_SEC_LE
York Sun6b62ef02016-10-04 18:01:34 -0700204 select SYS_FSL_SRDS_2
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530205 select FSL_TZASC_1
206 select FSL_TZASC_2
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000207 select FSL_TZASC_400
208 select FSL_TZPC_BP147
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000209 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
210 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
211 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
York Sun1dc61ca2016-12-28 08:43:41 -0800212 select SYS_FSL_ERRATUM_A008585
Ran Wange64f7472017-09-04 18:46:50 +0800213 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800214 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800215 select SYS_FSL_ERRATUM_A009008
York Sun1dc61ca2016-12-28 08:43:41 -0800216 select SYS_FSL_ERRATUM_A009635
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000217 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +0800218 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800219 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000220 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
221 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
222 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Ashish kumar3b52a232017-02-23 16:03:57 +0530223 select SYS_FSL_ERRATUM_A009203
Simon Glass62adede2017-01-23 13:31:19 -0700224 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700225 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530226 select SYS_I2C_MXC
Chuanhua Han3f27fff2019-07-26 19:24:03 +0800227 select SYS_I2C_MXC_I2C1 if !TFABOOT
228 select SYS_I2C_MXC_I2C2 if !TFABOOT
229 select SYS_I2C_MXC_I2C3 if !TFABOOT
230 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800231 select RESV_RAM if GIC_V3_ITS
Masahiro Yamada9afc6c52018-04-25 18:47:52 +0900232 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400233 imply ID_EEPROM
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900234 imply PANIC_HANG
Tom Rini52b2e262021-08-18 23:12:24 -0400235 imply SPL_SYS_I2C_LEGACY
York Sun4dd8c612016-10-04 14:31:48 -0700236
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530237config ARCH_LX2162A
238 bool
239 select ARMV8_SET_SMPEN
Tom Riniea3cc392021-11-13 19:22:43 -0500240 select FSL_DDR_BIST
241 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500242 select FSL_LAYERSCAPE
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530243 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400244 select GICV3
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530245 select NXP_LSCH3_2
246 select SYS_HAS_SERDES
247 select SYS_FSL_SRDS_1
248 select SYS_FSL_SRDS_2
249 select SYS_FSL_DDR
250 select SYS_FSL_DDR_LE
251 select SYS_FSL_DDR_VER_50
252 select SYS_FSL_EC1
253 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530254 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800255 select SYS_FSL_ERRATUM_A011334
256 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530257 select SYS_FSL_HAS_RGMII
258 select SYS_FSL_HAS_SEC
259 select SYS_FSL_HAS_CCN508
260 select SYS_FSL_HAS_DDR4
261 select SYS_FSL_SEC_COMPAT_5
262 select SYS_FSL_SEC_LE
263 select ARCH_EARLY_INIT_R
264 select BOARD_EARLY_INIT_F
265 select SYS_I2C_MXC
266 select RESV_RAM if GIC_V3_ITS
267 imply DISTRO_DEFAULTS
268 imply PANIC_HANG
269 imply SCSI
270 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400271 imply SPL_SYS_I2C_LEGACY
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530272
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000273config ARCH_LX2160A
274 bool
275 select ARMV8_SET_SMPEN
Tom Riniea3cc392021-11-13 19:22:43 -0500276 select FSL_DDR_BIST
277 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500278 select FSL_LAYERSCAPE
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000279 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400280 select GICV3
Tom Rini46c97312021-07-21 18:53:20 -0400281 select HAS_FSL_XHCI_USB if USB_HOST
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000282 select NXP_LSCH3_2
283 select SYS_HAS_SERDES
284 select SYS_FSL_SRDS_1
285 select SYS_FSL_SRDS_2
286 select SYS_NXP_SRDS_3
287 select SYS_FSL_DDR
288 select SYS_FSL_DDR_LE
289 select SYS_FSL_DDR_VER_50
290 select SYS_FSL_EC1
291 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530292 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800293 select SYS_FSL_ERRATUM_A011334
294 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000295 select SYS_FSL_HAS_RGMII
296 select SYS_FSL_HAS_SEC
297 select SYS_FSL_HAS_CCN508
298 select SYS_FSL_HAS_DDR4
299 select SYS_FSL_SEC_COMPAT_5
300 select SYS_FSL_SEC_LE
301 select ARCH_EARLY_INIT_R
302 select BOARD_EARLY_INIT_F
303 select SYS_I2C_MXC
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800304 select RESV_RAM if GIC_V3_ITS
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000305 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400306 imply ID_EEPROM
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000307 imply PANIC_HANG
308 imply SCSI
309 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400310 imply SPL_SYS_I2C_LEGACY
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000311
York Sun4dd8c612016-10-04 14:31:48 -0700312config FSL_LSCH2
313 bool
Tom Rinie1e85442021-08-27 21:18:30 -0400314 select SKIP_LOWLEVEL_INIT
Ashish Kumar11234062017-08-11 11:09:14 +0530315 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800316 select SYS_FSL_HAS_SEC
317 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800318 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700319
320config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200321 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700322 bool
323
Priyanka Jain88c25662018-10-29 09:11:29 +0000324config NXP_LSCH3_2
325 bool
326
York Sun4dd8c612016-10-04 14:31:48 -0700327menu "Layerscape architecture"
328 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700329
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000330config FSL_LAYERSCAPE
331 bool
332
Wenbin Songa8f57a92017-01-17 18:31:15 +0800333config HAS_FEATURE_GIC64K_ALIGN
334 bool
335 default y if ARCH_LS1043A
336
Wenbin Songc6bc7c02017-01-17 18:31:16 +0800337config HAS_FEATURE_ENHANCED_MSI
338 bool
339 default y if ARCH_LS1043A
Wenbin Songa8f57a92017-01-17 18:31:15 +0800340
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800341menu "Layerscape PPA"
342config FSL_LS_PPA
343 bool "FSL Layerscape PPA firmware support"
macro.wave.z@gmail.com01bd3342016-12-08 11:58:22 +0800344 depends on !ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800345 select ARMV8_SEC_FIRMWARE_SUPPORT
Hou Zhiqiang6be115d2017-01-16 17:31:48 +0800346 select SEC_FIRMWARE_ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800347 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800348 help
349 The FSL Primary Protected Application (PPA) is a software component
350 which is loaded during boot stage, and then remains resident in RAM
351 and runs in the TrustZone after boot.
352 Say y to enable it.
York Sunf2aaf842017-05-15 08:52:00 -0700353
354config SPL_FSL_LS_PPA
355 bool "FSL Layerscape PPA firmware support for SPL build"
356 depends on !ARMV8_PSCI
357 select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
358 select SEC_FIRMWARE_ARMV8_PSCI
359 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
360 help
361 The FSL Primary Protected Application (PPA) is a software component
362 which is loaded during boot stage, and then remains resident in RAM
363 and runs in the TrustZone after boot. This is to load PPA during SPL
364 stage instead of the RAM version of U-Boot. Once PPA is initialized,
365 the rest of U-Boot (including RAM version) runs at EL2.
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800366choice
367 prompt "FSL Layerscape PPA firmware loading-media select"
368 depends on FSL_LS_PPA
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800369 default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
370 default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800371 default SYS_LS_PPA_FW_IN_XIP
372
373config SYS_LS_PPA_FW_IN_XIP
374 bool "XIP"
375 help
376 Say Y here if the PPA firmware locate at XIP flash, such
377 as NOR or QSPI flash.
378
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800379config SYS_LS_PPA_FW_IN_MMC
380 bool "eMMC or SD Card"
381 help
382 Say Y here if the PPA firmware locate at eMMC/SD card.
383
384config SYS_LS_PPA_FW_IN_NAND
385 bool "NAND"
386 help
387 Say Y here if the PPA firmware locate at NAND flash.
388
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800389endchoice
390
Sumit Garg8fddf752017-04-20 05:09:11 +0530391config LS_PPA_ESBC_HDR_SIZE
392 hex "Length of PPA ESBC header"
393 depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
394 default 0x2000
395 help
396 Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
397 NAND to memory to validate PPA image.
398
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800399endmenu
400
Ran Wange64f7472017-09-04 18:46:50 +0800401config SYS_FSL_ERRATUM_A008997
402 bool "Workaround for USB PHY erratum A008997"
403
Ran Wang3ba69482017-09-04 18:46:51 +0800404config SYS_FSL_ERRATUM_A009007
405 bool
406 help
407 Workaround for USB PHY erratum A009007
408
Ran Wangb358b7b2017-09-04 18:46:48 +0800409config SYS_FSL_ERRATUM_A009008
410 bool "Workaround for USB PHY erratum A009008"
411
Ran Wang9e8fabc2017-09-04 18:46:49 +0800412config SYS_FSL_ERRATUM_A009798
413 bool "Workaround for USB PHY erratum A009798"
414
Ran Wang13a84a52021-06-16 17:53:19 +0530415config SYS_FSL_ERRATUM_A050204
416 bool "Workaround for USB PHY erratum A050204"
Ran Wangd0270dc2019-11-26 11:40:40 +0800417 help
418 USB3.0 Receiver needs to enable fixed equalization
419 for each of PHY instances in an SOC. This is similar
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530420 to erratum A-009007, but this one is for LX2160A and LX2162A,
Ran Wangd0270dc2019-11-26 11:40:40 +0800421 and the register value is different.
422
York Sun149eb332016-09-26 08:09:27 -0700423config SYS_FSL_ERRATUM_A010315
424 bool "Workaround for PCIe erratum A010315"
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800425
426config SYS_FSL_ERRATUM_A010539
427 bool "Workaround for PIN MUX erratum A010539"
York Sun4dd8c612016-10-04 14:31:48 -0700428
York Sunf188d222016-10-04 14:45:01 -0700429config MAX_CPUS
430 int "Maximum number of CPUs permitted for Layerscape"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800431 default 2 if ARCH_LS1028A
York Sunf188d222016-10-04 14:45:01 -0700432 default 4 if ARCH_LS1043A
433 default 4 if ARCH_LS1046A
434 default 16 if ARCH_LS2080A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530435 default 8 if ARCH_LS1088A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000436 default 16 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530437 default 16 if ARCH_LX2162A
York Sunf188d222016-10-04 14:45:01 -0700438 default 1
439 help
440 Set this number to the maximum number of possible CPUs in the SoC.
441 SoCs may have multiple clusters with each cluster may have multiple
442 ports. If some ports are reserved but higher ports are used for
443 cores, count the reserved ports. This will allocate enough memory
444 in spin table to properly handle all cores.
445
Meenakshi Aggarwalbbd33182018-11-30 22:32:11 +0530446config EMC2305
447 bool "Fan controller"
448 help
449 Enable the EMC2305 fan controller for configuration of fan
450 speed.
451
Udit Agarwal22ec2382019-11-07 16:11:32 +0000452config NXP_ESBC
453 bool "NXP_ESBC"
York Sun728e7002016-12-02 09:32:35 -0800454 help
455 Enable Freescale Secure Boot feature
456
Yuan Yao52ae4fd2016-12-01 10:13:52 +0800457config QSPI_AHB_INIT
458 bool "Init the QSPI AHB bus"
459 help
460 The default setting for QSPI AHB bus just support 3bytes addressing.
461 But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
462 bus for those flashes to support the full QSPI flash size.
463
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530464config FSPI_AHB_EN_4BYTE
465 bool "Enable 4-byte Fast Read command for AHB mode"
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530466 help
467 The default setting for FlexSPI AHB bus just supports 3-byte addressing.
468 But some FlexSPI flash sizes are up to 64MBytes.
469 This flag enables fast read command for AHB mode and modifies required
470 LUT to support full FlexSPI flash.
471
Ashish Kumar11234062017-08-11 11:09:14 +0530472config SYS_CCI400_OFFSET
473 hex "Offset for CCI400 base"
474 depends on SYS_FSL_HAS_CCI400
Yuantian Tang4aefa162019-04-10 16:43:33 +0800475 default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
Ashish Kumar11234062017-08-11 11:09:14 +0530476 default 0x180000 if FSL_LSCH2
477 help
478 Offset for CCI400 base
479 CCI400 base addr = CCSRBAR + CCI400_OFFSET
480
York Sune7310a32016-10-04 14:45:54 -0700481config SYS_FSL_IFC_BANK_COUNT
482 int "Maximum banks of Integrated flash controller"
Ashish Kumarb25faa22017-08-31 16:12:53 +0530483 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700484 default 4 if ARCH_LS1043A
485 default 4 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530486 default 8 if ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700487
Ashish Kumar11234062017-08-11 11:09:14 +0530488config SYS_FSL_HAS_CCI400
489 bool
490
Ashish Kumar97393d62017-08-18 10:54:36 +0530491config SYS_FSL_HAS_CCN504
492 bool
493
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000494config SYS_FSL_HAS_CCN508
495 bool
496
York Sun0dc9abb2016-10-04 14:46:50 -0700497config SYS_FSL_HAS_DP_DDR
498 bool
499
York Sun6b62ef02016-10-04 18:01:34 -0700500config SYS_FSL_SRDS_1
501 bool
502
503config SYS_FSL_SRDS_2
504 bool
505
Priyanka Jain1a602532018-09-27 10:32:05 +0530506config SYS_NXP_SRDS_3
507 bool
508
York Sun6b62ef02016-10-04 18:01:34 -0700509config SYS_HAS_SERDES
510 bool
511
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530512config FSL_TZASC_1
513 bool
514
515config FSL_TZASC_2
516 bool
517
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000518config FSL_TZASC_400
519 bool
520
521config FSL_TZPC_BP147
522 bool
York Sun4dd8c612016-10-04 14:31:48 -0700523endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800524
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800525menu "Layerscape clock tree configuration"
526 depends on FSL_LSCH2 || FSL_LSCH3
527
528config SYS_FSL_CLK
529 bool "Enable clock tree initialization"
530 default y
531
532config CLUSTER_CLK_FREQ
533 int "Reference clock of core cluster"
534 depends on ARCH_LS1012A
535 default 100000000
536 help
537 This number is the reference clock frequency of core PLL.
538 For most platforms, the core PLL and Platform PLL have the same
539 reference clock, but for some platforms, LS1012A for instance,
540 they are provided sepatately.
541
542config SYS_FSL_PCLK_DIV
543 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800544 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800545 default 1 if ARCH_LS1043A
546 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530547 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800548 default 2
549 help
550 This is the divider that is used to derive Platform clock from
551 Platform PLL, in another word:
552 Platform_clk = Platform_PLL_freq / this_divider
553
554config SYS_FSL_DSPI_CLK_DIV
555 int "DSPI clock divider"
556 default 1 if ARCH_LS1043A
557 default 2
558 help
559 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800560 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800561
562config SYS_FSL_DUART_CLK_DIV
563 int "DUART clock divider"
564 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000565 default 4 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530566 default 4 if ARCH_LX2162A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800567 default 2
568 help
569 This is the divider that is used to derive DUART clock from Platform
570 clock, in another word DUART_clk = Platform_clk / this_divider.
571
572config SYS_FSL_I2C_CLK_DIV
573 int "I2C clock divider"
574 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800575 default 4 if ARCH_LS1012A
576 default 4 if ARCH_LS1028A
577 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530578 default 8 if ARCH_LX2162A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800579 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800580 default 2
581 help
582 This is the divider that is used to derive I2C clock from Platform
583 clock, in another word I2C_clk = Platform_clk / this_divider.
584
585config SYS_FSL_IFC_CLK_DIV
586 int "IFC clock divider"
587 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800588 default 4 if ARCH_LS1012A
589 default 4 if ARCH_LS1028A
590 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530591 default 8 if ARCH_LX2162A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800592 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800593 default 2
594 help
595 This is the divider that is used to derive IFC clock from Platform
596 clock, in another word IFC_clk = Platform_clk / this_divider.
597
598config SYS_FSL_LPUART_CLK_DIV
599 int "LPUART clock divider"
600 default 1 if ARCH_LS1043A
601 default 2
602 help
603 This is the divider that is used to derive LPUART clock from Platform
604 clock, in another word LPUART_clk = Platform_clk / this_divider.
605
606config SYS_FSL_SDHC_CLK_DIV
607 int "SDHC clock divider"
608 default 1 if ARCH_LS1043A
609 default 1 if ARCH_LS1012A
610 default 2
611 help
612 This is the divider that is used to derive SDHC clock from Platform
613 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800614
615config SYS_FSL_QMAN_CLK_DIV
616 int "QMAN clock divider"
617 default 1 if ARCH_LS1043A
618 default 2
619 help
620 This is the divider that is used to derive QMAN clock from Platform
621 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800622endmenu
623
York Sund6964b32017-03-06 09:02:24 -0800624config RESV_RAM
625 bool
626 help
627 Reserve memory from the top, tracked by gd->arch.resv_ram. This
628 reserved RAM can be used by special driver that resides in memory
629 after U-Boot exits. It's up to implementation to allocate and allow
630 access to this reserved memory. For example, the reserved RAM can
631 be at the high end of physical memory. The reserve RAM may be
632 excluded from memory bank(s) passed to OS, or marked as reserved.
633
Ashish Kumarec455e22017-08-31 16:37:31 +0530634config SYS_FSL_EC1
635 bool
636 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000637 Ethernet controller 1, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530638 MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530639 Provides DPAA2 capabilities
640
641config SYS_FSL_EC2
642 bool
643 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000644 Ethernet controller 2, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530645 MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530646 Provides DPAA2 capabilities
647
York Sun1dc61ca2016-12-28 08:43:41 -0800648config SYS_FSL_ERRATUM_A008336
649 bool
650
651config SYS_FSL_ERRATUM_A008514
652 bool
653
654config SYS_FSL_ERRATUM_A008585
655 bool
656
657config SYS_FSL_ERRATUM_A008850
658 bool
659
Ashish kumar3b52a232017-02-23 16:03:57 +0530660config SYS_FSL_ERRATUM_A009203
661 bool
662
York Sun1dc61ca2016-12-28 08:43:41 -0800663config SYS_FSL_ERRATUM_A009635
664 bool
665
666config SYS_FSL_ERRATUM_A009660
667 bool
668
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000669config SYS_FSL_ERRATUM_A050382
670 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530671
672config SYS_FSL_HAS_RGMII
673 bool
674 depends on SYS_FSL_EC1 || SYS_FSL_EC2
675
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200676config SPL_LDSCRIPT
677 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800678
679config HAS_FSL_XHCI_USB
680 bool
Ran Wang5959f842017-10-23 10:09:21 +0800681 help
Tom Rini46c97312021-07-21 18:53:20 -0400682 For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
Ran Wang5959f842017-10-23 10:09:21 +0800683 pins, select it when the pins are assigned to USB.
Rajesh Bhagat729f22f2021-02-11 13:28:49 +0100684
685config SYS_FSL_BOOTROM_BASE
686 hex
687 depends on FSL_LSCH2
688 default 0
689
690config SYS_FSL_BOOTROM_SIZE
691 hex
692 depends on FSL_LSCH2
693 default 0x1000000