blob: 6f8d5cb72fd12001c4427501584eb7f6e4bba447 [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
Simon Glass65831d92021-12-18 11:27:50 -070024 imply TIMESTAMP
York Sun149eb332016-09-26 08:09:27 -070025
Yuantian Tang4aefa162019-04-10 16:43:33 +080026config ARCH_LS1028A
27 bool
28 select ARMV8_SET_SMPEN
Michael Walle66f2a532020-05-10 01:20:11 +020029 select FSL_LAYERSCAPE
Yuantian Tang4aefa162019-04-10 16:43:33 +080030 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -040031 select GICV3
Yuantian Tang4aefa162019-04-10 16:43:33 +080032 select NXP_LSCH3_2
33 select SYS_FSL_HAS_CCI400
34 select SYS_FSL_SRDS_1
35 select SYS_HAS_SERDES
36 select SYS_FSL_DDR
37 select SYS_FSL_DDR_LE
38 select SYS_FSL_DDR_VER_50
39 select SYS_FSL_HAS_DDR3
40 select SYS_FSL_HAS_DDR4
41 select SYS_FSL_HAS_SEC
42 select SYS_FSL_SEC_COMPAT_5
43 select SYS_FSL_SEC_LE
44 select FSL_TZASC_1
Tom Rinid391d8b2021-12-11 14:55:51 -050045 select FSL_TZPC_BP147
Yuantian Tang4aefa162019-04-10 16:43:33 +080046 select ARCH_EARLY_INIT_R
47 select BOARD_EARLY_INIT_F
48 select SYS_I2C_MXC
Ran Wange118acb2019-05-14 17:34:56 +080049 select SYS_FSL_ERRATUM_A008997
Yuantian Tang4aefa162019-04-10 16:43:33 +080050 select SYS_FSL_ERRATUM_A009007
51 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
52 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
53 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +000054 select SYS_FSL_ERRATUM_A050382
Michael Walle148dc612021-03-17 15:01:36 +010055 select SYS_FSL_ERRATUM_A011334
Michael Walle7259dc52021-03-17 15:01:37 +010056 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +080057 select RESV_RAM if GIC_V3_ITS
Yuantian Tang4aefa162019-04-10 16:43:33 +080058 imply PANIC_HANG
59
York Sun149eb332016-09-26 08:09:27 -070060config ARCH_LS1043A
York Sunfcd0e742016-10-04 14:31:47 -070061 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080062 select ARMV8_SET_SMPEN
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000063 select ARM_ERRATA_855873 if !TFABOOT
Tom Rini05b419e2021-12-11 14:55:49 -050064 select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000065 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070066 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -040067 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -040068 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -040069 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +053070 select SYS_FSL_SRDS_1
71 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080072 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070073 select SYS_FSL_DDR_BE
74 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000075 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080076 select SYS_FSL_ERRATUM_A008997
Ran Wangb358b7b2017-09-04 18:46:48 +080077 select SYS_FSL_ERRATUM_A009008
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000078 select SYS_FSL_ERRATUM_A009660 if !TFABOOT
79 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +080080 select SYS_FSL_ERRATUM_A009798
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000081 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Alban Bedel1b1ca2f2021-09-06 16:32:56 +020082 select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +080083 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -080084 select SYS_FSL_HAS_DDR3
85 select SYS_FSL_HAS_DDR4
Simon Glass62adede2017-01-23 13:31:19 -070086 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070087 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +080088 select SYS_I2C_MXC
Biwen Li014460b2020-02-05 22:02:16 +080089 select SYS_I2C_MXC_I2C1 if !DM_I2C
90 select SYS_I2C_MXC_I2C2 if !DM_I2C
91 select SYS_I2C_MXC_I2C3 if !DM_I2C
92 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glassc88a09a2017-08-04 16:34:34 -060093 imply CMD_PCI
Tom Rini4abdf142021-08-17 17:59:41 -040094 imply ID_EEPROM
York Sunb3d71642016-09-26 08:09:26 -070095
York Sunbad49842016-09-26 08:09:24 -070096config ARCH_LS1046A
York Sunfcd0e742016-10-04 14:31:47 -070097 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080098 select ARMV8_SET_SMPEN
Tom Rini05b419e2021-12-11 14:55:49 -050099 select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000100 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700101 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -0400102 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -0400103 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -0400104 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530105 select SYS_FSL_SRDS_1
106 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800107 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700108 select SYS_FSL_DDR_BE
York Sunb6fffd82016-10-04 18:03:08 -0700109 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000110 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
111 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
112 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +0800113 select SYS_FSL_ERRATUM_A008997
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 Rinid391d8b2021-12-11 14:55:51 -0500244 select FSL_TZPC_BP147
Tom Rini249f11f2021-08-19 14:19:39 -0400245 select GICV3
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530246 select NXP_LSCH3_2
247 select SYS_HAS_SERDES
248 select SYS_FSL_SRDS_1
249 select SYS_FSL_SRDS_2
250 select SYS_FSL_DDR
251 select SYS_FSL_DDR_LE
252 select SYS_FSL_DDR_VER_50
253 select SYS_FSL_EC1
254 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530255 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800256 select SYS_FSL_ERRATUM_A011334
257 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530258 select SYS_FSL_HAS_RGMII
259 select SYS_FSL_HAS_SEC
260 select SYS_FSL_HAS_CCN508
261 select SYS_FSL_HAS_DDR4
262 select SYS_FSL_SEC_COMPAT_5
263 select SYS_FSL_SEC_LE
Tom Rini50e6f1b2021-12-12 22:12:32 -0500264 select SYS_PCI_64BIT if PCI
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530265 select ARCH_EARLY_INIT_R
266 select BOARD_EARLY_INIT_F
267 select SYS_I2C_MXC
268 select RESV_RAM if GIC_V3_ITS
269 imply DISTRO_DEFAULTS
270 imply PANIC_HANG
271 imply SCSI
272 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400273 imply SPL_SYS_I2C_LEGACY
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530274
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000275config ARCH_LX2160A
276 bool
277 select ARMV8_SET_SMPEN
Tom Riniea3cc392021-11-13 19:22:43 -0500278 select FSL_DDR_BIST
279 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500280 select FSL_LAYERSCAPE
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000281 select FSL_LSCH3
Tom Rinid391d8b2021-12-11 14:55:51 -0500282 select FSL_TZPC_BP147
Tom Rini249f11f2021-08-19 14:19:39 -0400283 select GICV3
Tom Rini46c97312021-07-21 18:53:20 -0400284 select HAS_FSL_XHCI_USB if USB_HOST
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000285 select NXP_LSCH3_2
286 select SYS_HAS_SERDES
287 select SYS_FSL_SRDS_1
288 select SYS_FSL_SRDS_2
289 select SYS_NXP_SRDS_3
290 select SYS_FSL_DDR
291 select SYS_FSL_DDR_LE
292 select SYS_FSL_DDR_VER_50
293 select SYS_FSL_EC1
294 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530295 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800296 select SYS_FSL_ERRATUM_A011334
297 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000298 select SYS_FSL_HAS_RGMII
299 select SYS_FSL_HAS_SEC
300 select SYS_FSL_HAS_CCN508
301 select SYS_FSL_HAS_DDR4
302 select SYS_FSL_SEC_COMPAT_5
303 select SYS_FSL_SEC_LE
Tom Rini50e6f1b2021-12-12 22:12:32 -0500304 select SYS_PCI_64BIT if PCI
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000305 select ARCH_EARLY_INIT_R
306 select BOARD_EARLY_INIT_F
307 select SYS_I2C_MXC
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800308 select RESV_RAM if GIC_V3_ITS
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000309 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400310 imply ID_EEPROM
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000311 imply PANIC_HANG
312 imply SCSI
313 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400314 imply SPL_SYS_I2C_LEGACY
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000315
York Sun4dd8c612016-10-04 14:31:48 -0700316config FSL_LSCH2
317 bool
Tom Rinie1e85442021-08-27 21:18:30 -0400318 select SKIP_LOWLEVEL_INIT
Ashish Kumar11234062017-08-11 11:09:14 +0530319 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800320 select SYS_FSL_HAS_SEC
321 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800322 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700323
324config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200325 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700326 bool
327
Priyanka Jain88c25662018-10-29 09:11:29 +0000328config NXP_LSCH3_2
329 bool
330
York Sun4dd8c612016-10-04 14:31:48 -0700331menu "Layerscape architecture"
332 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700333
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000334config FSL_LAYERSCAPE
335 bool
Michael Walle166ea482022-04-22 14:53:27 +0530336 select ARM_SMCCC
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000337
Wenbin Songa8f57a92017-01-17 18:31:15 +0800338config HAS_FEATURE_GIC64K_ALIGN
339 bool
340 default y if ARCH_LS1043A
341
Wenbin Songc6bc7c02017-01-17 18:31:16 +0800342config HAS_FEATURE_ENHANCED_MSI
343 bool
344 default y if ARCH_LS1043A
Wenbin Songa8f57a92017-01-17 18:31:15 +0800345
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800346menu "Layerscape PPA"
347config FSL_LS_PPA
348 bool "FSL Layerscape PPA firmware support"
macro.wave.z@gmail.com01bd3342016-12-08 11:58:22 +0800349 depends on !ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800350 select ARMV8_SEC_FIRMWARE_SUPPORT
Hou Zhiqiang6be115d2017-01-16 17:31:48 +0800351 select SEC_FIRMWARE_ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800352 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800353 help
354 The FSL Primary Protected Application (PPA) is a software component
355 which is loaded during boot stage, and then remains resident in RAM
356 and runs in the TrustZone after boot.
357 Say y to enable it.
York Sunf2aaf842017-05-15 08:52:00 -0700358
359config SPL_FSL_LS_PPA
360 bool "FSL Layerscape PPA firmware support for SPL build"
361 depends on !ARMV8_PSCI
362 select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
363 select SEC_FIRMWARE_ARMV8_PSCI
364 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
365 help
366 The FSL Primary Protected Application (PPA) is a software component
367 which is loaded during boot stage, and then remains resident in RAM
368 and runs in the TrustZone after boot. This is to load PPA during SPL
369 stage instead of the RAM version of U-Boot. Once PPA is initialized,
370 the rest of U-Boot (including RAM version) runs at EL2.
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800371choice
372 prompt "FSL Layerscape PPA firmware loading-media select"
373 depends on FSL_LS_PPA
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800374 default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
375 default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800376 default SYS_LS_PPA_FW_IN_XIP
377
378config SYS_LS_PPA_FW_IN_XIP
379 bool "XIP"
380 help
381 Say Y here if the PPA firmware locate at XIP flash, such
382 as NOR or QSPI flash.
383
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800384config SYS_LS_PPA_FW_IN_MMC
385 bool "eMMC or SD Card"
386 help
387 Say Y here if the PPA firmware locate at eMMC/SD card.
388
389config SYS_LS_PPA_FW_IN_NAND
390 bool "NAND"
391 help
392 Say Y here if the PPA firmware locate at NAND flash.
393
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800394endchoice
395
Sumit Garg8fddf752017-04-20 05:09:11 +0530396config LS_PPA_ESBC_HDR_SIZE
397 hex "Length of PPA ESBC header"
398 depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
399 default 0x2000
400 help
401 Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
402 NAND to memory to validate PPA image.
403
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800404endmenu
405
Ran Wange64f7472017-09-04 18:46:50 +0800406config SYS_FSL_ERRATUM_A008997
407 bool "Workaround for USB PHY erratum A008997"
408
Ran Wang3ba69482017-09-04 18:46:51 +0800409config SYS_FSL_ERRATUM_A009007
410 bool
411 help
412 Workaround for USB PHY erratum A009007
413
Ran Wangb358b7b2017-09-04 18:46:48 +0800414config SYS_FSL_ERRATUM_A009008
415 bool "Workaround for USB PHY erratum A009008"
416
Ran Wang9e8fabc2017-09-04 18:46:49 +0800417config SYS_FSL_ERRATUM_A009798
418 bool "Workaround for USB PHY erratum A009798"
419
Ran Wang13a84a52021-06-16 17:53:19 +0530420config SYS_FSL_ERRATUM_A050204
421 bool "Workaround for USB PHY erratum A050204"
Ran Wangd0270dc2019-11-26 11:40:40 +0800422 help
423 USB3.0 Receiver needs to enable fixed equalization
424 for each of PHY instances in an SOC. This is similar
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530425 to erratum A-009007, but this one is for LX2160A and LX2162A,
Ran Wangd0270dc2019-11-26 11:40:40 +0800426 and the register value is different.
427
York Sun149eb332016-09-26 08:09:27 -0700428config SYS_FSL_ERRATUM_A010315
429 bool "Workaround for PCIe erratum A010315"
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800430
431config SYS_FSL_ERRATUM_A010539
432 bool "Workaround for PIN MUX erratum A010539"
York Sun4dd8c612016-10-04 14:31:48 -0700433
York Sunf188d222016-10-04 14:45:01 -0700434config MAX_CPUS
435 int "Maximum number of CPUs permitted for Layerscape"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800436 default 2 if ARCH_LS1028A
York Sunf188d222016-10-04 14:45:01 -0700437 default 4 if ARCH_LS1043A
438 default 4 if ARCH_LS1046A
439 default 16 if ARCH_LS2080A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530440 default 8 if ARCH_LS1088A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000441 default 16 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530442 default 16 if ARCH_LX2162A
York Sunf188d222016-10-04 14:45:01 -0700443 default 1
444 help
445 Set this number to the maximum number of possible CPUs in the SoC.
446 SoCs may have multiple clusters with each cluster may have multiple
447 ports. If some ports are reserved but higher ports are used for
448 cores, count the reserved ports. This will allocate enough memory
449 in spin table to properly handle all cores.
450
Meenakshi Aggarwalbbd33182018-11-30 22:32:11 +0530451config EMC2305
452 bool "Fan controller"
453 help
454 Enable the EMC2305 fan controller for configuration of fan
455 speed.
456
Udit Agarwal22ec2382019-11-07 16:11:32 +0000457config NXP_ESBC
458 bool "NXP_ESBC"
York Sun728e7002016-12-02 09:32:35 -0800459 help
460 Enable Freescale Secure Boot feature
461
Yuan Yao52ae4fd2016-12-01 10:13:52 +0800462config QSPI_AHB_INIT
463 bool "Init the QSPI AHB bus"
464 help
465 The default setting for QSPI AHB bus just support 3bytes addressing.
466 But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
467 bus for those flashes to support the full QSPI flash size.
468
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530469config FSPI_AHB_EN_4BYTE
470 bool "Enable 4-byte Fast Read command for AHB mode"
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530471 help
472 The default setting for FlexSPI AHB bus just supports 3-byte addressing.
473 But some FlexSPI flash sizes are up to 64MBytes.
474 This flag enables fast read command for AHB mode and modifies required
475 LUT to support full FlexSPI flash.
476
Ashish Kumar11234062017-08-11 11:09:14 +0530477config SYS_CCI400_OFFSET
478 hex "Offset for CCI400 base"
479 depends on SYS_FSL_HAS_CCI400
Yuantian Tang4aefa162019-04-10 16:43:33 +0800480 default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
Ashish Kumar11234062017-08-11 11:09:14 +0530481 default 0x180000 if FSL_LSCH2
482 help
483 Offset for CCI400 base
484 CCI400 base addr = CCSRBAR + CCI400_OFFSET
485
York Sune7310a32016-10-04 14:45:54 -0700486config SYS_FSL_IFC_BANK_COUNT
487 int "Maximum banks of Integrated flash controller"
Ashish Kumarb25faa22017-08-31 16:12:53 +0530488 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700489 default 4 if ARCH_LS1043A
490 default 4 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530491 default 8 if ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700492
Ashish Kumar11234062017-08-11 11:09:14 +0530493config SYS_FSL_HAS_CCI400
494 bool
495
Ashish Kumar97393d62017-08-18 10:54:36 +0530496config SYS_FSL_HAS_CCN504
497 bool
498
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000499config SYS_FSL_HAS_CCN508
500 bool
501
York Sun0dc9abb2016-10-04 14:46:50 -0700502config SYS_FSL_HAS_DP_DDR
503 bool
Tom Rini69ea5a62022-03-30 18:07:35 -0400504 help
505 Defines the SoC has DP-DDR used for DPAA.
506
507config DP_DDR_CTRL
508 int
509 depends on SYS_FSL_HAS_DP_DDR
510 default 2 if ARCH_LS2080A
511
512config DP_DDR_NUM_CTRLS
513 int
514 depends on SYS_FSL_HAS_DP_DDR
515 default 1 if ARCH_LS2080A
516
517config SYS_DP_DDR_BASE
518 hex
519 depends on SYS_FSL_HAS_DP_DDR
520 default 0x6000000000 if ARCH_LS2080A
521
522config SYS_DP_DDR_BASE_PHY
523 int
524 depends on SYS_FSL_HAS_DP_DDR
525 default 0 if ARCH_LS2080A
526 help
527 DDR controller uses this value as the base address for binding.
528 It is mapped to CONFIG_SYS_DP_DDR_BASE for core to access.
York Sun0dc9abb2016-10-04 14:46:50 -0700529
York Sun6b62ef02016-10-04 18:01:34 -0700530config SYS_FSL_SRDS_1
531 bool
532
533config SYS_FSL_SRDS_2
534 bool
535
Priyanka Jain1a602532018-09-27 10:32:05 +0530536config SYS_NXP_SRDS_3
537 bool
538
York Sun6b62ef02016-10-04 18:01:34 -0700539config SYS_HAS_SERDES
540 bool
541
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530542config FSL_TZASC_1
543 bool
544
545config FSL_TZASC_2
546 bool
547
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000548config FSL_TZASC_400
549 bool
550
551config FSL_TZPC_BP147
552 bool
York Sun4dd8c612016-10-04 14:31:48 -0700553endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800554
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800555menu "Layerscape clock tree configuration"
556 depends on FSL_LSCH2 || FSL_LSCH3
557
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800558config CLUSTER_CLK_FREQ
559 int "Reference clock of core cluster"
560 depends on ARCH_LS1012A
561 default 100000000
562 help
563 This number is the reference clock frequency of core PLL.
564 For most platforms, the core PLL and Platform PLL have the same
565 reference clock, but for some platforms, LS1012A for instance,
566 they are provided sepatately.
567
568config SYS_FSL_PCLK_DIV
569 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800570 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800571 default 1 if ARCH_LS1043A
572 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530573 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800574 default 2
575 help
576 This is the divider that is used to derive Platform clock from
577 Platform PLL, in another word:
578 Platform_clk = Platform_PLL_freq / this_divider
579
580config SYS_FSL_DSPI_CLK_DIV
581 int "DSPI clock divider"
582 default 1 if ARCH_LS1043A
583 default 2
584 help
585 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800586 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800587
588config SYS_FSL_DUART_CLK_DIV
589 int "DUART clock divider"
590 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000591 default 4 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530592 default 4 if ARCH_LX2162A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800593 default 2
594 help
595 This is the divider that is used to derive DUART clock from Platform
596 clock, in another word DUART_clk = Platform_clk / this_divider.
597
598config SYS_FSL_I2C_CLK_DIV
599 int "I2C clock divider"
600 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800601 default 4 if ARCH_LS1012A
602 default 4 if ARCH_LS1028A
603 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530604 default 8 if ARCH_LX2162A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800605 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800606 default 2
607 help
608 This is the divider that is used to derive I2C clock from Platform
609 clock, in another word I2C_clk = Platform_clk / this_divider.
610
611config SYS_FSL_IFC_CLK_DIV
612 int "IFC clock divider"
613 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800614 default 4 if ARCH_LS1012A
615 default 4 if ARCH_LS1028A
616 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530617 default 8 if ARCH_LX2162A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800618 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800619 default 2
620 help
621 This is the divider that is used to derive IFC clock from Platform
622 clock, in another word IFC_clk = Platform_clk / this_divider.
623
624config SYS_FSL_LPUART_CLK_DIV
625 int "LPUART clock divider"
626 default 1 if ARCH_LS1043A
627 default 2
628 help
629 This is the divider that is used to derive LPUART clock from Platform
630 clock, in another word LPUART_clk = Platform_clk / this_divider.
631
632config SYS_FSL_SDHC_CLK_DIV
633 int "SDHC clock divider"
634 default 1 if ARCH_LS1043A
635 default 1 if ARCH_LS1012A
636 default 2
637 help
638 This is the divider that is used to derive SDHC clock from Platform
639 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800640
641config SYS_FSL_QMAN_CLK_DIV
642 int "QMAN clock divider"
643 default 1 if ARCH_LS1043A
644 default 2
645 help
646 This is the divider that is used to derive QMAN clock from Platform
647 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800648endmenu
649
York Sund6964b32017-03-06 09:02:24 -0800650config RESV_RAM
651 bool
652 help
653 Reserve memory from the top, tracked by gd->arch.resv_ram. This
654 reserved RAM can be used by special driver that resides in memory
655 after U-Boot exits. It's up to implementation to allocate and allow
656 access to this reserved memory. For example, the reserved RAM can
657 be at the high end of physical memory. The reserve RAM may be
658 excluded from memory bank(s) passed to OS, or marked as reserved.
659
Ashish Kumarec455e22017-08-31 16:37:31 +0530660config SYS_FSL_EC1
661 bool
662 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000663 Ethernet controller 1, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530664 MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530665 Provides DPAA2 capabilities
666
667config SYS_FSL_EC2
668 bool
669 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000670 Ethernet controller 2, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530671 MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530672 Provides DPAA2 capabilities
673
York Sun1dc61ca2016-12-28 08:43:41 -0800674config SYS_FSL_ERRATUM_A008336
675 bool
676
677config SYS_FSL_ERRATUM_A008514
678 bool
679
680config SYS_FSL_ERRATUM_A008585
681 bool
682
683config SYS_FSL_ERRATUM_A008850
684 bool
685
Ashish kumar3b52a232017-02-23 16:03:57 +0530686config SYS_FSL_ERRATUM_A009203
687 bool
688
York Sun1dc61ca2016-12-28 08:43:41 -0800689config SYS_FSL_ERRATUM_A009635
690 bool
691
692config SYS_FSL_ERRATUM_A009660
693 bool
694
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000695config SYS_FSL_ERRATUM_A050382
696 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530697
698config SYS_FSL_HAS_RGMII
699 bool
700 depends on SYS_FSL_EC1 || SYS_FSL_EC2
701
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200702config SPL_LDSCRIPT
703 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800704
705config HAS_FSL_XHCI_USB
706 bool
Ran Wang5959f842017-10-23 10:09:21 +0800707 help
Tom Rini46c97312021-07-21 18:53:20 -0400708 For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
Ran Wang5959f842017-10-23 10:09:21 +0800709 pins, select it when the pins are assigned to USB.
Rajesh Bhagat729f22f2021-02-11 13:28:49 +0100710
711config SYS_FSL_BOOTROM_BASE
712 hex
713 depends on FSL_LSCH2
714 default 0
715
716config SYS_FSL_BOOTROM_SIZE
717 hex
718 depends on FSL_LSCH2
719 default 0x1000000