blob: da53afcea93dfc8e0933435fffe9e7ae30dadbb1 [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
Tom Rinid391d8b2021-12-11 14:55:51 -050044 select FSL_TZPC_BP147
Yuantian Tang4aefa162019-04-10 16:43:33 +080045 select ARCH_EARLY_INIT_R
46 select BOARD_EARLY_INIT_F
47 select SYS_I2C_MXC
Ran Wange118acb2019-05-14 17:34:56 +080048 select SYS_FSL_ERRATUM_A008997
Yuantian Tang4aefa162019-04-10 16:43:33 +080049 select SYS_FSL_ERRATUM_A009007
50 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
51 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
52 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +000053 select SYS_FSL_ERRATUM_A050382
Michael Walle148dc612021-03-17 15:01:36 +010054 select SYS_FSL_ERRATUM_A011334
Michael Walle7259dc52021-03-17 15:01:37 +010055 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +080056 select RESV_RAM if GIC_V3_ITS
Yuantian Tang4aefa162019-04-10 16:43:33 +080057 imply PANIC_HANG
58
York Sun149eb332016-09-26 08:09:27 -070059config ARCH_LS1043A
York Sunfcd0e742016-10-04 14:31:47 -070060 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080061 select ARMV8_SET_SMPEN
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000062 select ARM_ERRATA_855873 if !TFABOOT
Tom Rini05b419e2021-12-11 14:55:49 -050063 select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000064 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070065 select FSL_LSCH2
Tom Rini249f11f2021-08-19 14:19:39 -040066 select GICV2
Tom Rini46c97312021-07-21 18:53:20 -040067 select HAS_FSL_XHCI_USB if USB_HOST
Tom Rinie1e85442021-08-27 21:18:30 -040068 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +053069 select SYS_FSL_SRDS_1
70 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080071 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070072 select SYS_FSL_DDR_BE
73 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000074 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080075 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +080076 select SYS_FSL_ERRATUM_A009007
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 Wang3ba69482017-09-04 18:46:51 +0800114 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800115 select SYS_FSL_ERRATUM_A009008
Ran Wang9e8fabc2017-09-04 18:46:49 +0800116 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800117 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000118 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
119 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
120 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800121 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -0800122 select SYS_FSL_HAS_DDR4
York Sun6b62ef02016-10-04 18:01:34 -0700123 select SYS_FSL_SRDS_2
Simon Glass62adede2017-01-23 13:31:19 -0700124 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700125 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +0800126 select SYS_I2C_MXC
Biwen Lif0018f52020-02-05 22:02:17 +0800127 select SYS_I2C_MXC_I2C1 if !DM_I2C
128 select SYS_I2C_MXC_I2C2 if !DM_I2C
129 select SYS_I2C_MXC_I2C3 if !DM_I2C
130 select SYS_I2C_MXC_I2C4 if !DM_I2C
Tom Rini4abdf142021-08-17 17:59:41 -0400131 imply ID_EEPROM
Simon Glass0e5faf02017-06-14 21:28:21 -0600132 imply SCSI
Tuomas Tynkkynenedf9f622017-12-08 15:36:19 +0200133 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400134 imply SPL_SYS_I2C_LEGACY
York Sunb3d71642016-09-26 08:09:26 -0700135
Ashish Kumarb25faa22017-08-31 16:12:53 +0530136config ARCH_LS1088A
137 bool
138 select ARMV8_SET_SMPEN
Pankit Gargf5c2a832018-12-27 04:37:55 +0000139 select ARM_ERRATA_855873 if !TFABOOT
Tom Rini05b419e2021-12-11 14:55:49 -0500140 select FSL_IFC
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000141 select FSL_LAYERSCAPE
Ashish Kumarb25faa22017-08-31 16:12:53 +0530142 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400143 select GICV3
Tom Rinie1e85442021-08-27 21:18:30 -0400144 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530145 select SYS_FSL_SRDS_1
146 select SYS_HAS_SERDES
Ashish Kumarb25faa22017-08-31 16:12:53 +0530147 select SYS_FSL_DDR
148 select SYS_FSL_DDR_LE
149 select SYS_FSL_DDR_VER_50
Ashish Kumarec455e22017-08-31 16:37:31 +0530150 select SYS_FSL_EC1
151 select SYS_FSL_EC2
Pankit Gargf5c2a832018-12-27 04:37:55 +0000152 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
153 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
154 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
155 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
156 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wangef277072017-09-22 15:21:34 +0800157 select SYS_FSL_ERRATUM_A009007
Ashish Kumarb25faa22017-08-31 16:12:53 +0530158 select SYS_FSL_HAS_CCI400
159 select SYS_FSL_HAS_DDR4
Ashish Kumarec455e22017-08-31 16:37:31 +0530160 select SYS_FSL_HAS_RGMII
Ashish Kumarb25faa22017-08-31 16:12:53 +0530161 select SYS_FSL_HAS_SEC
162 select SYS_FSL_SEC_COMPAT_5
163 select SYS_FSL_SEC_LE
164 select SYS_FSL_SRDS_1
165 select SYS_FSL_SRDS_2
166 select FSL_TZASC_1
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000167 select FSL_TZASC_400
168 select FSL_TZPC_BP147
Ashish Kumarb25faa22017-08-31 16:12:53 +0530169 select ARCH_EARLY_INIT_R
170 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530171 select SYS_I2C_MXC
Chuanhua Han98a5e402019-07-26 20:25:37 +0800172 select SYS_I2C_MXC_I2C1 if !TFABOOT
173 select SYS_I2C_MXC_I2C2 if !TFABOOT
174 select SYS_I2C_MXC_I2C3 if !TFABOOT
175 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800176 select RESV_RAM if GIC_V3_ITS
Tom Rini4abdf142021-08-17 17:59:41 -0400177 imply ID_EEPROM
Ashish Kumara179e562017-11-02 09:50:47 +0530178 imply SCSI
Tom Rini52b2e262021-08-18 23:12:24 -0400179 imply SPL_SYS_I2C_LEGACY
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900180 imply PANIC_HANG
Ashish Kumarb25faa22017-08-31 16:12:53 +0530181
York Sunfcd0e742016-10-04 14:31:47 -0700182config ARCH_LS2080A
183 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +0800184 select ARMV8_SET_SMPEN
Tom Rinibacb52c2017-03-07 07:13:42 -0500185 select ARM_ERRATA_826974
186 select ARM_ERRATA_828024
187 select ARM_ERRATA_829520
188 select ARM_ERRATA_833471
Tom Rini05b419e2021-12-11 14:55:49 -0500189 select FSL_IFC
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000190 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700191 select FSL_LSCH3
Tom Rini249f11f2021-08-19 14:19:39 -0400192 select GICV3
Tom Rinie1e85442021-08-27 21:18:30 -0400193 select SKIP_LOWLEVEL_INIT
Sriram Dash4a943332018-01-30 15:58:44 +0530194 select SYS_FSL_SRDS_1
195 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800196 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700197 select SYS_FSL_DDR_LE
198 select SYS_FSL_DDR_VER_50
Ashish Kumar97393d62017-08-18 10:54:36 +0530199 select SYS_FSL_HAS_CCN504
York Sun6b62ef02016-10-04 18:01:34 -0700200 select SYS_FSL_HAS_DP_DDR
York Sun92c36e22016-12-28 08:43:30 -0800201 select SYS_FSL_HAS_SEC
York Sund297d392016-12-28 08:43:40 -0800202 select SYS_FSL_HAS_DDR4
York Sun92c36e22016-12-28 08:43:30 -0800203 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800204 select SYS_FSL_SEC_LE
York Sun6b62ef02016-10-04 18:01:34 -0700205 select SYS_FSL_SRDS_2
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530206 select FSL_TZASC_1
207 select FSL_TZASC_2
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000208 select FSL_TZASC_400
209 select FSL_TZPC_BP147
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000210 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
211 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
212 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
York Sun1dc61ca2016-12-28 08:43:41 -0800213 select SYS_FSL_ERRATUM_A008585
Ran Wange64f7472017-09-04 18:46:50 +0800214 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800215 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800216 select SYS_FSL_ERRATUM_A009008
York Sun1dc61ca2016-12-28 08:43:41 -0800217 select SYS_FSL_ERRATUM_A009635
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000218 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +0800219 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800220 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000221 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
222 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
223 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Ashish kumar3b52a232017-02-23 16:03:57 +0530224 select SYS_FSL_ERRATUM_A009203
Simon Glass62adede2017-01-23 13:31:19 -0700225 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700226 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530227 select SYS_I2C_MXC
Chuanhua Han3f27fff2019-07-26 19:24:03 +0800228 select SYS_I2C_MXC_I2C1 if !TFABOOT
229 select SYS_I2C_MXC_I2C2 if !TFABOOT
230 select SYS_I2C_MXC_I2C3 if !TFABOOT
231 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800232 select RESV_RAM if GIC_V3_ITS
Masahiro Yamada9afc6c52018-04-25 18:47:52 +0900233 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400234 imply ID_EEPROM
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900235 imply PANIC_HANG
Tom Rini52b2e262021-08-18 23:12:24 -0400236 imply SPL_SYS_I2C_LEGACY
York Sun4dd8c612016-10-04 14:31:48 -0700237
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530238config ARCH_LX2162A
239 bool
240 select ARMV8_SET_SMPEN
Tom Riniea3cc392021-11-13 19:22:43 -0500241 select FSL_DDR_BIST
242 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500243 select FSL_LAYERSCAPE
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530244 select FSL_LSCH3
Tom Rinid391d8b2021-12-11 14:55:51 -0500245 select FSL_TZPC_BP147
Tom Rini249f11f2021-08-19 14:19:39 -0400246 select GICV3
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530247 select NXP_LSCH3_2
248 select SYS_HAS_SERDES
249 select SYS_FSL_SRDS_1
250 select SYS_FSL_SRDS_2
251 select SYS_FSL_DDR
252 select SYS_FSL_DDR_LE
253 select SYS_FSL_DDR_VER_50
254 select SYS_FSL_EC1
255 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530256 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800257 select SYS_FSL_ERRATUM_A011334
258 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530259 select SYS_FSL_HAS_RGMII
260 select SYS_FSL_HAS_SEC
261 select SYS_FSL_HAS_CCN508
262 select SYS_FSL_HAS_DDR4
263 select SYS_FSL_SEC_COMPAT_5
264 select SYS_FSL_SEC_LE
Tom Rini50e6f1b2021-12-12 22:12:32 -0500265 select SYS_PCI_64BIT if PCI
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530266 select ARCH_EARLY_INIT_R
267 select BOARD_EARLY_INIT_F
268 select SYS_I2C_MXC
269 select RESV_RAM if GIC_V3_ITS
270 imply DISTRO_DEFAULTS
271 imply PANIC_HANG
272 imply SCSI
273 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400274 imply SPL_SYS_I2C_LEGACY
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530275
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000276config ARCH_LX2160A
277 bool
278 select ARMV8_SET_SMPEN
Tom Riniea3cc392021-11-13 19:22:43 -0500279 select FSL_DDR_BIST
280 select FSL_DDR_INTERACTIVE
Tom Rini80b48612021-11-07 22:59:36 -0500281 select FSL_LAYERSCAPE
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000282 select FSL_LSCH3
Tom Rinid391d8b2021-12-11 14:55:51 -0500283 select FSL_TZPC_BP147
Tom Rini249f11f2021-08-19 14:19:39 -0400284 select GICV3
Tom Rini46c97312021-07-21 18:53:20 -0400285 select HAS_FSL_XHCI_USB if USB_HOST
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000286 select NXP_LSCH3_2
287 select SYS_HAS_SERDES
288 select SYS_FSL_SRDS_1
289 select SYS_FSL_SRDS_2
290 select SYS_NXP_SRDS_3
291 select SYS_FSL_DDR
292 select SYS_FSL_DDR_LE
293 select SYS_FSL_DDR_VER_50
294 select SYS_FSL_EC1
295 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530296 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800297 select SYS_FSL_ERRATUM_A011334
298 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000299 select SYS_FSL_HAS_RGMII
300 select SYS_FSL_HAS_SEC
301 select SYS_FSL_HAS_CCN508
302 select SYS_FSL_HAS_DDR4
303 select SYS_FSL_SEC_COMPAT_5
304 select SYS_FSL_SEC_LE
Tom Rini50e6f1b2021-12-12 22:12:32 -0500305 select SYS_PCI_64BIT if PCI
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000306 select ARCH_EARLY_INIT_R
307 select BOARD_EARLY_INIT_F
308 select SYS_I2C_MXC
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800309 select RESV_RAM if GIC_V3_ITS
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000310 imply DISTRO_DEFAULTS
Tom Rini4abdf142021-08-17 17:59:41 -0400311 imply ID_EEPROM
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000312 imply PANIC_HANG
313 imply SCSI
314 imply SCSI_AHCI
Tom Rini52b2e262021-08-18 23:12:24 -0400315 imply SPL_SYS_I2C_LEGACY
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000316
York Sun4dd8c612016-10-04 14:31:48 -0700317config FSL_LSCH2
318 bool
Tom Rinie1e85442021-08-27 21:18:30 -0400319 select SKIP_LOWLEVEL_INIT
Ashish Kumar11234062017-08-11 11:09:14 +0530320 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800321 select SYS_FSL_HAS_SEC
322 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800323 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700324
325config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200326 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700327 bool
328
Priyanka Jain88c25662018-10-29 09:11:29 +0000329config NXP_LSCH3_2
330 bool
331
York Sun4dd8c612016-10-04 14:31:48 -0700332menu "Layerscape architecture"
333 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700334
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000335config FSL_LAYERSCAPE
336 bool
337
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
504
York Sun6b62ef02016-10-04 18:01:34 -0700505config SYS_FSL_SRDS_1
506 bool
507
508config SYS_FSL_SRDS_2
509 bool
510
Priyanka Jain1a602532018-09-27 10:32:05 +0530511config SYS_NXP_SRDS_3
512 bool
513
York Sun6b62ef02016-10-04 18:01:34 -0700514config SYS_HAS_SERDES
515 bool
516
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530517config FSL_TZASC_1
518 bool
519
520config FSL_TZASC_2
521 bool
522
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000523config FSL_TZASC_400
524 bool
525
526config FSL_TZPC_BP147
527 bool
York Sun4dd8c612016-10-04 14:31:48 -0700528endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800529
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800530menu "Layerscape clock tree configuration"
531 depends on FSL_LSCH2 || FSL_LSCH3
532
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800533config CLUSTER_CLK_FREQ
534 int "Reference clock of core cluster"
535 depends on ARCH_LS1012A
536 default 100000000
537 help
538 This number is the reference clock frequency of core PLL.
539 For most platforms, the core PLL and Platform PLL have the same
540 reference clock, but for some platforms, LS1012A for instance,
541 they are provided sepatately.
542
543config SYS_FSL_PCLK_DIV
544 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800545 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800546 default 1 if ARCH_LS1043A
547 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530548 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800549 default 2
550 help
551 This is the divider that is used to derive Platform clock from
552 Platform PLL, in another word:
553 Platform_clk = Platform_PLL_freq / this_divider
554
555config SYS_FSL_DSPI_CLK_DIV
556 int "DSPI clock divider"
557 default 1 if ARCH_LS1043A
558 default 2
559 help
560 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800561 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800562
563config SYS_FSL_DUART_CLK_DIV
564 int "DUART clock divider"
565 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000566 default 4 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530567 default 4 if ARCH_LX2162A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800568 default 2
569 help
570 This is the divider that is used to derive DUART clock from Platform
571 clock, in another word DUART_clk = Platform_clk / this_divider.
572
573config SYS_FSL_I2C_CLK_DIV
574 int "I2C clock divider"
575 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800576 default 4 if ARCH_LS1012A
577 default 4 if ARCH_LS1028A
578 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530579 default 8 if ARCH_LX2162A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800580 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800581 default 2
582 help
583 This is the divider that is used to derive I2C clock from Platform
584 clock, in another word I2C_clk = Platform_clk / this_divider.
585
586config SYS_FSL_IFC_CLK_DIV
587 int "IFC clock divider"
588 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800589 default 4 if ARCH_LS1012A
590 default 4 if ARCH_LS1028A
591 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530592 default 8 if ARCH_LX2162A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800593 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800594 default 2
595 help
596 This is the divider that is used to derive IFC clock from Platform
597 clock, in another word IFC_clk = Platform_clk / this_divider.
598
599config SYS_FSL_LPUART_CLK_DIV
600 int "LPUART clock divider"
601 default 1 if ARCH_LS1043A
602 default 2
603 help
604 This is the divider that is used to derive LPUART clock from Platform
605 clock, in another word LPUART_clk = Platform_clk / this_divider.
606
607config SYS_FSL_SDHC_CLK_DIV
608 int "SDHC clock divider"
609 default 1 if ARCH_LS1043A
610 default 1 if ARCH_LS1012A
611 default 2
612 help
613 This is the divider that is used to derive SDHC clock from Platform
614 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800615
616config SYS_FSL_QMAN_CLK_DIV
617 int "QMAN clock divider"
618 default 1 if ARCH_LS1043A
619 default 2
620 help
621 This is the divider that is used to derive QMAN clock from Platform
622 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800623endmenu
624
York Sund6964b32017-03-06 09:02:24 -0800625config RESV_RAM
626 bool
627 help
628 Reserve memory from the top, tracked by gd->arch.resv_ram. This
629 reserved RAM can be used by special driver that resides in memory
630 after U-Boot exits. It's up to implementation to allocate and allow
631 access to this reserved memory. For example, the reserved RAM can
632 be at the high end of physical memory. The reserve RAM may be
633 excluded from memory bank(s) passed to OS, or marked as reserved.
634
Ashish Kumarec455e22017-08-31 16:37:31 +0530635config SYS_FSL_EC1
636 bool
637 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000638 Ethernet controller 1, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530639 MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530640 Provides DPAA2 capabilities
641
642config SYS_FSL_EC2
643 bool
644 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000645 Ethernet controller 2, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530646 MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530647 Provides DPAA2 capabilities
648
York Sun1dc61ca2016-12-28 08:43:41 -0800649config SYS_FSL_ERRATUM_A008336
650 bool
651
652config SYS_FSL_ERRATUM_A008514
653 bool
654
655config SYS_FSL_ERRATUM_A008585
656 bool
657
658config SYS_FSL_ERRATUM_A008850
659 bool
660
Ashish kumar3b52a232017-02-23 16:03:57 +0530661config SYS_FSL_ERRATUM_A009203
662 bool
663
York Sun1dc61ca2016-12-28 08:43:41 -0800664config SYS_FSL_ERRATUM_A009635
665 bool
666
667config SYS_FSL_ERRATUM_A009660
668 bool
669
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000670config SYS_FSL_ERRATUM_A050382
671 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530672
673config SYS_FSL_HAS_RGMII
674 bool
675 depends on SYS_FSL_EC1 || SYS_FSL_EC2
676
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200677config SPL_LDSCRIPT
678 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800679
680config HAS_FSL_XHCI_USB
681 bool
Ran Wang5959f842017-10-23 10:09:21 +0800682 help
Tom Rini46c97312021-07-21 18:53:20 -0400683 For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
Ran Wang5959f842017-10-23 10:09:21 +0800684 pins, select it when the pins are assigned to USB.
Rajesh Bhagat729f22f2021-02-11 13:28:49 +0100685
686config SYS_FSL_BOOTROM_BASE
687 hex
688 depends on FSL_LSCH2
689 default 0
690
691config SYS_FSL_BOOTROM_SIZE
692 hex
693 depends on FSL_LSCH2
694 default 0x1000000