0b0e2ea7ab2df56383b271610a30259fc849ce0e
[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 SYS_FSL_CLK
534         bool "Enable clock tree initialization"
535         default y
536
537 config CLUSTER_CLK_FREQ
538         int "Reference clock of core cluster"
539         depends on ARCH_LS1012A
540         default 100000000
541         help
542           This number is the reference clock frequency of core PLL.
543           For most platforms, the core PLL and Platform PLL have the same
544           reference clock, but for some platforms, LS1012A for instance,
545           they are provided sepatately.
546
547 config SYS_FSL_PCLK_DIV
548         int "Platform clock divider"
549         default 1 if ARCH_LS1028A
550         default 1 if ARCH_LS1043A
551         default 1 if ARCH_LS1046A
552         default 1 if ARCH_LS1088A
553         default 2
554         help
555           This is the divider that is used to derive Platform clock from
556           Platform PLL, in another word:
557                 Platform_clk = Platform_PLL_freq / this_divider
558
559 config SYS_FSL_DSPI_CLK_DIV
560         int "DSPI clock divider"
561         default 1 if ARCH_LS1043A
562         default 2
563         help
564           This is the divider that is used to derive DSPI clock from Platform
565           clock, in another word DSPI_clk = Platform_clk / this_divider.
566
567 config SYS_FSL_DUART_CLK_DIV
568         int "DUART clock divider"
569         default 1 if ARCH_LS1043A
570         default 4 if ARCH_LX2160A
571         default 4 if ARCH_LX2162A
572         default 2
573         help
574           This is the divider that is used to derive DUART clock from Platform
575           clock, in another word DUART_clk = Platform_clk / this_divider.
576
577 config SYS_FSL_I2C_CLK_DIV
578         int "I2C clock divider"
579         default 1 if ARCH_LS1043A
580         default 4 if ARCH_LS1012A
581         default 4 if ARCH_LS1028A
582         default 8 if ARCH_LX2160A
583         default 8 if ARCH_LX2162A
584         default 8 if ARCH_LS1088A
585         default 2
586         help
587           This is the divider that is used to derive I2C clock from Platform
588           clock, in another word I2C_clk = Platform_clk / this_divider.
589
590 config SYS_FSL_IFC_CLK_DIV
591         int "IFC clock divider"
592         default 1 if ARCH_LS1043A
593         default 4 if ARCH_LS1012A
594         default 4 if ARCH_LS1028A
595         default 8 if ARCH_LX2160A
596         default 8 if ARCH_LX2162A
597         default 8 if ARCH_LS1088A
598         default 2
599         help
600           This is the divider that is used to derive IFC clock from Platform
601           clock, in another word IFC_clk = Platform_clk / this_divider.
602
603 config SYS_FSL_LPUART_CLK_DIV
604         int "LPUART clock divider"
605         default 1 if ARCH_LS1043A
606         default 2
607         help
608           This is the divider that is used to derive LPUART clock from Platform
609           clock, in another word LPUART_clk = Platform_clk / this_divider.
610
611 config SYS_FSL_SDHC_CLK_DIV
612         int "SDHC clock divider"
613         default 1 if ARCH_LS1043A
614         default 1 if ARCH_LS1012A
615         default 2
616         help
617           This is the divider that is used to derive SDHC clock from Platform
618           clock, in another word SDHC_clk = Platform_clk / this_divider.
619
620 config SYS_FSL_QMAN_CLK_DIV
621         int "QMAN clock divider"
622         default 1 if ARCH_LS1043A
623         default 2
624         help
625           This is the divider that is used to derive QMAN clock from Platform
626           clock, in another word QMAN_clk = Platform_clk / this_divider.
627 endmenu
628
629 config RESV_RAM
630         bool
631         help
632           Reserve memory from the top, tracked by gd->arch.resv_ram. This
633           reserved RAM can be used by special driver that resides in memory
634           after U-Boot exits. It's up to implementation to allocate and allow
635           access to this reserved memory. For example, the reserved RAM can
636           be at the high end of physical memory. The reserve RAM may be
637           excluded from memory bank(s) passed to OS, or marked as reserved.
638
639 config SYS_FSL_EC1
640         bool
641         help
642           Ethernet controller 1, this is connected to
643           MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
644           Provides DPAA2 capabilities
645
646 config SYS_FSL_EC2
647         bool
648         help
649           Ethernet controller 2, this is connected to
650           MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
651           Provides DPAA2 capabilities
652
653 config SYS_FSL_ERRATUM_A008336
654         bool
655
656 config SYS_FSL_ERRATUM_A008514
657         bool
658
659 config SYS_FSL_ERRATUM_A008585
660         bool
661
662 config SYS_FSL_ERRATUM_A008850
663         bool
664
665 config SYS_FSL_ERRATUM_A009203
666         bool
667
668 config SYS_FSL_ERRATUM_A009635
669         bool
670
671 config SYS_FSL_ERRATUM_A009660
672         bool
673
674 config SYS_FSL_ERRATUM_A050382
675         bool
676
677 config SYS_FSL_HAS_RGMII
678         bool
679         depends on SYS_FSL_EC1 || SYS_FSL_EC2
680
681 config SPL_LDSCRIPT
682         default "arch/arm/cpu/armv8/u-boot-spl.lds" if ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A
683
684 config HAS_FSL_XHCI_USB
685         bool
686         help
687           For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
688           pins, select it when the pins are assigned to USB.
689
690 config SYS_FSL_BOOTROM_BASE
691         hex
692         depends on FSL_LSCH2
693         default 0
694
695 config SYS_FSL_BOOTROM_SIZE
696         hex
697         depends on FSL_LSCH2
698         default 0x1000000