blob: a6ac897ab30777e5884e1344aa5a2c23070c98dc [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 Riniea3cc392021-11-13 19:22:43 -0500236 select FSL_DDR_BIST
237 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500238 select FSL_LAYERSCAPE
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530239 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400240 select GICV3
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530241 select NXP_LSCH3_2
242 select SYS_HAS_SERDES
243 select SYS_FSL_SRDS_1
244 select SYS_FSL_SRDS_2
245 select SYS_FSL_DDR
246 select SYS_FSL_DDR_LE
247 select SYS_FSL_DDR_VER_50
248 select SYS_FSL_EC1
249 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530250 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800251 select SYS_FSL_ERRATUM_A011334
252 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530253 select SYS_FSL_HAS_RGMII
254 select SYS_FSL_HAS_SEC
255 select SYS_FSL_HAS_CCN508
256 select SYS_FSL_HAS_DDR4
257 select SYS_FSL_SEC_COMPAT_5
258 select SYS_FSL_SEC_LE
259 select ARCH_EARLY_INIT_R
260 select BOARD_EARLY_INIT_F
261 select SYS_I2C_MXC
262 select RESV_RAM if GIC_V3_ITS
263 imply DISTRO_DEFAULTS
264 imply PANIC_HANG
265 imply SCSI
266 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400267 imply SPL_SYS_I2C_LEGACY
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530268
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000269config ARCH_LX2160A
270 bool
271 select ARMV8_SET_SMPEN
Tom Riniea3cc392021-11-13 19:22:43 -0500272 select FSL_DDR_BIST
273 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500274 select FSL_LAYERSCAPE
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000275 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400276 select GICV3
Tom Rini46c97312021-07-21 18:53:20 -0400277 select HAS_FSL_XHCI_USB if USB_HOST
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000278 select NXP_LSCH3_2
279 select SYS_HAS_SERDES
280 select SYS_FSL_SRDS_1
281 select SYS_FSL_SRDS_2
282 select SYS_NXP_SRDS_3
283 select SYS_FSL_DDR
284 select SYS_FSL_DDR_LE
285 select SYS_FSL_DDR_VER_50
286 select SYS_FSL_EC1
287 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530288 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800289 select SYS_FSL_ERRATUM_A011334
290 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000291 select SYS_FSL_HAS_RGMII
292 select SYS_FSL_HAS_SEC
293 select SYS_FSL_HAS_CCN508
294 select SYS_FSL_HAS_DDR4
295 select SYS_FSL_SEC_COMPAT_5
296 select SYS_FSL_SEC_LE
297 select ARCH_EARLY_INIT_R
298 select BOARD_EARLY_INIT_F
299 select SYS_I2C_MXC
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800300 select RESV_RAM if GIC_V3_ITS
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000301 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400302 imply ID_EEPROM
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000303 imply PANIC_HANG
304 imply SCSI
305 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400306 imply SPL_SYS_I2C_LEGACY
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000307
York Sun4dd8c612016-10-04 14:31:48 -0700308config FSL_LSCH2
309 bool
Tom Rinie1e85442021-08-27 21:18:30 -0400310 select SKIP_LOWLEVEL_INIT
Ashish Kumar11234062017-08-11 11:09:14 +0530311 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800312 select SYS_FSL_HAS_SEC
313 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800314 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700315
316config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200317 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700318 bool
319
Priyanka Jain88c25662018-10-29 09:11:29 +0000320config NXP_LSCH3_2
321 bool
322
York Sun4dd8c612016-10-04 14:31:48 -0700323menu "Layerscape architecture"
324 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700325
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000326config FSL_LAYERSCAPE
327 bool
328
Wenbin Songa8f57a92017-01-17 18:31:15 +0800329config HAS_FEATURE_GIC64K_ALIGN
330 bool
331 default y if ARCH_LS1043A
332
Wenbin Songc6bc7c02017-01-17 18:31:16 +0800333config HAS_FEATURE_ENHANCED_MSI
334 bool
335 default y if ARCH_LS1043A
Wenbin Songa8f57a92017-01-17 18:31:15 +0800336
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800337menu "Layerscape PPA"
338config FSL_LS_PPA
339 bool "FSL Layerscape PPA firmware support"
macro.wave.z@gmail.com01bd3342016-12-08 11:58:22 +0800340 depends on !ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800341 select ARMV8_SEC_FIRMWARE_SUPPORT
Hou Zhiqiang6be115d2017-01-16 17:31:48 +0800342 select SEC_FIRMWARE_ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800343 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800344 help
345 The FSL Primary Protected Application (PPA) is a software component
346 which is loaded during boot stage, and then remains resident in RAM
347 and runs in the TrustZone after boot.
348 Say y to enable it.
York Sunf2aaf842017-05-15 08:52:00 -0700349
350config SPL_FSL_LS_PPA
351 bool "FSL Layerscape PPA firmware support for SPL build"
352 depends on !ARMV8_PSCI
353 select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
354 select SEC_FIRMWARE_ARMV8_PSCI
355 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
356 help
357 The FSL Primary Protected Application (PPA) is a software component
358 which is loaded during boot stage, and then remains resident in RAM
359 and runs in the TrustZone after boot. This is to load PPA during SPL
360 stage instead of the RAM version of U-Boot. Once PPA is initialized,
361 the rest of U-Boot (including RAM version) runs at EL2.
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800362choice
363 prompt "FSL Layerscape PPA firmware loading-media select"
364 depends on FSL_LS_PPA
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800365 default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
366 default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800367 default SYS_LS_PPA_FW_IN_XIP
368
369config SYS_LS_PPA_FW_IN_XIP
370 bool "XIP"
371 help
372 Say Y here if the PPA firmware locate at XIP flash, such
373 as NOR or QSPI flash.
374
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800375config SYS_LS_PPA_FW_IN_MMC
376 bool "eMMC or SD Card"
377 help
378 Say Y here if the PPA firmware locate at eMMC/SD card.
379
380config SYS_LS_PPA_FW_IN_NAND
381 bool "NAND"
382 help
383 Say Y here if the PPA firmware locate at NAND flash.
384
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800385endchoice
386
Sumit Garg8fddf752017-04-20 05:09:11 +0530387config LS_PPA_ESBC_HDR_SIZE
388 hex "Length of PPA ESBC header"
389 depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
390 default 0x2000
391 help
392 Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
393 NAND to memory to validate PPA image.
394
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800395endmenu
396
Ran Wange64f7472017-09-04 18:46:50 +0800397config SYS_FSL_ERRATUM_A008997
398 bool "Workaround for USB PHY erratum A008997"
399
Ran Wang3ba69482017-09-04 18:46:51 +0800400config SYS_FSL_ERRATUM_A009007
401 bool
402 help
403 Workaround for USB PHY erratum A009007
404
Ran Wangb358b7b2017-09-04 18:46:48 +0800405config SYS_FSL_ERRATUM_A009008
406 bool "Workaround for USB PHY erratum A009008"
407
Ran Wang9e8fabc2017-09-04 18:46:49 +0800408config SYS_FSL_ERRATUM_A009798
409 bool "Workaround for USB PHY erratum A009798"
410
Ran Wang13a84a52021-06-16 17:53:19 +0530411config SYS_FSL_ERRATUM_A050204
412 bool "Workaround for USB PHY erratum A050204"
Ran Wangd0270dc2019-11-26 11:40:40 +0800413 help
414 USB3.0 Receiver needs to enable fixed equalization
415 for each of PHY instances in an SOC. This is similar
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530416 to erratum A-009007, but this one is for LX2160A and LX2162A,
Ran Wangd0270dc2019-11-26 11:40:40 +0800417 and the register value is different.
418
York Sun149eb332016-09-26 08:09:27 -0700419config SYS_FSL_ERRATUM_A010315
420 bool "Workaround for PCIe erratum A010315"
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800421
422config SYS_FSL_ERRATUM_A010539
423 bool "Workaround for PIN MUX erratum A010539"
York Sun4dd8c612016-10-04 14:31:48 -0700424
York Sunf188d222016-10-04 14:45:01 -0700425config MAX_CPUS
426 int "Maximum number of CPUs permitted for Layerscape"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800427 default 2 if ARCH_LS1028A
York Sunf188d222016-10-04 14:45:01 -0700428 default 4 if ARCH_LS1043A
429 default 4 if ARCH_LS1046A
430 default 16 if ARCH_LS2080A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530431 default 8 if ARCH_LS1088A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000432 default 16 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530433 default 16 if ARCH_LX2162A
York Sunf188d222016-10-04 14:45:01 -0700434 default 1
435 help
436 Set this number to the maximum number of possible CPUs in the SoC.
437 SoCs may have multiple clusters with each cluster may have multiple
438 ports. If some ports are reserved but higher ports are used for
439 cores, count the reserved ports. This will allocate enough memory
440 in spin table to properly handle all cores.
441
Meenakshi Aggarwalbbd33182018-11-30 22:32:11 +0530442config EMC2305
443 bool "Fan controller"
444 help
445 Enable the EMC2305 fan controller for configuration of fan
446 speed.
447
Udit Agarwal22ec2382019-11-07 16:11:32 +0000448config NXP_ESBC
449 bool "NXP_ESBC"
York Sun728e7002016-12-02 09:32:35 -0800450 help
451 Enable Freescale Secure Boot feature
452
Yuan Yao52ae4fd2016-12-01 10:13:52 +0800453config QSPI_AHB_INIT
454 bool "Init the QSPI AHB bus"
455 help
456 The default setting for QSPI AHB bus just support 3bytes addressing.
457 But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
458 bus for those flashes to support the full QSPI flash size.
459
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530460config FSPI_AHB_EN_4BYTE
461 bool "Enable 4-byte Fast Read command for AHB mode"
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530462 help
463 The default setting for FlexSPI AHB bus just supports 3-byte addressing.
464 But some FlexSPI flash sizes are up to 64MBytes.
465 This flag enables fast read command for AHB mode and modifies required
466 LUT to support full FlexSPI flash.
467
Ashish Kumar11234062017-08-11 11:09:14 +0530468config SYS_CCI400_OFFSET
469 hex "Offset for CCI400 base"
470 depends on SYS_FSL_HAS_CCI400
Yuantian Tang4aefa162019-04-10 16:43:33 +0800471 default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
Ashish Kumar11234062017-08-11 11:09:14 +0530472 default 0x180000 if FSL_LSCH2
473 help
474 Offset for CCI400 base
475 CCI400 base addr = CCSRBAR + CCI400_OFFSET
476
York Sune7310a32016-10-04 14:45:54 -0700477config SYS_FSL_IFC_BANK_COUNT
478 int "Maximum banks of Integrated flash controller"
Ashish Kumarb25faa22017-08-31 16:12:53 +0530479 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700480 default 4 if ARCH_LS1043A
481 default 4 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530482 default 8 if ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700483
Ashish Kumar11234062017-08-11 11:09:14 +0530484config SYS_FSL_HAS_CCI400
485 bool
486
Ashish Kumar97393d62017-08-18 10:54:36 +0530487config SYS_FSL_HAS_CCN504
488 bool
489
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000490config SYS_FSL_HAS_CCN508
491 bool
492
York Sun0dc9abb2016-10-04 14:46:50 -0700493config SYS_FSL_HAS_DP_DDR
494 bool
495
York Sun6b62ef02016-10-04 18:01:34 -0700496config SYS_FSL_SRDS_1
497 bool
498
499config SYS_FSL_SRDS_2
500 bool
501
Priyanka Jain1a602532018-09-27 10:32:05 +0530502config SYS_NXP_SRDS_3
503 bool
504
York Sun6b62ef02016-10-04 18:01:34 -0700505config SYS_HAS_SERDES
506 bool
507
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530508config FSL_TZASC_1
509 bool
510
511config FSL_TZASC_2
512 bool
513
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000514config FSL_TZASC_400
515 bool
516
517config FSL_TZPC_BP147
518 bool
York Sun4dd8c612016-10-04 14:31:48 -0700519endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800520
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800521menu "Layerscape clock tree configuration"
522 depends on FSL_LSCH2 || FSL_LSCH3
523
524config SYS_FSL_CLK
525 bool "Enable clock tree initialization"
526 default y
527
528config CLUSTER_CLK_FREQ
529 int "Reference clock of core cluster"
530 depends on ARCH_LS1012A
531 default 100000000
532 help
533 This number is the reference clock frequency of core PLL.
534 For most platforms, the core PLL and Platform PLL have the same
535 reference clock, but for some platforms, LS1012A for instance,
536 they are provided sepatately.
537
538config SYS_FSL_PCLK_DIV
539 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800540 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800541 default 1 if ARCH_LS1043A
542 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530543 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800544 default 2
545 help
546 This is the divider that is used to derive Platform clock from
547 Platform PLL, in another word:
548 Platform_clk = Platform_PLL_freq / this_divider
549
550config SYS_FSL_DSPI_CLK_DIV
551 int "DSPI clock divider"
552 default 1 if ARCH_LS1043A
553 default 2
554 help
555 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800556 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800557
558config SYS_FSL_DUART_CLK_DIV
559 int "DUART clock divider"
560 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000561 default 4 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530562 default 4 if ARCH_LX2162A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800563 default 2
564 help
565 This is the divider that is used to derive DUART clock from Platform
566 clock, in another word DUART_clk = Platform_clk / this_divider.
567
568config SYS_FSL_I2C_CLK_DIV
569 int "I2C clock divider"
570 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800571 default 4 if ARCH_LS1012A
572 default 4 if ARCH_LS1028A
573 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530574 default 8 if ARCH_LX2162A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800575 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800576 default 2
577 help
578 This is the divider that is used to derive I2C clock from Platform
579 clock, in another word I2C_clk = Platform_clk / this_divider.
580
581config SYS_FSL_IFC_CLK_DIV
582 int "IFC clock divider"
583 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800584 default 4 if ARCH_LS1012A
585 default 4 if ARCH_LS1028A
586 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530587 default 8 if ARCH_LX2162A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800588 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800589 default 2
590 help
591 This is the divider that is used to derive IFC clock from Platform
592 clock, in another word IFC_clk = Platform_clk / this_divider.
593
594config SYS_FSL_LPUART_CLK_DIV
595 int "LPUART clock divider"
596 default 1 if ARCH_LS1043A
597 default 2
598 help
599 This is the divider that is used to derive LPUART clock from Platform
600 clock, in another word LPUART_clk = Platform_clk / this_divider.
601
602config SYS_FSL_SDHC_CLK_DIV
603 int "SDHC clock divider"
604 default 1 if ARCH_LS1043A
605 default 1 if ARCH_LS1012A
606 default 2
607 help
608 This is the divider that is used to derive SDHC clock from Platform
609 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800610
611config SYS_FSL_QMAN_CLK_DIV
612 int "QMAN clock divider"
613 default 1 if ARCH_LS1043A
614 default 2
615 help
616 This is the divider that is used to derive QMAN clock from Platform
617 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800618endmenu
619
York Sund6964b32017-03-06 09:02:24 -0800620config RESV_RAM
621 bool
622 help
623 Reserve memory from the top, tracked by gd->arch.resv_ram. This
624 reserved RAM can be used by special driver that resides in memory
625 after U-Boot exits. It's up to implementation to allocate and allow
626 access to this reserved memory. For example, the reserved RAM can
627 be at the high end of physical memory. The reserve RAM may be
628 excluded from memory bank(s) passed to OS, or marked as reserved.
629
Ashish Kumarec455e22017-08-31 16:37:31 +0530630config SYS_FSL_EC1
631 bool
632 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000633 Ethernet controller 1, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530634 MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530635 Provides DPAA2 capabilities
636
637config SYS_FSL_EC2
638 bool
639 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000640 Ethernet controller 2, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530641 MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530642 Provides DPAA2 capabilities
643
York Sun1dc61ca2016-12-28 08:43:41 -0800644config SYS_FSL_ERRATUM_A008336
645 bool
646
647config SYS_FSL_ERRATUM_A008514
648 bool
649
650config SYS_FSL_ERRATUM_A008585
651 bool
652
653config SYS_FSL_ERRATUM_A008850
654 bool
655
Ashish kumar3b52a232017-02-23 16:03:57 +0530656config SYS_FSL_ERRATUM_A009203
657 bool
658
York Sun1dc61ca2016-12-28 08:43:41 -0800659config SYS_FSL_ERRATUM_A009635
660 bool
661
662config SYS_FSL_ERRATUM_A009660
663 bool
664
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000665config SYS_FSL_ERRATUM_A050382
666 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530667
668config SYS_FSL_HAS_RGMII
669 bool
670 depends on SYS_FSL_EC1 || SYS_FSL_EC2
671
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200672config SPL_LDSCRIPT
673 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800674
675config HAS_FSL_XHCI_USB
676 bool
Ran Wang5959f842017-10-23 10:09:21 +0800677 help
Tom Rini46c97312021-07-21 18:53:20 -0400678 For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
Ran Wang5959f842017-10-23 10:09:21 +0800679 pins, select it when the pins are assigned to USB.
Rajesh Bhagat729f22f2021-02-11 13:28:49 +0100680
681config SYS_FSL_BOOTROM_BASE
682 hex
683 depends on FSL_LSCH2
684 default 0
685
686config SYS_FSL_BOOTROM_SIZE
687 hex
688 depends on FSL_LSCH2
689 default 0x1000000