91a5863c97fb06f3849887e448a2bc2af7d0b0e6
[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         imply TIMESTAMP
25
26 config ARCH_LS1028A
27         bool
28         select ARMV8_SET_SMPEN
29         select ESBC_HDR_LS if CHAIN_OF_TRUST
30         select FSL_LAYERSCAPE
31         select FSL_LSCH3
32         select GICV3
33         select NXP_LSCH3_2
34         select SYS_FSL_HAS_CCI400
35         select SYS_FSL_SRDS_1
36         select SYS_HAS_SERDES
37         select SYS_FSL_DDR
38         select SYS_FSL_DDR_LE
39         select SYS_FSL_DDR_VER_50
40         select SYS_FSL_HAS_DDR3
41         select SYS_FSL_HAS_DDR4
42         select SYS_FSL_HAS_SEC
43         select SYS_FSL_SEC_COMPAT_5
44         select SYS_FSL_SEC_LE
45         select FSL_TZASC_1
46         select FSL_TZPC_BP147
47         select ARCH_EARLY_INIT_R
48         select BOARD_EARLY_INIT_F
49         select SYS_I2C_MXC
50         select SYS_FSL_ERRATUM_A008997
51         select SYS_FSL_ERRATUM_A009007
52         select SYS_FSL_ERRATUM_A008514 if !TFABOOT
53         select SYS_FSL_ERRATUM_A009663 if !TFABOOT
54         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
55         select SYS_FSL_ERRATUM_A050382
56         select SYS_FSL_ERRATUM_A011334
57         select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
58         select RESV_RAM if GIC_V3_ITS
59         select SYS_HAS_ARMV8_SECURE_BASE
60         imply PANIC_HANG
61
62 config ARCH_LS1043A
63         bool
64         select ARMV8_SET_SMPEN
65         select ARM_ERRATA_855873 if !TFABOOT
66         select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
67         select FSL_LAYERSCAPE
68         select FSL_LSCH2
69         select GICV2
70         select HAS_FSL_XHCI_USB if USB_HOST
71         select SKIP_LOWLEVEL_INIT
72         select SYS_FSL_SRDS_1
73         select SYS_HAS_SERDES
74         select SYS_FSL_DDR
75         select SYS_FSL_DDR_BE
76         select SYS_FSL_DDR_VER_50
77         select SYS_FSL_ERRATUM_A008850 if !TFABOOT
78         select SYS_FSL_ERRATUM_A008997
79         select SYS_FSL_ERRATUM_A009008
80         select SYS_FSL_ERRATUM_A009660 if !TFABOOT
81         select SYS_FSL_ERRATUM_A009663 if !TFABOOT
82         select SYS_FSL_ERRATUM_A009798
83         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
84         select SYS_FSL_ERRATUM_A010315 if PCIE_LAYERSCAPE
85         select SYS_FSL_ERRATUM_A010539
86         select SYS_FSL_HAS_DDR3
87         select SYS_FSL_HAS_DDR4
88         select ARCH_EARLY_INIT_R
89         select BOARD_EARLY_INIT_F
90         select SYS_I2C_MXC
91         select SYS_I2C_MXC_I2C1 if !DM_I2C
92         select SYS_I2C_MXC_I2C2 if !DM_I2C
93         select SYS_I2C_MXC_I2C3 if !DM_I2C
94         select SYS_I2C_MXC_I2C4 if !DM_I2C
95         select SYS_HAS_ARMV8_SECURE_BASE
96         imply CMD_PCI
97         imply ID_EEPROM
98
99 config ARCH_LS1046A
100         bool
101         select ARMV8_SET_SMPEN
102         select FSL_IFC if TFABOOT || (!QSPI_BOOT && !SD_BOOT_QSPI)
103         select FSL_LAYERSCAPE
104         select FSL_LSCH2
105         select GICV2
106         select HAS_FSL_XHCI_USB if USB_HOST
107         select SKIP_LOWLEVEL_INIT
108         select SYS_FSL_SRDS_1
109         select SYS_HAS_SERDES
110         select SYS_FSL_DDR
111         select SYS_FSL_DDR_BE
112         select SYS_FSL_DDR_VER_50
113         select SYS_FSL_ERRATUM_A008336 if !TFABOOT
114         select SYS_FSL_ERRATUM_A008511 if !TFABOOT
115         select SYS_FSL_ERRATUM_A008850 if !TFABOOT
116         select SYS_FSL_ERRATUM_A008997
117         select SYS_FSL_ERRATUM_A009008
118         select SYS_FSL_ERRATUM_A009798
119         select SYS_FSL_ERRATUM_A009801
120         select SYS_FSL_ERRATUM_A009803 if !TFABOOT
121         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
122         select SYS_FSL_ERRATUM_A010165 if !TFABOOT
123         select SYS_FSL_ERRATUM_A010539
124         select SYS_FSL_HAS_DDR4
125         select SYS_FSL_SRDS_2
126         select ARCH_EARLY_INIT_R
127         select BOARD_EARLY_INIT_F
128         select SYS_I2C_MXC
129         select SYS_I2C_MXC_I2C1 if !DM_I2C
130         select SYS_I2C_MXC_I2C2 if !DM_I2C
131         select SYS_I2C_MXC_I2C3 if !DM_I2C
132         select SYS_I2C_MXC_I2C4 if !DM_I2C
133         imply ID_EEPROM
134         imply SCSI
135         imply SCSI_AHCI
136         imply SPL_SYS_I2C_LEGACY
137
138 config ARCH_LS1088A
139         bool
140         select ARMV8_SET_SMPEN
141         select ARM_ERRATA_855873 if !TFABOOT
142         select ESBC_HDR_LS if CHAIN_OF_TRUST
143         select FSL_IFC
144         select FSL_LAYERSCAPE
145         select FSL_LSCH3
146         select GICV3
147         select SKIP_LOWLEVEL_INIT
148         select SYS_FSL_SRDS_1
149         select SYS_HAS_SERDES
150         select SYS_FSL_DDR
151         select SYS_FSL_DDR_LE
152         select SYS_FSL_DDR_VER_50
153         select SYS_FSL_EC1
154         select SYS_FSL_EC2
155         select SYS_FSL_ERRATUM_A009803 if !TFABOOT
156         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
157         select SYS_FSL_ERRATUM_A010165 if !TFABOOT
158         select SYS_FSL_ERRATUM_A008511 if !TFABOOT
159         select SYS_FSL_ERRATUM_A008850 if !TFABOOT
160         select SYS_FSL_ERRATUM_A009007
161         select SYS_FSL_HAS_CCI400
162         select SYS_FSL_HAS_DDR4
163         select SYS_FSL_HAS_RGMII
164         select SYS_FSL_HAS_SEC
165         select SYS_FSL_SEC_COMPAT_5
166         select SYS_FSL_SEC_LE
167         select SYS_FSL_SRDS_1
168         select SYS_FSL_SRDS_2
169         select FSL_TZASC_1
170         select FSL_TZASC_400
171         select FSL_TZPC_BP147
172         select ARCH_EARLY_INIT_R
173         select BOARD_EARLY_INIT_F
174         select SYS_I2C_MXC
175         select SYS_I2C_MXC_I2C1 if !TFABOOT
176         select SYS_I2C_MXC_I2C2 if !TFABOOT
177         select SYS_I2C_MXC_I2C3 if !TFABOOT
178         select SYS_I2C_MXC_I2C4 if !TFABOOT
179         select RESV_RAM if GIC_V3_ITS
180         imply ID_EEPROM
181         imply SCSI
182         imply SPL_SYS_I2C_LEGACY
183         imply PANIC_HANG
184
185 config ARCH_LS2080A
186         bool
187         select ARMV8_SET_SMPEN
188         select ARM_ERRATA_826974
189         select ARM_ERRATA_828024
190         select ARM_ERRATA_829520
191         select ARM_ERRATA_833471
192         select ESBC_HDR_LS if CHAIN_OF_TRUST
193         select FSL_IFC
194         select FSL_LAYERSCAPE
195         select FSL_LSCH3
196         select SYS_FSL_OTHER_DDR_NUM_CTRLS
197         select GICV3
198         select SKIP_LOWLEVEL_INIT
199         select SYS_FSL_SRDS_1
200         select SYS_HAS_SERDES
201         select SYS_FSL_DDR
202         select SYS_FSL_DDR_LE
203         select SYS_FSL_DDR_VER_50
204         select SYS_FSL_HAS_CCN504
205         select SYS_FSL_HAS_DP_DDR
206         select SYS_FSL_HAS_SEC
207         select SYS_FSL_HAS_DDR4
208         select SYS_FSL_SEC_COMPAT_5
209         select SYS_FSL_SEC_LE
210         select SYS_FSL_SRDS_2
211         select FSL_TZASC_1
212         select FSL_TZASC_2
213         select FSL_TZASC_400
214         select FSL_TZPC_BP147
215         select SYS_FSL_ERRATUM_A008336 if !TFABOOT
216         select SYS_FSL_ERRATUM_A008511 if !TFABOOT
217         select SYS_FSL_ERRATUM_A008514 if !TFABOOT
218         select SYS_FSL_ERRATUM_A008585
219         select SYS_FSL_ERRATUM_A008997
220         select SYS_FSL_ERRATUM_A009007
221         select SYS_FSL_ERRATUM_A009008
222         select SYS_FSL_ERRATUM_A009635
223         select SYS_FSL_ERRATUM_A009663 if !TFABOOT
224         select SYS_FSL_ERRATUM_A009798
225         select SYS_FSL_ERRATUM_A009801
226         select SYS_FSL_ERRATUM_A009803 if !TFABOOT
227         select SYS_FSL_ERRATUM_A009942 if !TFABOOT
228         select SYS_FSL_ERRATUM_A010165 if !TFABOOT
229         select SYS_FSL_ERRATUM_A009203
230         select ARCH_EARLY_INIT_R
231         select BOARD_EARLY_INIT_F
232         select SYS_I2C_MXC
233         select SYS_I2C_MXC_I2C1 if !TFABOOT
234         select SYS_I2C_MXC_I2C2 if !TFABOOT
235         select SYS_I2C_MXC_I2C3 if !TFABOOT
236         select SYS_I2C_MXC_I2C4 if !TFABOOT
237         select RESV_RAM if GIC_V3_ITS
238         imply DISTRO_DEFAULTS
239         imply ID_EEPROM
240         imply PANIC_HANG
241         imply SPL_SYS_I2C_LEGACY
242
243 config ARCH_LX2162A
244         bool
245         select ARMV8_SET_SMPEN
246         select ESBC_HDR_LS if CHAIN_OF_TRUST
247         select FSL_DDR_BIST
248         select FSL_DDR_INTERACTIVE
249         select FSL_LAYERSCAPE
250         select FSL_LSCH3
251         select FSL_TZPC_BP147
252         select GICV3
253         select NXP_LSCH3_2
254         select SYS_HAS_SERDES
255         select SYS_FSL_SRDS_1
256         select SYS_FSL_SRDS_2
257         select SYS_FSL_DDR
258         select SYS_FSL_DDR_LE
259         select SYS_FSL_DDR_VER_50
260         select SYS_FSL_EC1
261         select SYS_FSL_EC2
262         select SYS_FSL_ERRATUM_A050204
263         select SYS_FSL_ERRATUM_A011334
264         select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
265         select SYS_FSL_HAS_RGMII
266         select SYS_FSL_HAS_SEC
267         select SYS_FSL_HAS_CCN508
268         select SYS_FSL_HAS_DDR4
269         select SYS_FSL_SEC_COMPAT_5
270         select SYS_FSL_SEC_LE
271         select SYS_PCI_64BIT if PCI
272         select ARCH_EARLY_INIT_R
273         select BOARD_EARLY_INIT_F
274         select SYS_I2C_MXC
275         select RESV_RAM if GIC_V3_ITS
276         imply DISTRO_DEFAULTS
277         imply PANIC_HANG
278         imply SCSI
279         imply SCSI_AHCI
280         imply SPL_SYS_I2C_LEGACY
281
282 config ARCH_LX2160A
283         bool
284         select ARMV8_SET_SMPEN
285         select ESBC_HDR_LS if CHAIN_OF_TRUST
286         select FSL_DDR_BIST
287         select FSL_DDR_INTERACTIVE
288         select FSL_LAYERSCAPE
289         select FSL_LSCH3
290         select FSL_TZPC_BP147
291         select GICV3
292         select HAS_FSL_XHCI_USB if USB_HOST
293         select NXP_LSCH3_2
294         select SYS_HAS_SERDES
295         select SYS_FSL_SRDS_1
296         select SYS_FSL_SRDS_2
297         select SYS_NXP_SRDS_3
298         select SYS_FSL_DDR
299         select SYS_FSL_DDR_LE
300         select SYS_FSL_DDR_VER_50
301         select SYS_FSL_EC1
302         select SYS_FSL_EC2
303         select SYS_FSL_ERRATUM_A050204
304         select SYS_FSL_ERRATUM_A011334
305         select SYS_FSL_ESDHC_UNRELIABLE_PULSE_DETECTION_WORKAROUND
306         select SYS_FSL_HAS_RGMII
307         select SYS_FSL_HAS_SEC
308         select SYS_FSL_HAS_CCN508
309         select SYS_FSL_HAS_DDR4
310         select SYS_FSL_SEC_COMPAT_5
311         select SYS_FSL_SEC_LE
312         select SYS_PCI_64BIT if PCI
313         select ARCH_EARLY_INIT_R
314         select BOARD_EARLY_INIT_F
315         select SYS_I2C_MXC
316         select RESV_RAM if GIC_V3_ITS
317         imply DISTRO_DEFAULTS
318         imply ID_EEPROM
319         imply PANIC_HANG
320         imply SCSI
321         imply SCSI_AHCI
322         imply SPL_SYS_I2C_LEGACY
323
324 config FSL_LSCH2
325         bool
326         select SKIP_LOWLEVEL_INIT
327         select SYS_FSL_CCSR_GUR_BE
328         select SYS_FSL_CCSR_SCFG_BE
329         select SYS_FSL_ESDHC_BE
330         select SYS_FSL_IFC_BE
331         select SYS_FSL_PEX_LUT_BE
332         select SYS_FSL_HAS_CCI400
333         select SYS_FSL_HAS_SEC
334         select SYS_FSL_SEC_COMPAT_5
335         select SYS_FSL_SEC_BE
336
337 config FSL_LSCH3
338         select ARCH_MISC_INIT
339         select SYS_FSL_CCSR_GUR_LE
340         select SYS_FSL_CCSR_SCFG_LE
341         select SYS_FSL_ESDHC_LE
342         select SYS_FSL_IFC_LE
343         select SYS_FSL_PEX_LUT_LE
344         bool
345
346 config NXP_LSCH3_2
347         bool
348
349 config SYS_FSL_CCSR_GUR_BE
350         bool
351
352 config SYS_FSL_CCSR_SCFG_BE
353         bool
354
355 config SYS_FSL_PEX_LUT_BE
356         bool
357
358 config SYS_FSL_CCSR_GUR_LE
359         bool
360
361 config SYS_FSL_CCSR_SCFG_LE
362         bool
363
364 config SYS_FSL_ESDHC_LE
365         bool
366
367 config SYS_FSL_IFC_LE
368         bool
369
370 config SYS_FSL_PEX_LUT_LE
371         bool
372
373 menu "Layerscape architecture"
374         depends on FSL_LSCH2 || FSL_LSCH3
375
376 config FSL_LAYERSCAPE
377         bool
378         select ARM_SMCCC
379
380 config HAS_FEATURE_GIC64K_ALIGN
381         bool
382         default y if ARCH_LS1043A
383
384 config HAS_FEATURE_ENHANCED_MSI
385         bool
386         default y if ARCH_LS1043A
387
388 menu "Layerscape PPA"
389 config FSL_LS_PPA
390         bool "FSL Layerscape PPA firmware support"
391         depends on !ARMV8_PSCI
392         select ARMV8_SEC_FIRMWARE_SUPPORT
393         select SEC_FIRMWARE_ARMV8_PSCI
394         select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
395         help
396           The FSL Primary Protected Application (PPA) is a software component
397           which is loaded during boot stage, and then remains resident in RAM
398           and runs in the TrustZone after boot.
399           Say y to enable it.
400
401 config SPL_FSL_LS_PPA
402         bool "FSL Layerscape PPA firmware support for SPL build"
403         depends on !ARMV8_PSCI
404         select SPL_ARMV8_SEC_FIRMWARE_SUPPORT
405         select SEC_FIRMWARE_ARMV8_PSCI
406         select ARMV8_SEC_FIRMWARE_ERET_ADDR_REVERT if FSL_LSCH2
407         help
408           The FSL Primary Protected Application (PPA) is a software component
409           which is loaded during boot stage, and then remains resident in RAM
410           and runs in the TrustZone after boot. This is to load PPA during SPL
411           stage instead of the RAM version of U-Boot. Once PPA is initialized,
412           the rest of U-Boot (including RAM version) runs at EL2.
413 choice
414         prompt "FSL Layerscape PPA firmware loading-media select"
415         depends on FSL_LS_PPA
416         default SYS_LS_PPA_FW_IN_MMC if SD_BOOT
417         default SYS_LS_PPA_FW_IN_NAND if NAND_BOOT
418         default SYS_LS_PPA_FW_IN_XIP
419
420 config SYS_LS_PPA_FW_IN_XIP
421         bool "XIP"
422         help
423           Say Y here if the PPA firmware locate at XIP flash, such
424           as NOR or QSPI flash.
425
426 config SYS_LS_PPA_FW_IN_MMC
427         bool "eMMC or SD Card"
428         help
429           Say Y here if the PPA firmware locate at eMMC/SD card.
430
431 config SYS_LS_PPA_FW_IN_NAND
432         bool "NAND"
433         help
434           Say Y here if the PPA firmware locate at NAND flash.
435
436 endchoice
437
438 config LS_PPA_ESBC_HDR_SIZE
439         hex "Length of PPA ESBC header"
440         depends on FSL_LS_PPA && CHAIN_OF_TRUST && !SYS_LS_PPA_FW_IN_XIP
441         default 0x2000
442         help
443           Length (in bytes) of PPA ESBC header to be copied from MMC/SD or
444           NAND to memory to validate PPA image.
445
446 endmenu
447
448 config SYS_FSL_ERRATUM_A008997
449         bool "Workaround for USB PHY erratum A008997"
450
451 config SYS_FSL_ERRATUM_A009007
452         bool
453         help
454           Workaround for USB PHY erratum A009007
455
456 config SYS_FSL_ERRATUM_A009008
457         bool "Workaround for USB PHY erratum A009008"
458
459 config SYS_FSL_ERRATUM_A009798
460         bool "Workaround for USB PHY erratum A009798"
461
462 config SYS_FSL_ERRATUM_A050204
463         bool "Workaround for USB PHY erratum A050204"
464         help
465           USB3.0 Receiver needs to enable fixed equalization
466           for each of PHY instances in an SOC. This is similar
467           to erratum A-009007, but this one is for LX2160A and LX2162A,
468           and the register value is different.
469
470 config SYS_FSL_ERRATUM_A010315
471         bool "Workaround for PCIe erratum A010315"
472
473 config SYS_FSL_ERRATUM_A010539
474         bool "Workaround for PIN MUX erratum A010539"
475
476 config MAX_CPUS
477         int "Maximum number of CPUs permitted for Layerscape"
478         default 2 if ARCH_LS1028A
479         default 4 if ARCH_LS1043A
480         default 4 if ARCH_LS1046A
481         default 16 if ARCH_LS2080A
482         default 8 if ARCH_LS1088A
483         default 16 if ARCH_LX2160A
484         default 16 if ARCH_LX2162A
485         default 1
486         help
487           Set this number to the maximum number of possible CPUs in the SoC.
488           SoCs may have multiple clusters with each cluster may have multiple
489           ports. If some ports are reserved but higher ports are used for
490           cores, count the reserved ports. This will allocate enough memory
491           in spin table to properly handle all cores.
492
493 config EMC2305
494         bool "Fan controller"
495         help
496          Enable the EMC2305 fan controller for configuration of fan
497          speed.
498
499 config QSPI_AHB_INIT
500         bool "Init the QSPI AHB bus"
501         help
502           The default setting for QSPI AHB bus just support 3bytes addressing.
503           But some QSPI flash size up to 64MBytes, so initialize the QSPI AHB
504           bus for those flashes to support the full QSPI flash size.
505
506 config FSPI_AHB_EN_4BYTE
507         bool "Enable 4-byte Fast Read command for AHB mode"
508         help
509           The default setting for FlexSPI AHB bus just supports 3-byte addressing.
510           But some FlexSPI flash sizes are up to 64MBytes.
511           This flag enables fast read command for AHB mode and modifies required
512           LUT to support full FlexSPI flash.
513
514 config SYS_CCI400_OFFSET
515         hex "Offset for CCI400 base"
516         depends on SYS_FSL_HAS_CCI400
517         default 0x3090000 if ARCH_LS1088A || ARCH_LS1028A
518         default 0x180000 if FSL_LSCH2
519         help
520           Offset for CCI400 base
521           CCI400 base addr = CCSRBAR + CCI400_OFFSET
522
523 config SYS_FSL_IFC_BANK_COUNT
524         int "Maximum banks of Integrated flash controller"
525         depends on ARCH_LS1043A || ARCH_LS1046A || ARCH_LS2080A || ARCH_LS1088A
526         default 4 if ARCH_LS1043A
527         default 4 if ARCH_LS1046A
528         default 8 if ARCH_LS2080A || ARCH_LS1088A
529
530 config SYS_FSL_HAS_CCI400
531         bool
532
533 config SYS_FSL_HAS_CCN504
534         bool
535
536 config SYS_FSL_HAS_CCN508
537         bool
538
539 config SYS_FSL_HAS_DP_DDR
540         bool
541         help
542           Defines the SoC has DP-DDR used for DPAA.
543
544 config DP_DDR_CTRL
545         int
546         depends on SYS_FSL_HAS_DP_DDR
547         default 2 if ARCH_LS2080A
548
549 config DP_DDR_DIMM_SLOTS_PER_CTLR
550         int
551         depends on SYS_FSL_HAS_DP_DDR
552         default 1 if ARCH_LS2080A
553
554 config DP_DDR_NUM_CTRLS
555         int
556         depends on SYS_FSL_HAS_DP_DDR
557         default 1 if ARCH_LS2080A
558
559 config SYS_DP_DDR_BASE
560         hex
561         depends on SYS_FSL_HAS_DP_DDR
562         default 0x6000000000 if ARCH_LS2080A
563
564 config SYS_DP_DDR_BASE_PHY
565         int
566         depends on SYS_FSL_HAS_DP_DDR
567         default 0 if ARCH_LS2080A
568         help
569           DDR controller uses this value as the base address for binding.
570           It is mapped to CONFIG_SYS_DP_DDR_BASE for core to access.
571
572 config SYS_FSL_SRDS_1
573         bool
574
575 config SYS_FSL_SRDS_2
576         bool
577
578 config SYS_NXP_SRDS_3
579         bool
580
581 config SYS_HAS_SERDES
582         bool
583
584 config FSL_TZASC_1
585         bool
586
587 config FSL_TZASC_2
588         bool
589
590 config FSL_TZASC_400
591         bool
592
593 config FSL_TZPC_BP147
594         bool
595 endmenu
596
597 menu "Layerscape clock tree configuration"
598         depends on FSL_LSCH2 || FSL_LSCH3
599
600 config CLUSTER_CLK_FREQ
601         int "Reference clock of core cluster"
602         depends on ARCH_LS1012A
603         default 100000000
604         help
605           This number is the reference clock frequency of core PLL.
606           For most platforms, the core PLL and Platform PLL have the same
607           reference clock, but for some platforms, LS1012A for instance,
608           they are provided sepatately.
609
610 config SYS_FSL_PCLK_DIV
611         int "Platform clock divider"
612         default 1 if ARCH_LS1028A
613         default 1 if ARCH_LS1043A
614         default 1 if ARCH_LS1046A
615         default 1 if ARCH_LS1088A
616         default 2
617         help
618           This is the divider that is used to derive Platform clock from
619           Platform PLL, in another word:
620                 Platform_clk = Platform_PLL_freq / this_divider
621
622 config SYS_FSL_DSPI_CLK_DIV
623         int "DSPI clock divider"
624         default 1 if ARCH_LS1043A
625         default 2
626         help
627           This is the divider that is used to derive DSPI clock from Platform
628           clock, in another word DSPI_clk = Platform_clk / this_divider.
629
630 config SYS_FSL_DUART_CLK_DIV
631         int "DUART clock divider"
632         default 1 if ARCH_LS1043A
633         default 4 if ARCH_LX2160A
634         default 4 if ARCH_LX2162A
635         default 2
636         help
637           This is the divider that is used to derive DUART clock from Platform
638           clock, in another word DUART_clk = Platform_clk / this_divider.
639
640 config SYS_FSL_I2C_CLK_DIV
641         int "I2C clock divider"
642         default 1 if ARCH_LS1043A
643         default 4 if ARCH_LS1012A
644         default 4 if ARCH_LS1028A
645         default 8 if ARCH_LX2160A
646         default 8 if ARCH_LX2162A
647         default 8 if ARCH_LS1088A
648         default 2
649         help
650           This is the divider that is used to derive I2C clock from Platform
651           clock, in another word I2C_clk = Platform_clk / this_divider.
652
653 config SYS_FSL_IFC_CLK_DIV
654         int "IFC clock divider"
655         default 1 if ARCH_LS1043A
656         default 4 if ARCH_LS1012A
657         default 4 if ARCH_LS1028A
658         default 8 if ARCH_LX2160A
659         default 8 if ARCH_LX2162A
660         default 8 if ARCH_LS1088A
661         default 2
662         help
663           This is the divider that is used to derive IFC clock from Platform
664           clock, in another word IFC_clk = Platform_clk / this_divider.
665
666 config SYS_FSL_LPUART_CLK_DIV
667         int "LPUART clock divider"
668         default 1 if ARCH_LS1043A
669         default 2
670         help
671           This is the divider that is used to derive LPUART clock from Platform
672           clock, in another word LPUART_clk = Platform_clk / this_divider.
673
674 config SYS_FSL_SDHC_CLK_DIV
675         int "SDHC clock divider"
676         default 1 if ARCH_LS1043A
677         default 1 if ARCH_LS1012A
678         default 2
679         help
680           This is the divider that is used to derive SDHC clock from Platform
681           clock, in another word SDHC_clk = Platform_clk / this_divider.
682
683 config SYS_FSL_QMAN_CLK_DIV
684         int "QMAN clock divider"
685         default 1 if ARCH_LS1043A
686         default 2
687         help
688           This is the divider that is used to derive QMAN clock from Platform
689           clock, in another word QMAN_clk = Platform_clk / this_divider.
690 endmenu
691
692 config RESV_RAM
693         bool
694         help
695           Reserve memory from the top, tracked by gd->arch.resv_ram. This
696           reserved RAM can be used by special driver that resides in memory
697           after U-Boot exits. It's up to implementation to allocate and allow
698           access to this reserved memory. For example, the reserved RAM can
699           be at the high end of physical memory. The reserve RAM may be
700           excluded from memory bank(s) passed to OS, or marked as reserved.
701
702 config SYS_FSL_EC1
703         bool
704         help
705           Ethernet controller 1, this is connected to
706           MAC17 for LX2160A and LX2162A or to MAC3 for other SoCs
707           Provides DPAA2 capabilities
708
709 config SYS_FSL_EC2
710         bool
711         help
712           Ethernet controller 2, this is connected to
713           MAC18 for LX2160A and LX2162A or to MAC4 for other SoCs
714           Provides DPAA2 capabilities
715
716 config SYS_FSL_ERRATUM_A008336
717         bool
718
719 config SYS_FSL_ERRATUM_A008514
720         bool
721
722 config SYS_FSL_ERRATUM_A008585
723         bool
724
725 config SYS_FSL_ERRATUM_A008850
726         bool
727
728 config SYS_FSL_ERRATUM_A009203
729         bool
730
731 config SYS_FSL_ERRATUM_A009635
732         bool
733
734 config SYS_FSL_ERRATUM_A009660
735         bool
736
737 config SYS_FSL_ERRATUM_A050382
738         bool
739
740 config SYS_FSL_HAS_RGMII
741         bool
742         depends on SYS_FSL_EC1 || SYS_FSL_EC2
743
744 config HAS_FSL_XHCI_USB
745         bool
746         help
747           For some SoC (such as LS1043A and LS1046A), USB and QE-HDLC multiplex use
748           pins, select it when the pins are assigned to USB.
749
750 config SYS_FSL_BOOTROM_BASE
751         hex
752         depends on FSL_LSCH2
753         default 0
754
755 config SYS_FSL_BOOTROM_SIZE
756         hex
757         depends on FSL_LSCH2
758         default 0x1000000