blob: 9cef363fbaabd3e7fb7651313ace7f73c72fa6cd [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
Michael Walle66f2a532020-05-10 01:20:11 +020026 select FSL_LAYERSCAPE
Yuantian Tang4aefa162019-04-10 16:43:33 +080027 select FSL_LSCH3
28 select NXP_LSCH3_2
29 select SYS_FSL_HAS_CCI400
30 select SYS_FSL_SRDS_1
31 select SYS_HAS_SERDES
32 select SYS_FSL_DDR
33 select SYS_FSL_DDR_LE
34 select SYS_FSL_DDR_VER_50
35 select SYS_FSL_HAS_DDR3
36 select SYS_FSL_HAS_DDR4
37 select SYS_FSL_HAS_SEC
38 select SYS_FSL_SEC_COMPAT_5
39 select SYS_FSL_SEC_LE
40 select FSL_TZASC_1
41 select ARCH_EARLY_INIT_R
42 select BOARD_EARLY_INIT_F
43 select SYS_I2C_MXC
Ran Wange118acb2019-05-14 17:34:56 +080044 select SYS_FSL_ERRATUM_A008997
Yuantian Tang4aefa162019-04-10 16:43:33 +080045 select SYS_FSL_ERRATUM_A009007
46 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
47 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
48 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +000049 select SYS_FSL_ERRATUM_A050382
Michael Walle148dc612021-03-17 15:01:36 +010050 select SYS_FSL_ERRATUM_A011334
Michael Walle7259dc52021-03-17 15:01:37 +010051 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +080052 select RESV_RAM if GIC_V3_ITS
Yuantian Tang4aefa162019-04-10 16:43:33 +080053 imply PANIC_HANG
54
York Sun149eb332016-09-26 08:09:27 -070055config ARCH_LS1043A
York Sunfcd0e742016-10-04 14:31:47 -070056 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080057 select ARMV8_SET_SMPEN
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000058 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000059 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070060 select FSL_LSCH2
Tom Rini46c97312021-07-21 18:53:20 -040061 select HAS_FSL_XHCI_USB if USB_HOST
Sriram Dash4a943332018-01-30 15:58:44 +053062 select SYS_FSL_SRDS_1
63 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080064 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070065 select SYS_FSL_DDR_BE
66 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000067 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +080068 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +080069 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +080070 select SYS_FSL_ERRATUM_A009008
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000071 select SYS_FSL_ERRATUM_A009660 if !TFABOOT
72 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +080073 select SYS_FSL_ERRATUM_A009798
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000074 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
York Sun149eb332016-09-26 08:09:27 -070075 select SYS_FSL_ERRATUM_A010315
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +080076 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -080077 select SYS_FSL_HAS_DDR3
78 select SYS_FSL_HAS_DDR4
Simon Glass62adede2017-01-23 13:31:19 -070079 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -070080 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +080081 select SYS_I2C_MXC
Biwen Li014460b2020-02-05 22:02:16 +080082 select SYS_I2C_MXC_I2C1 if !DM_I2C
83 select SYS_I2C_MXC_I2C2 if !DM_I2C
84 select SYS_I2C_MXC_I2C3 if !DM_I2C
85 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glassc88a09a2017-08-04 16:34:34 -060086 imply CMD_PCI
York Sunb3d71642016-09-26 08:09:26 -070087
York Sunbad49842016-09-26 08:09:24 -070088config ARCH_LS1046A
York Sunfcd0e742016-10-04 14:31:47 -070089 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +080090 select ARMV8_SET_SMPEN
Rajesh Bhagat52d237a2019-01-25 13:36:26 +000091 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -070092 select FSL_LSCH2
Tom Rini46c97312021-07-21 18:53:20 -040093 select HAS_FSL_XHCI_USB if USB_HOST
Sriram Dash4a943332018-01-30 15:58:44 +053094 select SYS_FSL_SRDS_1
95 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -080096 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -070097 select SYS_FSL_DDR_BE
York Sunb6fffd82016-10-04 18:03:08 -070098 select SYS_FSL_DDR_VER_50
Rajesh Bhagatcd786e82018-11-05 18:01:48 +000099 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
100 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
101 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wange64f7472017-09-04 18:46:50 +0800102 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800103 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800104 select SYS_FSL_ERRATUM_A009008
Ran Wang9e8fabc2017-09-04 18:46:49 +0800105 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800106 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatcd786e82018-11-05 18:01:48 +0000107 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
108 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
109 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800110 select SYS_FSL_ERRATUM_A010539
York Sund297d392016-12-28 08:43:40 -0800111 select SYS_FSL_HAS_DDR4
York Sun6b62ef02016-10-04 18:01:34 -0700112 select SYS_FSL_SRDS_2
Simon Glass62adede2017-01-23 13:31:19 -0700113 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700114 select BOARD_EARLY_INIT_F
Biwen Li42637e72020-06-04 18:42:14 +0800115 select SYS_I2C_MXC
Biwen Lif0018f52020-02-05 22:02:17 +0800116 select SYS_I2C_MXC_I2C1 if !DM_I2C
117 select SYS_I2C_MXC_I2C2 if !DM_I2C
118 select SYS_I2C_MXC_I2C3 if !DM_I2C
119 select SYS_I2C_MXC_I2C4 if !DM_I2C
Simon Glass0e5faf02017-06-14 21:28:21 -0600120 imply SCSI
Tuomas Tynkkynenedf9f622017-12-08 15:36:19 +0200121 imply SCSI_AHCI
York Sunb3d71642016-09-26 08:09:26 -0700122
Ashish Kumarb25faa22017-08-31 16:12:53 +0530123config ARCH_LS1088A
124 bool
125 select ARMV8_SET_SMPEN
Pankit Gargf5c2a832018-12-27 04:37:55 +0000126 select ARM_ERRATA_855873 if !TFABOOT
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000127 select FSL_LAYERSCAPE
Ashish Kumarb25faa22017-08-31 16:12:53 +0530128 select FSL_LSCH3
Sriram Dash4a943332018-01-30 15:58:44 +0530129 select SYS_FSL_SRDS_1
130 select SYS_HAS_SERDES
Ashish Kumarb25faa22017-08-31 16:12:53 +0530131 select SYS_FSL_DDR
132 select SYS_FSL_DDR_LE
133 select SYS_FSL_DDR_VER_50
Ashish Kumarec455e22017-08-31 16:37:31 +0530134 select SYS_FSL_EC1
135 select SYS_FSL_EC2
Pankit Gargf5c2a832018-12-27 04:37:55 +0000136 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
137 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
138 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
139 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
140 select SYS_FSL_ERRATUM_A008850 if !TFABOOT
Ran Wangef277072017-09-22 15:21:34 +0800141 select SYS_FSL_ERRATUM_A009007
Ashish Kumarb25faa22017-08-31 16:12:53 +0530142 select SYS_FSL_HAS_CCI400
143 select SYS_FSL_HAS_DDR4
Ashish Kumarec455e22017-08-31 16:37:31 +0530144 select SYS_FSL_HAS_RGMII
Ashish Kumarb25faa22017-08-31 16:12:53 +0530145 select SYS_FSL_HAS_SEC
146 select SYS_FSL_SEC_COMPAT_5
147 select SYS_FSL_SEC_LE
148 select SYS_FSL_SRDS_1
149 select SYS_FSL_SRDS_2
150 select FSL_TZASC_1
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000151 select FSL_TZASC_400
152 select FSL_TZPC_BP147
Ashish Kumarb25faa22017-08-31 16:12:53 +0530153 select ARCH_EARLY_INIT_R
154 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530155 select SYS_I2C_MXC
Chuanhua Han98a5e402019-07-26 20:25:37 +0800156 select SYS_I2C_MXC_I2C1 if !TFABOOT
157 select SYS_I2C_MXC_I2C2 if !TFABOOT
158 select SYS_I2C_MXC_I2C3 if !TFABOOT
159 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800160 select RESV_RAM if GIC_V3_ITS
Ashish Kumara179e562017-11-02 09:50:47 +0530161 imply SCSI
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900162 imply PANIC_HANG
Ashish Kumarb25faa22017-08-31 16:12:53 +0530163
York Sunfcd0e742016-10-04 14:31:47 -0700164config ARCH_LS2080A
165 bool
Hou Zhiqiang4d1525a2017-01-06 17:41:11 +0800166 select ARMV8_SET_SMPEN
Tom Rinibacb52c2017-03-07 07:13:42 -0500167 select ARM_ERRATA_826974
168 select ARM_ERRATA_828024
169 select ARM_ERRATA_829520
170 select ARM_ERRATA_833471
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000171 select FSL_LAYERSCAPE
York Sun4dd8c612016-10-04 14:31:48 -0700172 select FSL_LSCH3
Sriram Dash4a943332018-01-30 15:58:44 +0530173 select SYS_FSL_SRDS_1
174 select SYS_HAS_SERDES
York Sund297d392016-12-28 08:43:40 -0800175 select SYS_FSL_DDR
York Sunb6fffd82016-10-04 18:03:08 -0700176 select SYS_FSL_DDR_LE
177 select SYS_FSL_DDR_VER_50
Ashish Kumar97393d62017-08-18 10:54:36 +0530178 select SYS_FSL_HAS_CCN504
York Sun6b62ef02016-10-04 18:01:34 -0700179 select SYS_FSL_HAS_DP_DDR
York Sun92c36e22016-12-28 08:43:30 -0800180 select SYS_FSL_HAS_SEC
York Sund297d392016-12-28 08:43:40 -0800181 select SYS_FSL_HAS_DDR4
York Sun92c36e22016-12-28 08:43:30 -0800182 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800183 select SYS_FSL_SEC_LE
York Sun6b62ef02016-10-04 18:01:34 -0700184 select SYS_FSL_SRDS_2
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530185 select FSL_TZASC_1
186 select FSL_TZASC_2
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000187 select FSL_TZASC_400
188 select FSL_TZPC_BP147
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000189 select SYS_FSL_ERRATUM_A008336 if !TFABOOT
190 select SYS_FSL_ERRATUM_A008511 if !TFABOOT
191 select SYS_FSL_ERRATUM_A008514 if !TFABOOT
York Sun1dc61ca2016-12-28 08:43:41 -0800192 select SYS_FSL_ERRATUM_A008585
Ran Wange64f7472017-09-04 18:46:50 +0800193 select SYS_FSL_ERRATUM_A008997
Ran Wang3ba69482017-09-04 18:46:51 +0800194 select SYS_FSL_ERRATUM_A009007
Ran Wangb358b7b2017-09-04 18:46:48 +0800195 select SYS_FSL_ERRATUM_A009008
York Sun1dc61ca2016-12-28 08:43:41 -0800196 select SYS_FSL_ERRATUM_A009635
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000197 select SYS_FSL_ERRATUM_A009663 if !TFABOOT
Ran Wang9e8fabc2017-09-04 18:46:49 +0800198 select SYS_FSL_ERRATUM_A009798
York Sun1dc61ca2016-12-28 08:43:41 -0800199 select SYS_FSL_ERRATUM_A009801
Rajesh Bhagatd5691be2018-12-27 04:37:59 +0000200 select SYS_FSL_ERRATUM_A009803 if !TFABOOT
201 select SYS_FSL_ERRATUM_A009942 if !TFABOOT
202 select SYS_FSL_ERRATUM_A010165 if !TFABOOT
Ashish kumar3b52a232017-02-23 16:03:57 +0530203 select SYS_FSL_ERRATUM_A009203
Simon Glass62adede2017-01-23 13:31:19 -0700204 select ARCH_EARLY_INIT_R
Simon Glass7a99a872017-01-23 13:31:20 -0700205 select BOARD_EARLY_INIT_F
Sriram Dash7122a0c2018-02-06 11:26:30 +0530206 select SYS_I2C_MXC
Chuanhua Han3f27fff2019-07-26 19:24:03 +0800207 select SYS_I2C_MXC_I2C1 if !TFABOOT
208 select SYS_I2C_MXC_I2C2 if !TFABOOT
209 select SYS_I2C_MXC_I2C3 if !TFABOOT
210 select SYS_I2C_MXC_I2C4 if !TFABOOT
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800211 select RESV_RAM if GIC_V3_ITS
Masahiro Yamada9afc6c52018-04-25 18:47:52 +0900212 imply DISTRO_DEFAULTS
Masahiro Yamadaacede7a2017-12-04 12:37:00 +0900213 imply PANIC_HANG
York Sun4dd8c612016-10-04 14:31:48 -0700214
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530215config ARCH_LX2162A
216 bool
217 select ARMV8_SET_SMPEN
218 select FSL_LSCH3
219 select NXP_LSCH3_2
220 select SYS_HAS_SERDES
221 select SYS_FSL_SRDS_1
222 select SYS_FSL_SRDS_2
223 select SYS_FSL_DDR
224 select SYS_FSL_DDR_LE
225 select SYS_FSL_DDR_VER_50
226 select SYS_FSL_EC1
227 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530228 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800229 select SYS_FSL_ERRATUM_A011334
230 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530231 select SYS_FSL_HAS_RGMII
232 select SYS_FSL_HAS_SEC
233 select SYS_FSL_HAS_CCN508
234 select SYS_FSL_HAS_DDR4
235 select SYS_FSL_SEC_COMPAT_5
236 select SYS_FSL_SEC_LE
237 select ARCH_EARLY_INIT_R
238 select BOARD_EARLY_INIT_F
239 select SYS_I2C_MXC
240 select RESV_RAM if GIC_V3_ITS
241 imply DISTRO_DEFAULTS
242 imply PANIC_HANG
243 imply SCSI
244 imply SCSI_AHCI
245
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000246config ARCH_LX2160A
247 bool
248 select ARMV8_SET_SMPEN
249 select FSL_LSCH3
Tom Rini46c97312021-07-21 18:53:20 -0400250 select HAS_FSL_XHCI_USB if USB_HOST
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000251 select NXP_LSCH3_2
252 select SYS_HAS_SERDES
253 select SYS_FSL_SRDS_1
254 select SYS_FSL_SRDS_2
255 select SYS_NXP_SRDS_3
256 select SYS_FSL_DDR
257 select SYS_FSL_DDR_LE
258 select SYS_FSL_DDR_VER_50
259 select SYS_FSL_EC1
260 select SYS_FSL_EC2
Ran Wang13a84a52021-06-16 17:53:19 +0530261 select SYS_FSL_ERRATUM_A050204
Yangbo Lu84f0a952021-04-27 16:42:11 +0800262 select SYS_FSL_ERRATUM_A011334
263 select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000264 select SYS_FSL_HAS_RGMII
265 select SYS_FSL_HAS_SEC
266 select SYS_FSL_HAS_CCN508
267 select SYS_FSL_HAS_DDR4
268 select SYS_FSL_SEC_COMPAT_5
269 select SYS_FSL_SEC_LE
270 select ARCH_EARLY_INIT_R
271 select BOARD_EARLY_INIT_F
272 select SYS_I2C_MXC
Hou Zhiqiangce4a92a2020-04-28 10:19:31 +0800273 select RESV_RAM if GIC_V3_ITS
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000274 imply DISTRO_DEFAULTS
275 imply PANIC_HANG
276 imply SCSI
277 imply SCSI_AHCI
278
York Sun4dd8c612016-10-04 14:31:48 -0700279config FSL_LSCH2
280 bool
Ashish Kumar11234062017-08-11 11:09:14 +0530281 select SYS_FSL_HAS_CCI400
York Sun92c36e22016-12-28 08:43:30 -0800282 select SYS_FSL_HAS_SEC
283 select SYS_FSL_SEC_COMPAT_5
York Sunfa4199422016-12-28 08:43:31 -0800284 select SYS_FSL_SEC_BE
York Sun4dd8c612016-10-04 14:31:48 -0700285
286config FSL_LSCH3
Alex Marginean47568ce2020-01-11 01:05:40 +0200287 select ARCH_MISC_INIT
York Sun4dd8c612016-10-04 14:31:48 -0700288 bool
289
Priyanka Jain88c25662018-10-29 09:11:29 +0000290config NXP_LSCH3_2
291 bool
292
York Sun4dd8c612016-10-04 14:31:48 -0700293menu "Layerscape architecture"
294 depends on FSL_LSCH2 || FSL_LSCH3
York Sunfcd0e742016-10-04 14:31:47 -0700295
Rajesh Bhagat52d237a2019-01-25 13:36:26 +0000296config FSL_LAYERSCAPE
297 bool
298
Wenbin Songa8f57a92017-01-17 18:31:15 +0800299config HAS_FEATURE_GIC64K_ALIGN
300 bool
301 default y if ARCH_LS1043A
302
Wenbin Songc6bc7c02017-01-17 18:31:16 +0800303config HAS_FEATURE_ENHANCED_MSI
304 bool
305 default y if ARCH_LS1043A
Wenbin Songa8f57a92017-01-17 18:31:15 +0800306
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800307menu "Layerscape PPA"
308config FSL_LS_PPA
309 bool "FSL Layerscape PPA firmware support"
macro.wave.z@gmail.com01bd3342016-12-08 11:58:22 +0800310 depends on !ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800311 select ARMV8_SEC_FIRMWARE_SUPPORT
Hou Zhiqiang6be115d2017-01-16 17:31:48 +0800312 select SEC_FIRMWARE_ARMV8_PSCI
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800313 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800314 help
315 The FSL Primary Protected Application (PPA) is a software component
316 which is loaded during boot stage, and then remains resident in RAM
317 and runs in the TrustZone after boot.
318 Say y to enable it.
York Sunf2aaf842017-05-15 08:52:00 -0700319
320config SPL_FSL_LS_PPA
321 bool "FSL Layerscape PPA firmware support for SPL build"
322 depends on !ARMV8_PSCI
323 select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
324 select SEC_FIRMWARE_ARMV8_PSCI
325 select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
326 help
327 The FSL Primary Protected Application (PPA) is a software component
328 which is loaded during boot stage, and then remains resident in RAM
329 and runs in the TrustZone after boot. This is to load PPA during SPL
330 stage instead of the RAM version of U-Boot. Once PPA is initialized,
331 the rest of U-Boot (including RAM version) runs at EL2.
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800332choice
333 prompt "FSL Layerscape PPA firmware loading-media select"
334 depends on FSL_LS_PPA
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800335 default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
336 default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800337 default SYS_LS_PPA_FW_IN_XIP
338
339config SYS_LS_PPA_FW_IN_XIP
340 bool "XIP"
341 help
342 Say Y here if the PPA firmware locate at XIP flash, such
343 as NOR or QSPI flash.
344
Hou Zhiqiangbd6e2cd2017-03-17 16:12:33 +0800345config SYS_LS_PPA_FW_IN_MMC
346 bool "eMMC or SD Card"
347 help
348 Say Y here if the PPA firmware locate at eMMC/SD card.
349
350config SYS_LS_PPA_FW_IN_NAND
351 bool "NAND"
352 help
353 Say Y here if the PPA firmware locate at NAND flash.
354
Hou Zhiqiangbff56d52017-01-16 17:31:49 +0800355endchoice
356
Sumit Garg8fddf752017-04-20 05:09:11 +0530357config LS_PPA_ESBC_HDR_SIZE
358 hex "Length of PPA ESBC header"
359 depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
360 default 0x2000
361 help
362 Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
363 NAND to memory to validate PPA image.
364
macro.wave.z@gmail.comec2d7ed2016-12-08 11:58:21 +0800365endmenu
366
Ran Wange64f7472017-09-04 18:46:50 +0800367config SYS_FSL_ERRATUM_A008997
368 bool "Workaround for USB PHY erratum A008997"
369
Ran Wang3ba69482017-09-04 18:46:51 +0800370config SYS_FSL_ERRATUM_A009007
371 bool
372 help
373 Workaround for USB PHY erratum A009007
374
Ran Wangb358b7b2017-09-04 18:46:48 +0800375config SYS_FSL_ERRATUM_A009008
376 bool "Workaround for USB PHY erratum A009008"
377
Ran Wang9e8fabc2017-09-04 18:46:49 +0800378config SYS_FSL_ERRATUM_A009798
379 bool "Workaround for USB PHY erratum A009798"
380
Ran Wang13a84a52021-06-16 17:53:19 +0530381config SYS_FSL_ERRATUM_A050204
382 bool "Workaround for USB PHY erratum A050204"
Ran Wangd0270dc2019-11-26 11:40:40 +0800383 help
384 USB3.0 Receiver needs to enable fixed equalization
385 for each of PHY instances in an SOC. This is similar
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530386 to erratum A-009007, but this one is for LX2160A and LX2162A,
Ran Wangd0270dc2019-11-26 11:40:40 +0800387 and the register value is different.
388
York Sun149eb332016-09-26 08:09:27 -0700389config SYS_FSL_ERRATUM_A010315
390 bool "Workaround for PCIe erratum A010315"
Hou Zhiqiangc06b30a2016-09-29 12:42:44 +0800391
392config SYS_FSL_ERRATUM_A010539
393 bool "Workaround for PIN MUX erratum A010539"
York Sun4dd8c612016-10-04 14:31:48 -0700394
York Sunf188d222016-10-04 14:45:01 -0700395config MAX_CPUS
396 int "Maximum number of CPUs permitted for Layerscape"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800397 default 2 if ARCH_LS1028A
York Sunf188d222016-10-04 14:45:01 -0700398 default 4 if ARCH_LS1043A
399 default 4 if ARCH_LS1046A
400 default 16 if ARCH_LS2080A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530401 default 8 if ARCH_LS1088A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000402 default 16 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530403 default 16 if ARCH_LX2162A
York Sunf188d222016-10-04 14:45:01 -0700404 default 1
405 help
406 Set this number to the maximum number of possible CPUs in the SoC.
407 SoCs may have multiple clusters with each cluster may have multiple
408 ports. If some ports are reserved but higher ports are used for
409 cores, count the reserved ports. This will allocate enough memory
410 in spin table to properly handle all cores.
411
Meenakshi Aggarwalbbd33182018-11-30 22:32:11 +0530412config EMC2305
413 bool "Fan controller"
414 help
415 Enable the EMC2305 fan controller for configuration of fan
416 speed.
417
Udit Agarwal22ec2382019-11-07 16:11:32 +0000418config NXP_ESBC
419 bool "NXP_ESBC"
York Sun728e7002016-12-02 09:32:35 -0800420 help
421 Enable Freescale Secure Boot feature
422
Yuan Yao52ae4fd2016-12-01 10:13:52 +0800423config QSPI_AHB_INIT
424 bool "Init the QSPI AHB bus"
425 help
426 The default setting for QSPI AHB bus just support 3bytes addressing.
427 But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
428 bus for those flashes to support the full QSPI flash size.
429
Kuldeep Singh34aafb02019-11-21 17:15:17 +0530430config FSPI_AHB_EN_4BYTE
431 bool "Enable 4-byte Fast Read command for AHB mode"
432 default n
433 help
434 The default setting for FlexSPI AHB bus just supports 3-byte addressing.
435 But some FlexSPI flash sizes are up to 64MBytes.
436 This flag enables fast read command for AHB mode and modifies required
437 LUT to support full FlexSPI flash.
438
Ashish Kumar11234062017-08-11 11:09:14 +0530439config SYS_CCI400_OFFSET
440 hex "Offset for CCI400 base"
441 depends on SYS_FSL_HAS_CCI400
Yuantian Tang4aefa162019-04-10 16:43:33 +0800442 default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
Ashish Kumar11234062017-08-11 11:09:14 +0530443 default 0x180000 if FSL_LSCH2
444 help
445 Offset for CCI400 base
446 CCI400 base addr = CCSRBAR + CCI400_OFFSET
447
York Sune7310a32016-10-04 14:45:54 -0700448config SYS_FSL_IFC_BANK_COUNT
449 int "Maximum banks of Integrated flash controller"
Ashish Kumarb25faa22017-08-31 16:12:53 +0530450 depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700451 default 4 if ARCH_LS1043A
452 default 4 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530453 default 8 if ARCH_LS2080A || ARCH_LS1088A
York Sune7310a32016-10-04 14:45:54 -0700454
Ashish Kumar11234062017-08-11 11:09:14 +0530455config SYS_FSL_HAS_CCI400
456 bool
457
Ashish Kumar97393d62017-08-18 10:54:36 +0530458config SYS_FSL_HAS_CCN504
459 bool
460
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000461config SYS_FSL_HAS_CCN508
462 bool
463
York Sun0dc9abb2016-10-04 14:46:50 -0700464config SYS_FSL_HAS_DP_DDR
465 bool
466
York Sun6b62ef02016-10-04 18:01:34 -0700467config SYS_FSL_SRDS_1
468 bool
469
470config SYS_FSL_SRDS_2
471 bool
472
Priyanka Jain1a602532018-09-27 10:32:05 +0530473config SYS_NXP_SRDS_3
474 bool
475
York Sun6b62ef02016-10-04 18:01:34 -0700476config SYS_HAS_SERDES
477 bool
478
Ashish kumar76bd6ce2017-04-07 11:40:32 +0530479config FSL_TZASC_1
480 bool
481
482config FSL_TZASC_2
483 bool
484
Rajesh Bhagat5756f7e2019-01-20 05:30:06 +0000485config FSL_TZASC_400
486 bool
487
488config FSL_TZPC_BP147
489 bool
York Sun4dd8c612016-10-04 14:31:48 -0700490endmenu
York Sun1dc61ca2016-12-28 08:43:41 -0800491
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800492menu "Layerscape clock tree configuration"
493 depends on FSL_LSCH2 || FSL_LSCH3
494
495config SYS_FSL_CLK
496 bool "Enable clock tree initialization"
497 default y
498
499config CLUSTER_CLK_FREQ
500 int "Reference clock of core cluster"
501 depends on ARCH_LS1012A
502 default 100000000
503 help
504 This number is the reference clock frequency of core PLL.
505 For most platforms, the core PLL and Platform PLL have the same
506 reference clock, but for some platforms, LS1012A for instance,
507 they are provided sepatately.
508
509config SYS_FSL_PCLK_DIV
510 int "Platform clock divider"
Yuantian Tang4aefa162019-04-10 16:43:33 +0800511 default 1 if ARCH_LS1028A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800512 default 1 if ARCH_LS1043A
513 default 1 if ARCH_LS1046A
Ashish Kumarb25faa22017-08-31 16:12:53 +0530514 default 1 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800515 default 2
516 help
517 This is the divider that is used to derive Platform clock from
518 Platform PLL, in another word:
519 Platform_clk = Platform_PLL_freq / this_divider
520
521config SYS_FSL_DSPI_CLK_DIV
522 int "DSPI clock divider"
523 default 1 if ARCH_LS1043A
524 default 2
525 help
526 This is the divider that is used to derive DSPI clock from Platform
Hou Zhiqiang0c8fcb62017-07-03 18:37:11 +0800527 clock, in another word DSPI_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800528
529config SYS_FSL_DUART_CLK_DIV
530 int "DUART clock divider"
531 default 1 if ARCH_LS1043A
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000532 default 4 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530533 default 4 if ARCH_LX2162A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800534 default 2
535 help
536 This is the divider that is used to derive DUART clock from Platform
537 clock, in another word DUART_clk = Platform_clk / this_divider.
538
539config SYS_FSL_I2C_CLK_DIV
540 int "I2C clock divider"
541 default 1 if ARCH_LS1043A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800542 default 4 if ARCH_LS1012A
543 default 4 if ARCH_LS1028A
544 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530545 default 8 if ARCH_LX2162A
Chuanhua Han44d4d332019-08-02 16:53:53 +0800546 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800547 default 2
548 help
549 This is the divider that is used to derive I2C clock from Platform
550 clock, in another word I2C_clk = Platform_clk / this_divider.
551
552config SYS_FSL_IFC_CLK_DIV
553 int "IFC clock divider"
554 default 1 if ARCH_LS1043A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800555 default 4 if ARCH_LS1012A
556 default 4 if ARCH_LS1028A
557 default 8 if ARCH_LX2160A
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530558 default 8 if ARCH_LX2162A
Chuanhua Han3df89cc2019-08-08 17:04:58 +0800559 default 8 if ARCH_LS1088A
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800560 default 2
561 help
562 This is the divider that is used to derive IFC clock from Platform
563 clock, in another word IFC_clk = Platform_clk / this_divider.
564
565config SYS_FSL_LPUART_CLK_DIV
566 int "LPUART clock divider"
567 default 1 if ARCH_LS1043A
568 default 2
569 help
570 This is the divider that is used to derive LPUART clock from Platform
571 clock, in another word LPUART_clk = Platform_clk / this_divider.
572
573config SYS_FSL_SDHC_CLK_DIV
574 int "SDHC clock divider"
575 default 1 if ARCH_LS1043A
576 default 1 if ARCH_LS1012A
577 default 2
578 help
579 This is the divider that is used to derive SDHC clock from Platform
580 clock, in another word SDHC_clk = Platform_clk / this_divider.
Hou Zhiqiangfef32c62018-04-25 16:28:44 +0800581
582config SYS_FSL_QMAN_CLK_DIV
583 int "QMAN clock divider"
584 default 1 if ARCH_LS1043A
585 default 2
586 help
587 This is the divider that is used to derive QMAN clock from Platform
588 clock, in another word QMAN_clk = Platform_clk / this_divider.
Hou Zhiqiang3f91cda2017-01-10 16:44:15 +0800589endmenu
590
York Sund6964b32017-03-06 09:02:24 -0800591config RESV_RAM
592 bool
593 help
594 Reserve memory from the top, tracked by gd->arch.resv_ram. This
595 reserved RAM can be used by special driver that resides in memory
596 after U-Boot exits. It's up to implementation to allocate and allow
597 access to this reserved memory. For example, the reserved RAM can
598 be at the high end of physical memory. The reserve RAM may be
599 excluded from memory bank(s) passed to OS, or marked as reserved.
600
Ashish Kumarec455e22017-08-31 16:37:31 +0530601config SYS_FSL_EC1
602 bool
603 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000604 Ethernet controller 1, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530605 MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530606 Provides DPAA2 capabilities
607
608config SYS_FSL_EC2
609 bool
610 help
Priyanka Jainef76b2e2018-10-29 09:17:09 +0000611 Ethernet controller 2, this is connected to
Meenakshi Aggarwalccb5d5d2020-10-29 19:16:16 +0530612 MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
Ashish Kumarec455e22017-08-31 16:37:31 +0530613 Provides DPAA2 capabilities
614
York Sun1dc61ca2016-12-28 08:43:41 -0800615config SYS_FSL_ERRATUM_A008336
616 bool
617
618config SYS_FSL_ERRATUM_A008514
619 bool
620
621config SYS_FSL_ERRATUM_A008585
622 bool
623
624config SYS_FSL_ERRATUM_A008850
625 bool
626
Ashish kumar3b52a232017-02-23 16:03:57 +0530627config SYS_FSL_ERRATUM_A009203
628 bool
629
York Sun1dc61ca2016-12-28 08:43:41 -0800630config SYS_FSL_ERRATUM_A009635
631 bool
632
633config SYS_FSL_ERRATUM_A009660
634 bool
635
Laurentiu Tudor7ea2feb2019-10-18 09:01:56 +0000636config SYS_FSL_ERRATUM_A050382
637 bool
Ashish Kumarec455e22017-08-31 16:37:31 +0530638
639config SYS_FSL_HAS_RGMII
640 bool
641 depends on SYS_FSL_EC1 || SYS_FSL_EC2
642
Philipp Tomsich2d6a0cc2017-08-03 23:23:55 +0200643config SPL_LDSCRIPT
644 default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
Ran Wang5959f842017-10-23 10:09:21 +0800645
646config HAS_FSL_XHCI_USB
647 bool
Ran Wang5959f842017-10-23 10:09:21 +0800648 help
Tom Rini46c97312021-07-21 18:53:20 -0400649 For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
Ran Wang5959f842017-10-23 10:09:21 +0800650 pins, select it when the pins are assigned to USB.
Rajesh Bhagat729f22f2021-02-11 13:28:49 +0100651
652config SYS_FSL_BOOTROM_BASE
653 hex
654 depends on FSL_LSCH2
655 default 0
656
657config SYS_FSL_BOOTROM_SIZE
658 hex
659 depends on FSL_LSCH2
660 default 0x1000000