arm: mx6: Make all i.MX6 SoCs user-selectable
[platform/kernel/u-boot.git] / arch / arm / mach-imx / mx6 / Kconfig
1 if ARCH_MX6
2
3 config MX6_SMP
4         bool
5         select ARM_ERRATA_751472
6         select ARM_ERRATA_761320
7         select ARM_ERRATA_794072
8         select ARM_ERRATA_845369
9         select MP
10
11 config MX6
12         bool
13         default y
14         select ARM_ERRATA_743622 if !MX6UL && !MX6ULL
15         select GPT_TIMER if !MX6UL && !MX6ULL
16         imply CMD_FUSE
17
18 choice
19         prompt "i.MX6 SoC select"
20
21 config MX6D
22         bool "i.MX 6Dual SoC support"
23         select HAS_CAAM
24         select MX6_SMP
25
26 config MX6DL
27         bool "i.MX 6DualLite SoC support"
28         select HAS_CAAM
29         select MX6_SMP
30
31 config MX6Q
32         bool "i.MX 6Quad SoC support"
33         select HAS_CAAM
34         select MX6_SMP
35
36 config MX6QDL
37         bool "i.MX 6Dual and 6Quad SoC support"
38         select HAS_CAAM
39         select MX6_SMP
40
41 config MX6S
42         bool "i.MX 6Solo SoC support"
43         select HAS_CAAM
44
45 config MX6SL
46         bool "i.MX 6SoloLite SoC support"
47
48 config MX6SX
49         bool "i.MX 6SoloX SoC support"
50         select HAS_CAAM
51         select ROM_UNIFIED_SECTIONS
52
53 config MX6SLL
54         bool "i.MX 6SLL SoC support"
55         select ROM_UNIFIED_SECTIONS
56
57 config MX6UL
58         bool "i.MX 6UltraLite SoC support"
59         select HAS_CAAM
60         select ROM_UNIFIED_SECTIONS
61         select SYSCOUNTER_TIMER
62         select SYS_L2CACHE_OFF
63
64 config MX6ULL
65         bool "i.MX 6ULL SoC support"
66         select ROM_UNIFIED_SECTIONS
67         select SYSCOUNTER_TIMER
68         select SYS_L2CACHE_OFF
69
70 endchoice
71
72 config MX6UL_LITESOM
73         bool
74         select DM
75         select DM_THERMAL
76         select SUPPORT_SPL
77         imply CMD_DM
78
79 config MX6UL_OPOS6UL
80         bool
81         select BOARD_LATE_INIT
82         select DM
83         select DM_GPIO
84         select DM_MMC
85         select DM_THERMAL
86         select SPL_DM if SPL
87         select SPL_OF_CONTROL if SPL
88         select SPL_PINCTRL if SPL
89         select SPL_SEPARATE_BSS if SPL
90         select SUPPORT_SPL
91         imply CMD_DM
92
93 config MX6_OCRAM_256KB
94         bool "Support 256KB OCRAM"
95         depends on MX6D || MX6Q
96         help
97          Allows using the full 256KB size of the OCRAM on the MX6Q/MX6D series
98          of chips, such as for SPL. The OCRAM of the Lite series of chips is
99          only 128KB, so using this option will prevent the resulting code from
100          working on those chips.
101
102 config MX6_DDRCAL
103         bool "Include dynamic DDR calibration routines"
104         depends on SPL
105         default n
106         help
107           Say "Y" if your board uses dynamic (per-boot) DDR calibration.
108           If unsure, say N.
109
110 choice
111         prompt "MX6 board select"
112         optional
113
114 config TARGET_ADVANTECH_DMS_BA16
115         bool "Advantech dms-ba16"
116         depends on MX6Q
117         select BOARD_LATE_INIT
118         imply CMD_SATA
119
120 config TARGET_APALIS_IMX6
121         bool "Toradex Apalis iMX6 board"
122         depends on MX6Q
123         select BOARD_LATE_INIT
124         select DM
125         select DM_SERIAL
126         select DM_THERMAL
127         select SUPPORT_SPL
128         imply CMD_DM
129         imply CMD_SATA
130
131 config TARGET_ARISTAINETOS2
132         bool "aristainetos2"
133         depends on MX6DL
134         select BOARD_LATE_INIT
135         select SYS_I2C_MXC
136         select MXC_UART
137         select FEC_MXC
138         select DM
139         imply CMD_SATA
140         imply CMD_DM
141
142 config TARGET_ARISTAINETOS2B
143         bool "Support aristainetos2-revB"
144         depends on MX6DL
145         select BOARD_LATE_INIT
146         select SYS_I2C_MXC
147         select MXC_UART
148         select FEC_MXC
149         select DM
150         imply CMD_SATA
151         imply CMD_DM
152
153 config TARGET_ARISTAINETOS2BCSL
154         bool "Support aristainetos2-revB CSL"
155         depends on MX6DL
156         select BOARD_LATE_INIT
157         select SYS_I2C_MXC
158         select MXC_UART
159         select FEC_MXC
160         select DM
161         imply CMD_SATA
162         imply CMD_DM
163
164 config TARGET_ARISTAINETOS2C
165         bool "Support aristainetos2-revC"
166         depends on MX6DL
167         select BOARD_LATE_INIT
168         select SYS_I2C_MXC
169         select MXC_UART
170         select FEC_MXC
171         select DM
172         imply CMD_SATA
173         imply CMD_DM
174
175 config TARGET_CGTQMX6EVAL
176         bool "cgtqmx6eval"
177         depends on MX6QDL
178         select BOARD_LATE_INIT
179         select DM
180         select DM_THERMAL
181         select SUPPORT_SPL
182         imply CMD_DM
183
184 config TARGET_CM_FX6
185         bool "CM-FX6"
186         depends on MX6QDL
187         select BOARD_LATE_INIT
188         select DM
189         select DM_GPIO
190         select DM_SERIAL
191         select SUPPORT_SPL
192         imply CMD_DM
193
194 config TARGET_COLIBRI_IMX6
195         bool "Toradex Colibri iMX6 board"
196         select BOARD_LATE_INIT
197         select DM
198         select DM_SERIAL
199         select DM_THERMAL
200         select SUPPORT_SPL
201         imply CMD_DM
202
203 config TARGET_COLIBRI_IMX6ULL
204         bool "Toradex Colibri iMX6ULL"
205         depends on MX6ULL
206         select BOARD_LATE_INIT
207         select DM
208         select DM_THERMAL
209
210 config TARGET_DART_6UL
211         bool "Variscite imx6ULL dart(DART-SOM-6ULL)"
212         depends on MX6ULL
213         select DM
214         select DM_ETH
215         select DM_GPIO
216         select DM_I2C
217         select DM_MMC
218         select DM_SERIAL
219         select DM_THERMAL
220         select SUPPORT_SPL
221
222 config TARGET_DHCOMIMX6
223         bool "dh_imx6"
224         depends on MX6QDL
225         select BOARD_EARLY_INIT_F
226         select BOARD_LATE_INIT
227         select DM
228         select DM_THERMAL
229         select SUPPORT_SPL
230         imply CMD_DM
231         imply CMD_SPL
232
233 config TARGET_DISPLAY5
234         bool "LWN DISPLAY5 board"
235         depends on MX6Q
236         select DM
237         select DM_ETH
238         select DM_I2C
239         select DM_MMC
240         select DM_SPI
241         select DM_GPIO
242         select DM_SERIAL
243         select SUPPORT_SPL
244         imply CMD_DM
245
246 config TARGET_EMBESTMX6BOARDS
247         bool "embestmx6boards"
248         select BOARD_LATE_INIT
249         select SUPPORT_SPL
250
251 config TARGET_GE_BX50V3
252         bool "General Electric Bx50v3"
253         depends on MX6Q
254         select BOARD_LATE_INIT
255
256 config TARGET_GW_VENTANA
257         bool "gw_ventana"
258         depends on MX6QDL
259         select SUPPORT_SPL
260         imply CMD_SATA
261         imply CMD_SPL
262
263 config TARGET_KOSAGI_NOVENA
264         bool "Kosagi Novena"
265         select BOARD_LATE_INIT
266         select DM_ETH
267         select DM_GPIO
268         select DM_MMC
269         select DM_PCI
270         select DM_SCSI
271         select DM_USB
272         select DM_VIDEO
273         select OF_CONTROL
274         select SUPPORT_SPL
275         imply CMD_DM
276
277 config TARGET_MCCMON6
278         bool "mccmon6"
279         depends on MX6QDL
280         select SUPPORT_SPL
281         select DM
282         select DM_GPIO
283         select DM_ETH
284         select DM_SERIAL
285         select DM_I2C
286         select DM_SPI
287         imply CMD_DM
288
289 config TARGET_MX6CUBOXI
290         bool "Solid-run mx6 boards"
291         depends on MX6QDL
292         select BOARD_LATE_INIT
293         select SUPPORT_SPL
294
295 config TARGET_MX6LOGICPD
296         bool "Logic PD i.MX6 SOM"
297         depends on MX6Q
298         select SUPPORT_SPL
299         select BOARD_EARLY_INIT_F
300         select BOARD_LATE_INIT
301         select DM
302         select DM_ETH
303         select DM_GPIO
304         select DM_I2C
305         select DM_MMC
306         select DM_PMIC
307         select OF_CONTROL
308         imply CMD_DM
309
310 config TARGET_MX6MEMCAL
311         bool "mx6memcal"
312         depends on MX6QDL
313         select SUPPORT_SPL
314         help
315           The mx6memcal board is a virtual board that can be used to validate
316           and characterize the memory layout of a new design during the initial
317           development and pre-production stages.
318
319 config TARGET_MX6QARM2
320         bool "mx6qarm2"
321
322 config TARGET_MX6DL_MAMOJ
323         bool "Support BTicino Mamoj"
324         depends on MX6QDL
325         select DM
326         select DM_ETH
327         select DM_GPIO
328         select DM_I2C
329         select DM_MMC
330         select DM_PMIC
331         select DM_PMIC_PFUZE100
332         select DM_THERMAL
333         select OF_CONTROL
334         select PINCTRL
335         select SPL
336         select SPL_DM if SPL
337         select SPL_GPIO_SUPPORT if SPL
338         select SPL_LIBCOMMON_SUPPORT if SPL
339         select SPL_LIBDISK_SUPPORT if SPL
340         select SPL_LIBGENERIC_SUPPORT if SPL
341         select SPL_MMC_SUPPORT if SPL
342         select SPL_OF_CONTROL if SPL
343         select SPL_OF_LIBFDT if SPL
344         select SPL_PINCTRL if SPL
345         select SPL_SEPARATE_BSS if SPL
346         select SPL_SERIAL_SUPPORT if SPL
347         select SPL_USB_GADGET if SPL
348         select SPL_USB_HOST_SUPPORT if SPL
349         select SPL_USB_SDP_SUPPORT if SPL
350         select SPL_WATCHDOG_SUPPORT if SPL
351         select SUPPORT_SPL
352         imply CMD_DM
353
354 config TARGET_MX6Q_ENGICAM
355         bool "Support Engicam i.Core(RQS)"
356         depends on MX6QDL
357         select BOARD_LATE_INIT
358         select DM
359         select DM_ETH
360         select DM_GPIO
361         select DM_I2C
362         select DM_MMC
363         select DM_THERMAL
364         select OF_CONTROL
365         select SPL_DM if SPL
366         select SPL_OF_CONTROL if SPL
367         select SPL_OF_LIBFDT
368         select SPL_PINCTRL if SPL
369         select SPL_SEPARATE_BSS if SPL
370         select SUPPORT_SPL
371         imply CMD_DM
372
373 config TARGET_MX6SABREAUTO
374         bool "mx6sabreauto"
375         depends on MX6QDL
376         select BOARD_EARLY_INIT_F
377         select BOARD_LATE_INIT
378         select DM
379         select DM_THERMAL
380         select SUPPORT_SPL
381         imply CMD_DM
382
383 config TARGET_MX6SABRESD
384         bool "mx6sabresd"
385         depends on MX6QDL
386         select BOARD_EARLY_INIT_F
387         select BOARD_LATE_INIT
388         select DM
389         select DM_THERMAL
390         select SUPPORT_SPL
391         imply CMD_DM
392
393 config TARGET_MX6SLEVK
394         bool "mx6slevk"
395         depends on MX6SL
396         select SUPPORT_SPL
397
398 config TARGET_MX6SLLEVK
399         bool "mx6sll evk"
400         depends on MX6SLL
401         select BOARD_LATE_INIT
402         select DM
403         select DM_THERMAL
404         imply CMD_DM
405
406 config TARGET_MX6SXSABRESD
407         bool "mx6sxsabresd"
408         depends on MX6SX
409         select BOARD_EARLY_INIT_F
410         select BOARD_LATE_INIT
411         select DM
412         select DM_THERMAL
413         select SUPPORT_SPL
414
415 config TARGET_MX6SXSABREAUTO
416         bool "mx6sxsabreauto"
417         depends on MX6SX
418         select BOARD_EARLY_INIT_F
419         select BOARD_LATE_INIT
420         select DM
421         select DM_THERMAL
422         imply CMD_DM
423
424 config TARGET_MX6UL_9X9_EVK
425         bool "mx6ul_9x9_evk"
426         depends on MX6UL
427         select BOARD_LATE_INIT
428         select DM
429         select DM_THERMAL
430         select SUPPORT_SPL
431         imply CMD_DM
432
433 config TARGET_MX6UL_14X14_EVK
434         bool "mx6ul_14x14_evk"
435         depends on MX6UL
436         select BOARD_LATE_INIT
437         select DM
438         select DM_THERMAL
439         select SUPPORT_SPL
440         imply CMD_DM
441
442 config TARGET_MX6UL_ENGICAM
443         bool "Support Engicam GEAM6UL/Is.IoT"
444         depends on MX6UL
445         select BOARD_LATE_INIT
446         select DM
447         select DM_ETH
448         select DM_GPIO
449         select DM_I2C
450         select DM_MMC
451         select DM_THERMAL
452         select OF_CONTROL
453         select SPL_DM if SPL
454         select SPL_OF_CONTROL if SPL
455         select SPL_PINCTRL if SPL
456         select SPL_SEPARATE_BSS if SPL
457         select SUPPORT_SPL
458         imply CMD_DM
459
460 config TARGET_MX6ULL_14X14_EVK
461         bool "Support mx6ull_14x14_evk"
462         depends on MX6ULL
463         select BOARD_LATE_INIT
464         select DM
465         select DM_THERMAL
466         imply CMD_DM
467
468 config TARGET_MYS_6ULX
469         bool "MYiR MYS-6ULX"
470         depends on MX6ULL
471         select DM
472         select DM_ETH
473         select DM_GPIO
474         select DM_I2C
475         select DM_MMC
476         select DM_SERIAL
477         select DM_THERMAL
478         select SUPPORT_SPL
479
480 config TARGET_NITROGEN6X
481         bool "nitrogen6x"
482         depends on MX6DL || MX6Q || MX6QDL || MX6S
483         imply USB_ETHER_ASIX
484         imply USB_ETHER_MCS7830
485         imply USB_ETHER_SMSC95XX
486         imply USB_HOST_ETHER
487
488 config TARGET_OPOS6ULDEV
489         bool "Armadeus OPOS6ULDev board"
490         depends on MX6UL
491         select MX6UL_OPOS6UL
492
493 config TARGET_OT1200
494         bool "Bachmann OT1200"
495         select SUPPORT_SPL
496         imply CMD_SATA
497
498 config TARGET_PICO_IMX6
499         bool "PICO-IMX6"
500         depends on MX6QDL
501         select BOARD_EARLY_INIT_F
502         select BOARD_LATE_INIT
503         select DM
504         select DM_THERMAL
505         select SUPPORT_SPL
506         imply CMD_DM
507
508 config TARGET_PICO_IMX6UL
509         bool "PICO-IMX6UL-EMMC"
510         depends on MX6UL
511         select DM
512         select SUPPORT_SPL
513         imply CMD_DM
514
515 config TARGET_LITEBOARD
516         bool "Grinn liteBoard (i.MX6UL)"
517         depends on MX6UL
518         select BOARD_LATE_INIT
519         select MX6UL_LITESOM
520
521 config TARGET_PLATINUM_PICON
522         bool "platinum-picon"
523         select SUPPORT_SPL
524
525 config TARGET_PLATINUM_TITANIUM
526         bool "platinum-titanium"
527         select SUPPORT_SPL
528
529 config TARGET_PCM058
530         bool "Phytec PCM058 i.MX6 Quad"
531         depends on MX6Q
532         select BOARD_LATE_INIT
533         select SUPPORT_SPL
534         select DM
535         select OF_CONTROL
536         imply CMD_DM
537
538 config TARGET_PFLA02
539         bool "Phytec PFLA02 (PhyFlex) i.MX6 Quad"
540         depends on MX6QDL
541         select BOARD_LATE_INIT
542         select SUPPORT_SPL
543
544 config TARGET_PCL063
545         bool "PHYTEC PCL063 (phyCORE-i.MX6UL)"
546         depends on MX6UL
547         select DM
548         select DM_ETH
549         select DM_GPIO
550         select DM_I2C
551         select DM_MMC
552         select DM_SERIAL
553         select DM_THERMAL
554         select SUPPORT_SPL
555
556 config TARGET_PCL063_ULL
557         bool "PHYTEC PCL063 (phyCORE-i.MX6ULL)"
558         depends on MX6ULL
559         select DM
560         select DM_ETH
561         select DM_GPIO
562         select DM_I2C
563         select DM_MMC
564         select DM_SERIAL
565         select DM_THERMAL
566         select SUPPORT_SPL
567
568 config TARGET_SECOMX6
569         bool "secomx6 boards"
570
571 config TARGET_SKSIMX6
572         bool "sks-imx6"
573         depends on MX6QDL
574         select SUPPORT_SPL
575
576 config TARGET_SOMLABS_VISIONSOM_6ULL
577         bool "visionsom-6ull"
578         depends on MX6ULL
579         select BOARD_LATE_INIT
580         select DM
581         select DM_ETH
582         select DM_GPIO
583         select DM_MMC
584         select DM_SERIAL
585         select DM_THERMAL
586         imply CMD_DM
587
588 config TARGET_TBS2910
589         bool "TBS2910 Matrix ARM mini PC"
590         depends on MX6Q
591
592 config TARGET_TITANIUM
593         bool "titanium"
594         depends on MX6Q
595
596 config TARGET_KP_IMX6Q_TPC
597         bool "K+P KP_IMX6Q_TPC i.MX6 Quad"
598         depends on MX6QDL
599         select BOARD_EARLY_INIT_F
600         select BOARD_LATE_INIT
601         select DM
602         select SPL_DM if SPL
603         select DM_THERMAL
604         select DM_MMC
605         select DM_ETH
606         select DM_REGULATOR
607         select SPL_DM_REGULATOR if SPL
608         select DM_SERIAL
609         select DM_I2C
610         select DM_GPIO
611         select DM_USB
612         select SUPPORT_SPL
613         select SPL_SEPARATE_BSS if SPL
614         imply CMD_DM
615         imply CMD_SPL
616
617 config TARGET_TQMA6
618         bool "TQ Systems TQMa6 board"
619         select BOARD_EARLY_INIT_F
620         select BOARD_LATE_INIT
621         select MXC_SPI
622         select SPI
623         imply DM
624         imply DM_GPIO
625         imply DM_MMC
626         imply DM_SPI
627         imply DM_SPI_FLASH
628         imply DM_I2C
629         imply CMD_SF
630         imply CMD_DM
631
632 config TARGET_UDOO
633         bool "udoo"
634         depends on MX6QDL
635         select BOARD_LATE_INIT
636         select SUPPORT_SPL
637
638 config TARGET_UDOO_NEO
639         bool "UDOO Neo"
640         depends on MX6SX
641         select BOARD_LATE_INIT
642         select DM
643         select DM_THERMAL
644         select SUPPORT_SPL
645         imply CMD_DM
646
647 config TARGET_SOFTING_VINING_2000
648         bool "Softing VIN|ING 2000"
649         depends on MX6SX
650         select BOARD_LATE_INIT
651         select DM
652         select DM_THERMAL
653         select SUPPORT_SPL
654         imply CMD_DM
655
656 config TARGET_WANDBOARD
657         bool "wandboard"
658         depends on MX6QDL
659         select BOARD_LATE_INIT
660         select SUPPORT_SPL
661
662 config TARGET_WARP
663         bool "WaRP"
664         depends on MX6SL
665         select BOARD_LATE_INIT
666
667 config TARGET_XPRESS
668         bool "CCV xPress"
669         depends on MX6UL
670         select BOARD_LATE_INIT
671         select DM
672         select DM_THERMAL
673         select SUPPORT_SPL
674         imply CMD_DM
675
676 config TARGET_ZC5202
677         bool "zc5202"
678         select BOARD_LATE_INIT
679         select DM
680         select DM_THERMAL
681         select SUPPORT_SPL
682         imply CMD_DM
683
684 config TARGET_ZC5601
685         bool "zc5601"
686         select BOARD_LATE_INIT
687         select DM
688         select DM_THERMAL
689         select SUPPORT_SPL
690         imply CMD_DM
691
692 config TARGET_BRPPT2
693         bool "brppt2"
694         depends on MX6QDL
695         select BOARD_LATE_INIT
696         select OF_CONTROL
697         select SPL_OF_LIBFDT
698         select DM
699         select DM_ETH
700         select DM_GPIO
701         select DM_I2C
702         select DM_MMC
703         select SUPPORT_SPL
704         select SPL_DM if SPL
705         select SPL_OF_CONTROL if SPL
706         help
707           Support
708           B&R BRPPT2 platform
709           based on Freescale's iMX6 SoC
710 endchoice
711
712 config SYS_SOC
713         default "mx6"
714
715 source "board/ge/bx50v3/Kconfig"
716 source "board/advantech/dms-ba16/Kconfig"
717 source "board/aristainetos/Kconfig"
718 source "board/armadeus/opos6uldev/Kconfig"
719 source "board/bachmann/ot1200/Kconfig"
720 source "board/barco/platinum/Kconfig"
721 source "board/barco/titanium/Kconfig"
722 source "board/boundary/nitrogen6x/Kconfig"
723 source "board/bticino/mamoj/Kconfig"
724 source "board/ccv/xpress/Kconfig"
725 source "board/compulab/cm_fx6/Kconfig"
726 source "board/congatec/cgtqmx6eval/Kconfig"
727 source "board/dhelectronics/dh_imx6/Kconfig"
728 source "board/el/el6x/Kconfig"
729 source "board/embest/mx6boards/Kconfig"
730 source "board/engicam/imx6q/Kconfig"
731 source "board/engicam/imx6ul/Kconfig"
732 source "board/freescale/mx6qarm2/Kconfig"
733 source "board/freescale/mx6memcal/Kconfig"
734 source "board/freescale/mx6sabreauto/Kconfig"
735 source "board/freescale/mx6sabresd/Kconfig"
736 source "board/freescale/mx6slevk/Kconfig"
737 source "board/freescale/mx6sllevk/Kconfig"
738 source "board/freescale/mx6sxsabresd/Kconfig"
739 source "board/freescale/mx6sxsabreauto/Kconfig"
740 source "board/freescale/mx6ul_14x14_evk/Kconfig"
741 source "board/freescale/mx6ullevk/Kconfig"
742 source "board/grinn/liteboard/Kconfig"
743 source "board/phytec/pcm058/Kconfig"
744 source "board/phytec/pfla02/Kconfig"
745 source "board/phytec/pcl063/Kconfig"
746 source "board/gateworks/gw_ventana/Kconfig"
747 source "board/kosagi/novena/Kconfig"
748 source "board/softing/vining_2000/Kconfig"
749 source "board/liebherr/display5/Kconfig"
750 source "board/liebherr/mccmon6/Kconfig"
751 source "board/logicpd/imx6/Kconfig"
752 source "board/seco/Kconfig"
753 source "board/sks-kinkel/sksimx6/Kconfig"
754 source "board/solidrun/mx6cuboxi/Kconfig"
755 source "board/somlabs/visionsom-6ull/Kconfig"
756 source "board/technexion/pico-imx6/Kconfig"
757 source "board/technexion/pico-imx6ul/Kconfig"
758 source "board/tbs/tbs2910/Kconfig"
759 source "board/tqc/tqma6/Kconfig"
760 source "board/toradex/apalis_imx6/Kconfig"
761 source "board/toradex/colibri_imx6/Kconfig"
762 source "board/toradex/colibri-imx6ull/Kconfig"
763 source "board/k+p/kp_imx6q_tpc/Kconfig"
764 source "board/udoo/Kconfig"
765 source "board/udoo/neo/Kconfig"
766 source "board/wandboard/Kconfig"
767 source "board/warp/Kconfig"
768 source "board/BuR/brppt2/Kconfig"
769
770 endif