blob: b25639183f807fb42d6c0e54eecefc3b0faf0776 [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
Sriram Dash4a943332018-01-30 15:58:44 +05307 select SYS_FSL_SRDS_1
8 select SYS_HAS_SERDES
York Sunb6fffd82016-10-04 18:03:08 -07009 select SYS_FSL_DDR_BE
York Sunb3d71642016-09-26 08:09:26 -070010 select SYS_FSL_MMDC
York Sun149eb332016-09-26 08:09:27 -070011 select SYS_FSL_ERRATUM_A010315
Ran Wang02dc77b2017-11-13 16:14:48 +080012 select SYS_FSL_ERRATUM_A009798
13 select SYS_FSL_ERRATUM_A008997
14 select SYS_FSL_ERRATUM_A009007
15 select SYS_FSL_ERRATUM_A009008
Simon Glass62adede2017-01-23 13:31:19 -070016 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070017 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +053018 select SYS_I2C_MXC
Biwen Li0a759bb2019-12-31 15:33:41 +080019 select SYS_I2C_MXC_I2C1 if !DM_I2C
20 select SYS_I2C_MXC_I2C2 if !DM_I2C
Masahiro Yamadaacede7a2017-12-04 12:37:00 +090021 imply PANIC_HANG
York Sun149eb332016-09-26 08:09:27 -070022
Yuantian Tang4aefa162019-04-10 16:43:33 +080023config ARCH_LS1028A
24 bool
25 select ARMV8_SET_SMPEN
26 select FSL_LSCH3
27 select NXP_LSCH3_2
28 select SYS_FSL_HAS_CCI400
29 select SYS_FSL_SRDS_1
30 select SYS_HAS_SERDES
31 select SYS_FSL_DDR
32 select SYS_FSL_DDR_LE
33 select SYS_FSL_DDR_VER_50
34 select SYS_FSL_HAS_DDR3
35 select SYS_FSL_HAS_DDR4
36 select SYS_FSL_HAS_SEC
37 select SYS_FSL_SEC_COMPAT_5
38 select SYS_FSL_SEC_LE
39 select FSL_TZASC_1
40 select ARCH_EARLY_INIT_R
41 select BOARD_EARLY_INIT_F
42 select SYS_I2C_MXC
Ran Wange118acb2019-05-14 17:34:56 +080043 select SYS_FSL_ERRATUM_A008997
Yuantian Tang4aefa162019-04-10 16:43:33 +080044 select SYS_FSL_ERRATUM_A009007
45 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
46 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
47 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +000048 select SYS_FSL_ERRATUM_A050382
Yuantian Tang4aefa162019-04-10 16:43:33 +080049 imply PANIC_HANG
50
York Sun149eb332016-09-26 08:09:27 -070051config ARCH_LS1043A
York Sunfcd0e742016-10-04 14:31:47 -070052 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080053 select ARMV8_SET_SMPEN
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000054 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000055 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070056 select FSL_LSCH2
Sriram Dash4a943332018-01-30 15:58:44 +053057 select SYS_FSL_SRDS_1
58 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080059 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070060 select SYS_FSL_DDR_BE
61 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000062 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080063 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +080064 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +080065 select SYS_FSL_ERRATUM_A009008
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000066 select SYS_FSL_ERRATUM_A009660 if !TFABOOT
67 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +080068 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -080069 select SYS_FSL_ERRATUM_A009929
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000070 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
York Sun149eb332016-09-26 08:09:27 -070071 select SYS_FSL_ERRATUM_A010315
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +080072 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -080073 select SYS_FSL_HAS_DDR3
74 select SYS_FSL_HAS_DDR4
Simon Glass62adede2017-01-23 13:31:19 -070075 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070076 select BOARD_EARLY_INIT_F
Biwen Li014460b2020-02-05 22:02:16 +080077 select SYS_I2C_MXC if !DM_I2C
78 select SYS_I2C_MXC_I2C1 if !DM_I2C
79 select SYS_I2C_MXC_I2C2 if !DM_I2C
80 select SYS_I2C_MXC_I2C3 if !DM_I2C
81 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glassc88a09a2017-08-04 16:34:34 -060082 imply CMD_PCI
York Sunb3d71642016-09-26 08:09:26 -070083
York Sunbad49842016-09-26 08:09:24 -070084config ARCH_LS1046A
York Sunfcd0e742016-10-04 14:31:47 -070085 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080086 select ARMV8_SET_SMPEN
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000087 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070088 select FSL_LSCH2
Sriram Dash4a943332018-01-30 15:58:44 +053089 select SYS_FSL_SRDS_1
90 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080091 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070092 select SYS_FSL_DDR_BE
York Sunb6fffd82016-10-04 18:03:08 -070093 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000094 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
95 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
96 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080097 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +080098 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +080099 select SYS_FSL_ERRATUM_A009008
Ran Wang9e8fabc2017-09-04 18:46:49 +0800100 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800101 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000102 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
103 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
104 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800105 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -0800106 select SYS_FSL_HAS_DDR4
York Sun6b62ef02016-10-04 18:01:34 -0700107 select SYS_FSL_SRDS_2
Simon Glass62adede2017-01-23 13:31:19 -0700108 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700109 select BOARD_EARLY_INIT_F
Biwen Lif0018f52020-02-05 22:02:17 +0800110 select SYS_I2C_MXC if !DM_I2C
111 select SYS_I2C_MXC_I2C1 if !DM_I2C
112 select SYS_I2C_MXC_I2C2 if !DM_I2C
113 select SYS_I2C_MXC_I2C3 if !DM_I2C
114 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glass0e5faf02017-06-14 21:28:21 -0600115 imply SCSI
Tuomas Tynkkynenedf9f622017-12-08 15:36:19 +0200116 imply SCSI_AHCI
York Sunb3d71642016-09-26 08:09:26 -0700117
Ashish Kumarb25faa22017-08-31 16:12:53 +0530118config ARCH_LS1088A
119 bool
120 select ARMV8_SET_SMPEN
Pankit Gargf5c2a832018-12-27 04:37:55 +0000121 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000122 select FSL_LAYERSCAPE
Ashish Kumarb25faa22017-08-31 16:12:53 +0530123 select FSL_LSCH3
Sriram Dash4a943332018-01-30 15:58:44 +0530124 select SYS_FSL_SRDS_1
125 select SYS_HAS_SERDES
Ashish Kumarb25faa22017-08-31 16:12:53 +0530126 select SYS_FSL_DDR
127 select SYS_FSL_DDR_LE
128 select SYS_FSL_DDR_VER_50
Ashish Kumarec455e22017-08-31 16:37:31 +0530129 select SYS_FSL_EC1
130 select SYS_FSL_EC2
Pankit Gargf5c2a832018-12-27 04:37:55 +0000131 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
132 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
133 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
134 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
135 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wangef277072017-09-22 15:21:34 +0800136 select SYS_FSL_ERRATUM_A009007
Ashish Kumarb25faa22017-08-31 16:12:53 +0530137 select SYS_FSL_HAS_CCI400
138 select SYS_FSL_HAS_DDR4
Ashish Kumarec455e22017-08-31 16:37:31 +0530139 select SYS_FSL_HAS_RGMII
Ashish Kumarb25faa22017-08-31 16:12:53 +0530140 select SYS_FSL_HAS_SEC
141 select SYS_FSL_SEC_COMPAT_5
142 select SYS_FSL_SEC_LE
143 select SYS_FSL_SRDS_1
144 select SYS_FSL_SRDS_2
145 select FSL_TZASC_1
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000146 select FSL_TZASC_400
147 select FSL_TZPC_BP147
Ashish Kumarb25faa22017-08-31 16:12:53 +0530148 select ARCH_EARLY_INIT_R
149 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530150 select SYS_I2C_MXC
Chuanhua Han98a5e402019-07-26 20:25:37 +0800151 select SYS_I2C_MXC_I2C1 if !TFABOOT
152 select SYS_I2C_MXC_I2C2 if !TFABOOT
153 select SYS_I2C_MXC_I2C3 if !TFABOOT
154 select SYS_I2C_MXC_I2C4 if !TFABOOT
Ashish Kumara179e562017-11-02 09:50:47 +0530155 imply SCSI
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900156 imply PANIC_HANG
Ashish Kumarb25faa22017-08-31 16:12:53 +0530157
York Sunfcd0e742016-10-04 14:31:47 -0700158config ARCH_LS2080A
159 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +0800160 select ARMV8_SET_SMPEN
Tom Rinibacb52c2017-03-07 07:13:42 -0500161 select ARM_ERRATA_826974
162 select ARM_ERRATA_828024
163 select ARM_ERRATA_829520
164 select ARM_ERRATA_833471
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000165 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700166 select FSL_LSCH3
Sriram Dash4a943332018-01-30 15:58:44 +0530167 select SYS_FSL_SRDS_1
168 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800169 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700170 select SYS_FSL_DDR_LE
171 select SYS_FSL_DDR_VER_50
Ashish Kumar97393d62017-08-18 10:54:36 +0530172 select SYS_FSL_HAS_CCN504
York Sun6b62ef02016-10-04 18:01:34 -0700173 select SYS_FSL_HAS_DP_DDR
York Sun92c36e22016-12-28 08:43:30 -0800174 select SYS_FSL_HAS_SEC
York Sund297d392016-12-28 08:43:40 -0800175 select SYS_FSL_HAS_DDR4
York Sun92c36e22016-12-28 08:43:30 -0800176 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800177 select SYS_FSL_SEC_LE
York Sun6b62ef02016-10-04 18:01:34 -0700178 select SYS_FSL_SRDS_2
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530179 select FSL_TZASC_1
180 select FSL_TZASC_2
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000181 select FSL_TZASC_400
182 select FSL_TZPC_BP147
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000183 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
184 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
185 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
York Sun1dc61ca2016-12-28 08:43:41 -0800186 select SYS_FSL_ERRATUM_A008585
Ran Wange64f7472017-09-04 18:46:50 +0800187 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800188 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800189 select SYS_FSL_ERRATUM_A009008
York Sun1dc61ca2016-12-28 08:43:41 -0800190 select SYS_FSL_ERRATUM_A009635
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000191 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +0800192 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800193 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000194 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
195 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
196 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Ashish kumar3b52a232017-02-23 16:03:57 +0530197 select SYS_FSL_ERRATUM_A009203
Simon Glass62adede2017-01-23 13:31:19 -0700198 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700199 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530200 select SYS_I2C_MXC
Chuanhua Han3f27fff2019-07-26 19:24:03 +0800201 select SYS_I2C_MXC_I2C1 if !TFABOOT
202 select SYS_I2C_MXC_I2C2 if !TFABOOT
203 select SYS_I2C_MXC_I2C3 if !TFABOOT
204 select SYS_I2C_MXC_I2C4 if !TFABOOT
Masahiro Yamada9afc6c52018-04-25 18:47:52 +0900205 imply DISTRO_DEFAULTS
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900206 imply PANIC_HANG
York Sun4dd8c612016-10-04 14:31:48 -0700207
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000208config ARCH_LX2160A
209 bool
210 select ARMV8_SET_SMPEN
211 select FSL_LSCH3
212 select NXP_LSCH3_2
213 select SYS_HAS_SERDES
214 select SYS_FSL_SRDS_1
215 select SYS_FSL_SRDS_2
216 select SYS_NXP_SRDS_3
217 select SYS_FSL_DDR
218 select SYS_FSL_DDR_LE
219 select SYS_FSL_DDR_VER_50
220 select SYS_FSL_EC1
221 select SYS_FSL_EC2
Ran Wangd0270dc2019-11-26 11:40:40 +0800222 select SYS_FSL_ERRATUM_A050106
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000223 select SYS_FSL_HAS_RGMII
224 select SYS_FSL_HAS_SEC
225 select SYS_FSL_HAS_CCN508
226 select SYS_FSL_HAS_DDR4
227 select SYS_FSL_SEC_COMPAT_5
228 select SYS_FSL_SEC_LE
229 select ARCH_EARLY_INIT_R
230 select BOARD_EARLY_INIT_F
231 select SYS_I2C_MXC
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000232 imply DISTRO_DEFAULTS
233 imply PANIC_HANG
234 imply SCSI
235 imply SCSI_AHCI
236
York Sun4dd8c612016-10-04 14:31:48 -0700237config FSL_LSCH2
238 bool
Ashish Kumar11234062017-08-11 11:09:14 +0530239 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800240 select SYS_FSL_HAS_SEC
241 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800242 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700243
244config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200245 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700246 bool
247
Priyanka Jain88c25662018-10-29 09:11:29 +0000248config NXP_LSCH3_2
249 bool
250
York Sun4dd8c612016-10-04 14:31:48 -0700251menu "Layerscape architecture"
252 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700253
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000254config FSL_LAYERSCAPE
255 bool
256
Wenbin Songa8f57a92017-01-17 18:31:15 +0800257config HAS_FEATURE_GIC64K_ALIGN
258 bool
259 default y if ARCH_LS1043A
260
Wenbin Songc6bc7c02017-01-17 18:31:16 +0800261config HAS_FEATURE_ENHANCED_MSI
262 bool
263 default y if ARCH_LS1043A
Wenbin Songa8f57a92017-01-17 18:31:15 +0800264
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800265menu "Layerscape PPA"
266config FSL_LS_PPA
267 bool "FSL Layerscape PPA firmware support"
macro.wave.z@gmail.com01bd3342016-12-08 11:58:22 +0800268 depends on !ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800269 select ARMV8_SEC_FIRMWARE_SUPPORT
Hou Zhiqiang6be115d2017-01-16 17:31:48 +0800270 select SEC_FIRMWARE_ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800271 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800272 help
273 The FSL Primary Protected Application (PPA) is a software component
274 which is loaded during boot stage, and then remains resident in RAM
275 and runs in the TrustZone after boot.
276 Say y to enable it.
York Sunf2aaf842017-05-15 08:52:00 -0700277
278config SPL_FSL_LS_PPA
279 bool "FSL Layerscape PPA firmware support for SPL build"
280 depends on !ARMV8_PSCI
281 select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
282 select SEC_FIRMWARE_ARMV8_PSCI
283 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
284 help
285 The FSL Primary Protected Application (PPA) is a software component
286 which is loaded during boot stage, and then remains resident in RAM
287 and runs in the TrustZone after boot. This is to load PPA during SPL
288 stage instead of the RAM version of U-Boot. Once PPA is initialized,
289 the rest of U-Boot (including RAM version) runs at EL2.
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800290choice
291 prompt "FSL Layerscape PPA firmware loading-media select"
292 depends on FSL_LS_PPA
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800293 default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
294 default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800295 default SYS_LS_PPA_FW_IN_XIP
296
297config SYS_LS_PPA_FW_IN_XIP
298 bool "XIP"
299 help
300 Say Y here if the PPA firmware locate at XIP flash, such
301 as NOR or QSPI flash.
302
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800303config SYS_LS_PPA_FW_IN_MMC
304 bool "eMMC or SD Card"
305 help
306 Say Y here if the PPA firmware locate at eMMC/SD card.
307
308config SYS_LS_PPA_FW_IN_NAND
309 bool "NAND"
310 help
311 Say Y here if the PPA firmware locate at NAND flash.
312
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800313endchoice
314
Sumit Garg8fddf752017-04-20 05:09:11 +0530315config LS_PPA_ESBC_HDR_SIZE
316 hex "Length of PPA ESBC header"
317 depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
318 default 0x2000
319 help
320 Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
321 NAND to memory to validate PPA image.
322
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800323endmenu
324
Ran Wange64f7472017-09-04 18:46:50 +0800325config SYS_FSL_ERRATUM_A008997
326 bool "Workaround for USB PHY erratum A008997"
327
Ran Wang3ba69482017-09-04 18:46:51 +0800328config SYS_FSL_ERRATUM_A009007
329 bool
330 help
331 Workaround for USB PHY erratum A009007
332
Ran Wangb358b7b2017-09-04 18:46:48 +0800333config SYS_FSL_ERRATUM_A009008
334 bool "Workaround for USB PHY erratum A009008"
335
Ran Wang9e8fabc2017-09-04 18:46:49 +0800336config SYS_FSL_ERRATUM_A009798
337 bool "Workaround for USB PHY erratum A009798"
338
Ran Wangd0270dc2019-11-26 11:40:40 +0800339config SYS_FSL_ERRATUM_A050106
340 bool "Workaround for USB PHY erratum A050106"
341 help
342 USB3.0 Receiver needs to enable fixed equalization
343 for each of PHY instances in an SOC. This is similar
344 to erratum A-009007, but this one is for LX2160A,
345 and the register value is different.
346
York Sun149eb332016-09-26 08:09:27 -0700347config SYS_FSL_ERRATUM_A010315
348 bool "Workaround for PCIe erratum A010315"
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800349
350config SYS_FSL_ERRATUM_A010539
351 bool "Workaround for PIN MUX erratum A010539"
York Sun4dd8c612016-10-04 14:31:48 -0700352
York Sunf188d222016-10-04 14:45:01 -0700353config MAX_CPUS
354 int "Maximum number of CPUs permitted for Layerscape"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800355 default 2 if ARCH_LS1028A
York Sunf188d222016-10-04 14:45:01 -0700356 default 4 if ARCH_LS1043A
357 default 4 if ARCH_LS1046A
358 default 16 if ARCH_LS2080A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530359 default 8 if ARCH_LS1088A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000360 default 16 if ARCH_LX2160A
York Sunf188d222016-10-04 14:45:01 -0700361 default 1
362 help
363 Set this number to the maximum number of possible CPUs in the SoC.
364 SoCs may have multiple clusters with each cluster may have multiple
365 ports. If some ports are reserved but higher ports are used for
366 cores, count the reserved ports. This will allocate enough memory
367 in spin table to properly handle all cores.
368
Meenakshi Aggarwalbbd33182018-11-30 22:32:11 +0530369config EMC2305
370 bool "Fan controller"
371 help
372 Enable the EMC2305 fan controller for configuration of fan
373 speed.
374
Udit Agarwal22ec2382019-11-07 16:11:32 +0000375config NXP_ESBC
376 bool "NXP_ESBC"
York Sun728e7002016-12-02 09:32:35 -0800377 help
378 Enable Freescale Secure Boot feature
379
Yuan Yao52ae4fd2016-12-01 10:13:52 +0800380config QSPI_AHB_INIT
381 bool "Init the QSPI AHB bus"
382 help
383 The default setting for QSPI AHB bus just support 3bytes addressing.
384 But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
385 bus for those flashes to support the full QSPI flash size.
386
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530387config FSPI_AHB_EN_4BYTE
388 bool "Enable 4-byte Fast Read command for AHB mode"
389 default n
390 help
391 The default setting for FlexSPI AHB bus just supports 3-byte addressing.
392 But some FlexSPI flash sizes are up to 64MBytes.
393 This flag enables fast read command for AHB mode and modifies required
394 LUT to support full FlexSPI flash.
395
Ashish Kumar11234062017-08-11 11:09:14 +0530396config SYS_CCI400_OFFSET
397 hex "Offset for CCI400 base"
398 depends on SYS_FSL_HAS_CCI400
Yuantian Tang4aefa162019-04-10 16:43:33 +0800399 default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
Ashish Kumar11234062017-08-11 11:09:14 +0530400 default 0x180000 if FSL_LSCH2
401 help
402 Offset for CCI400 base
403 CCI400 base addr = CCSRBAR + CCI400_OFFSET
404
York Sune7310a32016-10-04 14:45:54 -0700405config SYS_FSL_IFC_BANK_COUNT
406 int "Maximum banks of Integrated flash controller"
Ashish Kumarb25faa22017-08-31 16:12:53 +0530407 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700408 default 4 if ARCH_LS1043A
409 default 4 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530410 default 8 if ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700411
Ashish Kumar11234062017-08-11 11:09:14 +0530412config SYS_FSL_HAS_CCI400
413 bool
414
Ashish Kumar97393d62017-08-18 10:54:36 +0530415config SYS_FSL_HAS_CCN504
416 bool
417
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000418config SYS_FSL_HAS_CCN508
419 bool
420
York Sun0dc9abb2016-10-04 14:46:50 -0700421config SYS_FSL_HAS_DP_DDR
422 bool
423
York Sun6b62ef02016-10-04 18:01:34 -0700424config SYS_FSL_SRDS_1
425 bool
426
427config SYS_FSL_SRDS_2
428 bool
429
Priyanka Jain1a602532018-09-27 10:32:05 +0530430config SYS_NXP_SRDS_3
431 bool
432
York Sun6b62ef02016-10-04 18:01:34 -0700433config SYS_HAS_SERDES
434 bool
435
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530436config FSL_TZASC_1
437 bool
438
439config FSL_TZASC_2
440 bool
441
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000442config FSL_TZASC_400
443 bool
444
445config FSL_TZPC_BP147
446 bool
York Sun4dd8c612016-10-04 14:31:48 -0700447endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800448
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800449menu "Layerscape clock tree configuration"
450 depends on FSL_LSCH2 || FSL_LSCH3
451
452config SYS_FSL_CLK
453 bool "Enable clock tree initialization"
454 default y
455
456config CLUSTER_CLK_FREQ
457 int "Reference clock of core cluster"
458 depends on ARCH_LS1012A
459 default 100000000
460 help
461 This number is the reference clock frequency of core PLL.
462 For most platforms, the core PLL and Platform PLL have the same
463 reference clock, but for some platforms, LS1012A for instance,
464 they are provided sepatately.
465
466config SYS_FSL_PCLK_DIV
467 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800468 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800469 default 1 if ARCH_LS1043A
470 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530471 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800472 default 2
473 help
474 This is the divider that is used to derive Platform clock from
475 Platform PLL, in another word:
476 Platform_clk = Platform_PLL_freq / this_divider
477
478config SYS_FSL_DSPI_CLK_DIV
479 int "DSPI clock divider"
480 default 1 if ARCH_LS1043A
481 default 2
482 help
483 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800484 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800485
486config SYS_FSL_DUART_CLK_DIV
487 int "DUART clock divider"
488 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000489 default 4 if ARCH_LX2160A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800490 default 2
491 help
492 This is the divider that is used to derive DUART clock from Platform
493 clock, in another word DUART_clk = Platform_clk / this_divider.
494
495config SYS_FSL_I2C_CLK_DIV
496 int "I2C clock divider"
497 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800498 default 4 if ARCH_LS1012A
499 default 4 if ARCH_LS1028A
500 default 8 if ARCH_LX2160A
501 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800502 default 2
503 help
504 This is the divider that is used to derive I2C clock from Platform
505 clock, in another word I2C_clk = Platform_clk / this_divider.
506
507config SYS_FSL_IFC_CLK_DIV
508 int "IFC clock divider"
509 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800510 default 4 if ARCH_LS1012A
511 default 4 if ARCH_LS1028A
512 default 8 if ARCH_LX2160A
513 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800514 default 2
515 help
516 This is the divider that is used to derive IFC clock from Platform
517 clock, in another word IFC_clk = Platform_clk / this_divider.
518
519config SYS_FSL_LPUART_CLK_DIV
520 int "LPUART clock divider"
521 default 1 if ARCH_LS1043A
522 default 2
523 help
524 This is the divider that is used to derive LPUART clock from Platform
525 clock, in another word LPUART_clk = Platform_clk / this_divider.
526
527config SYS_FSL_SDHC_CLK_DIV
528 int "SDHC clock divider"
529 default 1 if ARCH_LS1043A
530 default 1 if ARCH_LS1012A
531 default 2
532 help
533 This is the divider that is used to derive SDHC clock from Platform
534 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800535
536config SYS_FSL_QMAN_CLK_DIV
537 int "QMAN clock divider"
538 default 1 if ARCH_LS1043A
539 default 2
540 help
541 This is the divider that is used to derive QMAN clock from Platform
542 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800543endmenu
544
York Sund6964b32017-03-06 09:02:24 -0800545config RESV_RAM
546 bool
547 help
548 Reserve memory from the top, tracked by gd->arch.resv_ram. This
549 reserved RAM can be used by special driver that resides in memory
550 after U-Boot exits. It's up to implementation to allocate and allow
551 access to this reserved memory. For example, the reserved RAM can
552 be at the high end of physical memory. The reserve RAM may be
553 excluded from memory bank(s) passed to OS, or marked as reserved.
554
Ashish Kumarec455e22017-08-31 16:37:31 +0530555config SYS_FSL_EC1
556 bool
557 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000558 Ethernet controller 1, this is connected to
559 MAC17 for LX2160A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530560 Provides DPAA2 capabilities
561
562config SYS_FSL_EC2
563 bool
564 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000565 Ethernet controller 2, this is connected to
566 MAC18 for LX2160A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530567 Provides DPAA2 capabilities
568
York Sun1dc61ca2016-12-28 08:43:41 -0800569config SYS_FSL_ERRATUM_A008336
570 bool
571
572config SYS_FSL_ERRATUM_A008514
573 bool
574
575config SYS_FSL_ERRATUM_A008585
576 bool
577
578config SYS_FSL_ERRATUM_A008850
579 bool
580
Ashish kumar3b52a232017-02-23 16:03:57 +0530581config SYS_FSL_ERRATUM_A009203
582 bool
583
York Sun1dc61ca2016-12-28 08:43:41 -0800584config SYS_FSL_ERRATUM_A009635
585 bool
586
587config SYS_FSL_ERRATUM_A009660
588 bool
589
590config SYS_FSL_ERRATUM_A009929
591 bool
York Sun1a770752017-03-06 09:02:26 -0800592
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000593config SYS_FSL_ERRATUM_A050382
594 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530595
596config SYS_FSL_HAS_RGMII
597 bool
598 depends on SYS_FSL_EC1 || SYS_FSL_EC2
599
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200600config SPL_LDSCRIPT
601 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800602
603config HAS_FSL_XHCI_USB
604 bool
605 default y if ARCH_LS1043A || ARCH_LS1046A
606 help
607 For some SoC(such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
608 pins, select it when the pins are assigned to USB.