Merge tag 'xilinx-for-v2022.04-rc1' of https://source.denx.de/u-boot/custodians/u...
[platform/kernel/u-boot.git] / arch / arm / cpu / armv8 / fsl-layerscape / Kconfig
1 config ARCH_LS1012A
2         bool
3         select ARMV8_SET_SMPEN
4         select ARM_ERRATA_855873 if !TFABOOT
5         select FSL_LAYERSCAPE
6         select FSL_LSCH2
7         select GICV2
8         select SKIP_LOWLEVEL_INIT
9         select SYS_FSL_SRDS_1
10         select SYS_HAS_SERDES
11         select SYS_FSL_DDR_BE
12         select SYS_FSL_MMDC
13         select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
14         select SYS_FSL_ERRATUM_A009798
15         select SYS_FSL_ERRATUM_A008997
16         select SYS_FSL_ERRATUM_A009007
17         select SYS_FSL_ERRATUM_A009008
18         select ARCH_EARLY_INIT_R
19         select BOARD_EARLY_INIT_F
20         select SYS_I2C_MXC
21         select SYS_I2C_MXC_I2C1 if !DM_I2C
22         select SYS_I2C_MXC_I2C2 if !DM_I2C
23         imply PANIC_HANG
24
25 config ARCH_LS1028A
26         bool
27         select ARMV8_SET_SMPEN
28         select FSL_LAYERSCAPE
29         select FSL_LSCH3
30         select GICV3
31         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 FSL_TZPC_BP147
45         select ARCH_EARLY_INIT_R
46         select BOARD_EARLY_INIT_F
47         select SYS_I2C_MXC
48         select SYS_FSL_ERRATUM_A008997
49         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
53         select SYS_FSL_ERRATUM_A050382
54         select SYS_FSL_ERRATUM_A011334
55         select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
56         select RESV_RAM if GIC_V3_ITS
57         imply PANIC_HANG
58
59 config ARCH_LS1043A
60         bool
61         select ARMV8_SET_SMPEN
62         select ARM_ERRATA_855873 if !TFABOOT
63         select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
64         select FSL_LAYERSCAPE
65         select FSL_LSCH2
66         select GICV2
67         select HAS_FSL_XHCI_USB if USB_HOST
68         select SKIP_LOWLEVEL_INIT
69         select SYS_FSL_SRDS_1
70         select SYS_HAS_SERDES
71         select SYS_FSL_DDR
72         select SYS_FSL_DDR_BE
73         select SYS_FSL_DDR_VER_50
74         select SYS_FSL_ERRATUM_A008850 if !TFABOOT
75         select SYS_FSL_ERRATUM_A008997
76         select SYS_FSL_ERRATUM_A009007
77         select SYS_FSL_ERRATUM_A009008
78         select SYS_FSL_ERRATUM_A009660 if !TFABOOT
79         select SYS_FSL_ERRATUM_A009663 if !TFABOOT
80         select SYS_FSL_ERRATUM_A009798
81         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
82         select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
83         select SYS_FSL_ERRATUM_A010539
84         select SYS_FSL_HAS_DDR3
85         select SYS_FSL_HAS_DDR4
86         select ARCH_EARLY_INIT_R
87         select BOARD_EARLY_INIT_F
88         select SYS_I2C_MXC
89         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
93         imply CMD_PCI
94         imply ID_EEPROM
95
96 config ARCH_LS1046A
97         bool
98         select ARMV8_SET_SMPEN
99         select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
100         select FSL_LAYERSCAPE
101         select FSL_LSCH2
102         select GICV2
103         select HAS_FSL_XHCI_USB if USB_HOST
104         select SKIP_LOWLEVEL_INIT
105         select SYS_FSL_SRDS_1
106         select SYS_HAS_SERDES
107         select SYS_FSL_DDR
108         select SYS_FSL_DDR_BE
109         select SYS_FSL_DDR_VER_50
110         select SYS_FSL_ERRATUM_A008336 if !TFABOOT
111         select SYS_FSL_ERRATUM_A008511 if !TFABOOT
112         select SYS_FSL_ERRATUM_A008850 if !TFABOOT
113         select SYS_FSL_ERRATUM_A008997
114         select SYS_FSL_ERRATUM_A009007
115         select SYS_FSL_ERRATUM_A009008
116         select SYS_FSL_ERRATUM_A009798
117         select SYS_FSL_ERRATUM_A009801
118         select SYS_FSL_ERRATUM_A009803 if !TFABOOT
119         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
120         select SYS_FSL_ERRATUM_A010165 if !TFABOOT
121         select SYS_FSL_ERRATUM_A010539
122         select SYS_FSL_HAS_DDR4
123         select SYS_FSL_SRDS_2
124         select ARCH_EARLY_INIT_R
125         select BOARD_EARLY_INIT_F
126         select SYS_I2C_MXC
127         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
131         imply ID_EEPROM
132         imply SCSI
133         imply SCSI_AHCI
134         imply SPL_SYS_I2C_LEGACY
135
136 config ARCH_LS1088A
137         bool
138         select ARMV8_SET_SMPEN
139         select ARM_ERRATA_855873 if !TFABOOT
140         select FSL_IFC
141         select FSL_LAYERSCAPE
142         select FSL_LSCH3
143         select GICV3
144         select SKIP_LOWLEVEL_INIT
145         select SYS_FSL_SRDS_1
146         select SYS_HAS_SERDES
147         select SYS_FSL_DDR
148         select SYS_FSL_DDR_LE
149         select SYS_FSL_DDR_VER_50
150         select SYS_FSL_EC1
151         select SYS_FSL_EC2
152         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
157         select SYS_FSL_ERRATUM_A009007
158         select SYS_FSL_HAS_CCI400
159         select SYS_FSL_HAS_DDR4
160         select SYS_FSL_HAS_RGMII
161         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
167         select FSL_TZASC_400
168         select FSL_TZPC_BP147
169         select ARCH_EARLY_INIT_R
170         select BOARD_EARLY_INIT_F
171         select SYS_I2C_MXC
172         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
176         select RESV_RAM if GIC_V3_ITS
177         imply ID_EEPROM
178         imply SCSI
179         imply SPL_SYS_I2C_LEGACY
180         imply PANIC_HANG
181
182 config ARCH_LS2080A
183         bool
184         select ARMV8_SET_SMPEN
185         select ARM_ERRATA_826974
186         select ARM_ERRATA_828024
187         select ARM_ERRATA_829520
188         select ARM_ERRATA_833471
189         select FSL_IFC
190         select FSL_LAYERSCAPE
191         select FSL_LSCH3
192         select GICV3
193         select SKIP_LOWLEVEL_INIT
194         select SYS_FSL_SRDS_1
195         select SYS_HAS_SERDES
196         select SYS_FSL_DDR
197         select SYS_FSL_DDR_LE
198         select SYS_FSL_DDR_VER_50
199         select SYS_FSL_HAS_CCN504
200         select SYS_FSL_HAS_DP_DDR
201         select SYS_FSL_HAS_SEC
202         select SYS_FSL_HAS_DDR4
203         select SYS_FSL_SEC_COMPAT_5
204         select SYS_FSL_SEC_LE
205         select SYS_FSL_SRDS_2
206         select FSL_TZASC_1
207         select FSL_TZASC_2
208         select FSL_TZASC_400
209         select FSL_TZPC_BP147
210         select SYS_FSL_ERRATUM_A008336 if !TFABOOT
211         select SYS_FSL_ERRATUM_A008511 if !TFABOOT
212         select SYS_FSL_ERRATUM_A008514 if !TFABOOT
213         select SYS_FSL_ERRATUM_A008585
214         select SYS_FSL_ERRATUM_A008997
215         select SYS_FSL_ERRATUM_A009007
216         select SYS_FSL_ERRATUM_A009008
217         select SYS_FSL_ERRATUM_A009635
218         select SYS_FSL_ERRATUM_A009663 if !TFABOOT
219         select SYS_FSL_ERRATUM_A009798
220         select SYS_FSL_ERRATUM_A009801
221         select SYS_FSL_ERRATUM_A009803 if !TFABOOT
222         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
223         select SYS_FSL_ERRATUM_A010165 if !TFABOOT
224         select SYS_FSL_ERRATUM_A009203
225         select ARCH_EARLY_INIT_R
226         select BOARD_EARLY_INIT_F
227         select SYS_I2C_MXC
228         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
232         select RESV_RAM if GIC_V3_ITS
233         imply DISTRO_DEFAULTS
234         imply ID_EEPROM
235         imply PANIC_HANG
236         imply SPL_SYS_I2C_LEGACY
237
238 config ARCH_LX2162A
239         bool
240         select ARMV8_SET_SMPEN
241         select FSL_DDR_BIST
242         select FSL_DDR_INTERACTIVE
243         select FSL_LAYERSCAPE
244         select FSL_LSCH3
245         select FSL_TZPC_BP147
246         select GICV3
247         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
256         select SYS_FSL_ERRATUM_A050204
257         select SYS_FSL_ERRATUM_A011334
258         select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
259         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
265         select SYS_PCI_64BIT if PCI
266         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
274         imply SPL_SYS_I2C_LEGACY
275
276 config ARCH_LX2160A
277         bool
278         select ARMV8_SET_SMPEN
279         select FSL_DDR_BIST
280         select FSL_DDR_INTERACTIVE
281         select FSL_LAYERSCAPE
282         select FSL_LSCH3
283         select FSL_TZPC_BP147
284         select GICV3
285         select HAS_FSL_XHCI_USB if USB_HOST
286         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
296         select SYS_FSL_ERRATUM_A050204
297         select SYS_FSL_ERRATUM_A011334
298         select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
299         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
305         select SYS_PCI_64BIT if PCI
306         select ARCH_EARLY_INIT_R
307         select BOARD_EARLY_INIT_F
308         select SYS_I2C_MXC
309         select RESV_RAM if GIC_V3_ITS
310         imply DISTRO_DEFAULTS
311         imply ID_EEPROM
312         imply PANIC_HANG
313         imply SCSI
314         imply SCSI_AHCI
315         imply SPL_SYS_I2C_LEGACY
316
317 config FSL_LSCH2
318         bool
319         select SKIP_LOWLEVEL_INIT
320         select SYS_FSL_HAS_CCI400
321         select SYS_FSL_HAS_SEC
322         select SYS_FSL_SEC_COMPAT_5
323         select SYS_FSL_SEC_BE
324
325 config FSL_LSCH3
326         select ARCH_MISC_INIT
327         bool
328
329 config NXP_LSCH3_2
330         bool
331
332 menu "Layerscape architecture"
333         depends on FSL_LSCH2 || FSL_LSCH3
334
335 config FSL_LAYERSCAPE
336         bool
337
338 config HAS_FEATURE_GIC64K_ALIGN
339         bool
340         default y if ARCH_LS1043A
341
342 config HAS_FEATURE_ENHANCED_MSI
343         bool
344         default y if ARCH_LS1043A
345
346 menu "Layerscape PPA"
347 config FSL_LS_PPA
348         bool "FSL Layerscape PPA firmware support"
349         depends on !ARMV8_PSCI
350         select ARMV8_SEC_FIRMWARE_SUPPORT
351         select SEC_FIRMWARE_ARMV8_PSCI
352         select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
353         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.
358
359 config 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.
371 choice
372         prompt "FSL Layerscape PPA firmware loading-media select"
373         depends on FSL_LS_PPA
374         default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
375         default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
376         default SYS_LS_PPA_FW_IN_XIP
377
378 config 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
384 config 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
389 config SYS_LS_PPA_FW_IN_NAND
390         bool "NAND"
391         help
392           Say Y here if the PPA firmware locate at NAND flash.
393
394 endchoice
395
396 config 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
404 endmenu
405
406 config SYS_FSL_ERRATUM_A008997
407         bool "Workaround for USB PHY erratum A008997"
408
409 config SYS_FSL_ERRATUM_A009007
410         bool
411         help
412           Workaround for USB PHY erratum A009007
413
414 config SYS_FSL_ERRATUM_A009008
415         bool "Workaround for USB PHY erratum A009008"
416
417 config SYS_FSL_ERRATUM_A009798
418         bool "Workaround for USB PHY erratum A009798"
419
420 config SYS_FSL_ERRATUM_A050204
421         bool "Workaround for USB PHY erratum A050204"
422         help
423           USB3.0 Receiver needs to enable fixed equalization
424           for each of PHY instances in an SOC. This is similar
425           to erratum A-009007, but this one is for LX2160A and LX2162A,
426           and the register value is different.
427
428 config SYS_FSL_ERRATUM_A010315
429         bool "Workaround for PCIe erratum A010315"
430
431 config SYS_FSL_ERRATUM_A010539
432         bool "Workaround for PIN MUX erratum A010539"
433
434 config MAX_CPUS
435         int "Maximum number of CPUs permitted for Layerscape"
436         default 2 if ARCH_LS1028A
437         default 4 if ARCH_LS1043A
438         default 4 if ARCH_LS1046A
439         default 16 if ARCH_LS2080A
440         default 8 if ARCH_LS1088A
441         default 16 if ARCH_LX2160A
442         default 16 if ARCH_LX2162A
443         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
451 config EMC2305
452         bool "Fan controller"
453         help
454          Enable the EMC2305 fan controller for configuration of fan
455          speed.
456
457 config NXP_ESBC
458         bool "NXP_ESBC"
459         help
460                 Enable Freescale Secure Boot feature
461
462 config 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
469 config FSPI_AHB_EN_4BYTE
470         bool "Enable 4-byte Fast Read command for AHB mode"
471         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
477 config SYS_CCI400_OFFSET
478         hex "Offset for CCI400 base"
479         depends on SYS_FSL_HAS_CCI400
480         default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
481         default 0x180000 if FSL_LSCH2
482         help
483           Offset for CCI400 base
484           CCI400 base addr = CCSRBAR + CCI400_OFFSET
485
486 config SYS_FSL_IFC_BANK_COUNT
487         int "Maximum banks of Integrated flash controller"
488         depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
489         default 4 if ARCH_LS1043A
490         default 4 if ARCH_LS1046A
491         default 8 if ARCH_LS2080A || ARCH_LS1088A
492
493 config SYS_FSL_HAS_CCI400
494         bool
495
496 config SYS_FSL_HAS_CCN504
497         bool
498
499 config SYS_FSL_HAS_CCN508
500         bool
501
502 config SYS_FSL_HAS_DP_DDR
503         bool
504
505 config SYS_FSL_SRDS_1
506         bool
507
508 config SYS_FSL_SRDS_2
509         bool
510
511 config SYS_NXP_SRDS_3
512         bool
513
514 config SYS_HAS_SERDES
515         bool
516
517 config FSL_TZASC_1
518         bool
519
520 config FSL_TZASC_2
521         bool
522
523 config FSL_TZASC_400
524         bool
525
526 config FSL_TZPC_BP147
527         bool
528 endmenu
529
530 menu "Layerscape clock tree configuration"
531         depends on FSL_LSCH2 || FSL_LSCH3
532
533 config 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
543 config SYS_FSL_PCLK_DIV
544         int "Platform clock divider"
545         default 1 if ARCH_LS1028A
546         default 1 if ARCH_LS1043A
547         default 1 if ARCH_LS1046A
548         default 1 if ARCH_LS1088A
549         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
555 config 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
561           clock, in another word DSPI_clk = Platform_clk / this_divider.
562
563 config SYS_FSL_DUART_CLK_DIV
564         int "DUART clock divider"
565         default 1 if ARCH_LS1043A
566         default 4 if ARCH_LX2160A
567         default 4 if ARCH_LX2162A
568         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
573 config SYS_FSL_I2C_CLK_DIV
574         int "I2C clock divider"
575         default 1 if ARCH_LS1043A
576         default 4 if ARCH_LS1012A
577         default 4 if ARCH_LS1028A
578         default 8 if ARCH_LX2160A
579         default 8 if ARCH_LX2162A
580         default 8 if ARCH_LS1088A
581         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
586 config SYS_FSL_IFC_CLK_DIV
587         int "IFC clock divider"
588         default 1 if ARCH_LS1043A
589         default 4 if ARCH_LS1012A
590         default 4 if ARCH_LS1028A
591         default 8 if ARCH_LX2160A
592         default 8 if ARCH_LX2162A
593         default 8 if ARCH_LS1088A
594         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
599 config 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
607 config 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.
615
616 config 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.
623 endmenu
624
625 config 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
635 config SYS_FSL_EC1
636         bool
637         help
638           Ethernet controller 1, this is connected to
639           MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
640           Provides DPAA2 capabilities
641
642 config SYS_FSL_EC2
643         bool
644         help
645           Ethernet controller 2, this is connected to
646           MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
647           Provides DPAA2 capabilities
648
649 config SYS_FSL_ERRATUM_A008336
650         bool
651
652 config SYS_FSL_ERRATUM_A008514
653         bool
654
655 config SYS_FSL_ERRATUM_A008585
656         bool
657
658 config SYS_FSL_ERRATUM_A008850
659         bool
660
661 config SYS_FSL_ERRATUM_A009203
662         bool
663
664 config SYS_FSL_ERRATUM_A009635
665         bool
666
667 config SYS_FSL_ERRATUM_A009660
668         bool
669
670 config SYS_FSL_ERRATUM_A050382
671         bool
672
673 config SYS_FSL_HAS_RGMII
674         bool
675         depends on SYS_FSL_EC1 || SYS_FSL_EC2
676
677 config SPL_LDSCRIPT
678         default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
679
680 config HAS_FSL_XHCI_USB
681         bool
682         help
683           For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
684           pins, select it when the pins are assigned to USB.
685
686 config SYS_FSL_BOOTROM_BASE
687         hex
688         depends on FSL_LSCH2
689         default 0
690
691 config SYS_FSL_BOOTROM_SIZE
692         hex
693         depends on FSL_LSCH2
694         default 0x1000000