Add support for Eukrea CPU9260/CPU9G20 SBC
[oweals/u-boot.git] / MAKEALL
1 #!/bin/sh
2
3 # Print statistics when we exit
4 trap exit 1 2 3 15
5 trap print_stats 0
6
7 # Determine number of CPU cores if no default was set
8 : ${BUILD_NCPUS:="`getconf _NPROCESSORS_ONLN`"}
9
10 if [ "$BUILD_NCPUS" -gt 1 ]
11 then
12         JOBS="-j $((BUILD_NCPUS + 1))"
13 else
14         JOBS=""
15 fi
16
17
18 if [ "${CROSS_COMPILE}" ] ; then
19         MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
20 else
21         MAKE=make
22 fi
23
24 if [ "${MAKEALL_LOGDIR}" ] ; then
25         LOG_DIR=${MAKEALL_LOGDIR}
26 else
27         LOG_DIR="LOG"
28 fi
29
30 if [ ! "${BUILD_DIR}" ] ; then
31         BUILD_DIR="."
32 fi
33
34 [ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
35
36 LIST=""
37
38 # Keep track of the number of builds and errors
39 ERR_CNT=0
40 ERR_LIST=""
41 TOTAL_CNT=0
42
43 #########################################################################
44 ## MPC5xx Systems
45 #########################################################################
46
47 LIST_5xx="              \
48         cmi_mpc5xx      \
49 "
50
51 #########################################################################
52 ## MPC5xxx Systems
53 #########################################################################
54
55 LIST_5xxx="             \
56         BC3450          \
57         cm5200          \
58         cpci5200        \
59         digsy_mtc       \
60         EVAL5200        \
61         fo300           \
62         galaxy5200      \
63         icecube_5100    \
64         icecube_5200    \
65         inka4x0         \
66         lite5200b       \
67         mcc200          \
68         mecp5200        \
69         motionpro       \
70         munices         \
71         MVBC_P          \
72         o2dnt           \
73         pcm030          \
74         pf5200          \
75         PM520           \
76         TB5200          \
77         Total5100       \
78         Total5200       \
79         Total5200_Rev2  \
80         TQM5200         \
81         TQM5200_B       \
82         TQM5200S        \
83         v38b            \
84 "
85
86 #########################################################################
87 ## MPC512x Systems
88 #########################################################################
89
90 LIST_512x="             \
91         aria            \
92         mecp5123        \
93         mpc5121ads      \
94 "
95
96 #########################################################################
97 ## MPC8xx Systems
98 #########################################################################
99 LIST_8xx="              \
100         Adder87x        \
101         AdderII         \
102         ADS860          \
103         AMX860          \
104         c2mon           \
105         CCM             \
106         cogent_mpc8xx   \
107         ELPT860         \
108         EP88x           \
109         ESTEEM192E      \
110         ETX094          \
111         FADS823         \
112         FADS850SAR      \
113         FADS860T        \
114         FLAGADM         \
115         FPS850L         \
116         GEN860T         \
117         GEN860T_SC      \
118         GENIETV         \
119         GTH             \
120         hermes          \
121         IAD210          \
122         ICU862_100MHz   \
123         IP860           \
124         IVML24          \
125         IVML24_128      \
126         IVML24_256      \
127         IVMS8           \
128         IVMS8_128       \
129         IVMS8_256       \
130         KUP4K           \
131         KUP4X           \
132         LANTEC          \
133         lwmon           \
134         kmsupx4         \
135         MBX             \
136         MBX860T         \
137         mgsuvd          \
138         MHPC            \
139         MPC86xADS       \
140         MPC885ADS       \
141         NETPHONE        \
142         NETTA           \
143         NETTA2          \
144         NETTA_ISDN      \
145         NETVIA          \
146         NETVIA_V2       \
147         NX823           \
148         pcu_e           \
149         QS823           \
150         QS850           \
151         QS860T          \
152         quantum         \
153         R360MPI         \
154         RBC823          \
155         rmu             \
156         RPXClassic      \
157         RPXlite         \
158         RPXlite_DW      \
159         RRvision        \
160         SM850           \
161         spc1920         \
162         SPD823TS        \
163         svm_sc8xx       \
164         SXNI855T        \
165         TK885D          \
166         TOP860          \
167         TQM823L         \
168         TQM823L_LCD     \
169         TQM850L         \
170         TQM855L         \
171         TQM860L         \
172         TQM885D         \
173         uc100           \
174         v37             \
175 "
176
177 #########################################################################
178 ## PPC4xx Systems
179 #########################################################################
180
181 LIST_4xx="              \
182         acadia          \
183         acadia_nand     \
184         ADCIOP          \
185         alpr            \
186         AP1000          \
187         AR405           \
188         arches          \
189         ASH405          \
190         bamboo          \
191         bamboo_nand     \
192         bubinga         \
193         CANBT           \
194         canyonlands     \
195         canyonlands_nand \
196         CMS700          \
197         CPCI2DP         \
198         CPCI405         \
199         CPCI4052        \
200         CPCI405AB       \
201         CPCI405DT       \
202         CPCIISER4       \
203         CRAYL1          \
204         csb272          \
205         csb472          \
206         DASA_SIM        \
207         devconcenter    \
208         dlvision        \
209         DP405           \
210         DU405           \
211         DU440           \
212         ebony           \
213         ERIC            \
214         EXBITGEN        \
215         fx12mm          \
216         G2000           \
217         gdppc440etx     \
218         glacier         \
219         haleakala       \
220         haleakala_nand  \
221         hcu4            \
222         hcu5            \
223         HH405           \
224         HUB405          \
225         intip           \
226         JSE             \
227         KAREF           \
228         katmai          \
229         kilauea         \
230         kilauea_nand    \
231         korat           \
232         luan            \
233         lwmon5          \
234         makalu          \
235         mcu25           \
236         METROBOX        \
237         MIP405          \
238         MIP405T         \
239         ML2             \
240         ml300           \
241         ml507           \
242         ml507_flash     \
243         neo             \
244         ocotea          \
245         OCRTC           \
246         ORSG            \
247         p3p440          \
248         PCI405          \
249         pcs440ep        \
250         PIP405          \
251         PLU405          \
252         PMC405          \
253         PMC405DE        \
254         PMC440          \
255         PPChameleonEVB  \
256         quad100hd       \
257         rainier         \
258         redwood         \
259         sbc405          \
260         sc3             \
261         sequoia         \
262         sequoia_nand    \
263         taihu           \
264         taishan         \
265         v5fx30teval     \
266         v5fx30teval_flash \
267         VOH405          \
268         VOM405          \
269         W7OLMC          \
270         W7OLMG          \
271         walnut          \
272         WUH405          \
273         xilinx-ppc440-generic \
274         xilinx-ppc440-generic_flash \
275         XPEDITE1000     \
276         yellowstone     \
277         yosemite        \
278         yucca           \
279         zeus            \
280 "
281
282 #########################################################################
283 ## MPC8220 Systems
284 #########################################################################
285
286 LIST_8220="             \
287         Alaska8220      \
288         Yukon8220       \
289 "
290
291 #########################################################################
292 ## MPC824x Systems
293 #########################################################################
294
295 LIST_824x="             \
296         A3000           \
297         barco           \
298         BMW             \
299         CPC45           \
300         CU824           \
301         debris          \
302         eXalion         \
303         HIDDEN_DRAGON   \
304         IDS8247         \
305         linkstation_HGLAN       \
306         MOUSSE          \
307         MUSENKI         \
308         MVBLUE          \
309         OXC             \
310         PN62            \
311         Sandpoint8240   \
312         Sandpoint8245   \
313         sbc8240         \
314         SL8245          \
315         utx8245         \
316 "
317
318 #########################################################################
319 ## MPC8260 Systems (includes 8250, 8255 etc.)
320 #########################################################################
321
322 LIST_8260="             \
323         atc             \
324         cogent_mpc8260  \
325         CPU86           \
326         CPU87           \
327         ep8248          \
328         ep8260          \
329         ep82xxm         \
330         gw8260          \
331         hymod           \
332         IPHASE4539      \
333         ISPAN           \
334         mgcoge          \
335         MPC8260ADS      \
336         MPC8266ADS      \
337         MPC8272ADS      \
338         PM826           \
339         PM828           \
340         ppmc8260        \
341         Rattler8248     \
342         RPXsuper        \
343         rsdproto        \
344         sacsng          \
345         sbc8260         \
346         SCM             \
347         TQM8260_AC      \
348         TQM8260_AD      \
349         TQM8260_AE      \
350         TQM8272         \
351         ZPC1900         \
352 "
353
354 #########################################################################
355 ## MPC83xx Systems (includes 8349, etc.)
356 #########################################################################
357
358 LIST_83xx="             \
359         kmeter1         \
360         MPC8313ERDB_33  \
361         MPC8313ERDB_NAND_66     \
362         MPC8315ERDB     \
363         MPC8323ERDB     \
364         MPC832XEMDS     \
365         MPC832XEMDS_ATM \
366         MPC8349EMDS     \
367         MPC8349ITX      \
368         MPC8349ITXGP    \
369         MPC8360EMDS     \
370         MPC8360EMDS_ATM \
371         MPC8360ERDK_33  \
372         MPC8360ERDK_66  \
373         MPC837XEMDS     \
374         MPC837XERDB     \
375         MVBLM7          \
376         sbc8349         \
377         SIMPC8313_LP    \
378         TQM834x         \
379         vme8349         \
380 "
381
382
383 #########################################################################
384 ## MPC85xx Systems (includes 8540, 8560 etc.)
385 #########################################################################
386
387 LIST_85xx="             \
388         ATUM8548        \
389         MPC8536DS       \
390         MPC8540ADS      \
391         MPC8540EVAL     \
392         MPC8541CDS      \
393         MPC8544DS       \
394         MPC8548CDS      \
395         MPC8555CDS      \
396         MPC8560ADS      \
397         MPC8568MDS      \
398         MPC8569MDS      \
399         MPC8572DS       \
400         MPC8572DS_36BIT \
401         P2020DS         \
402         P2020DS_36BIT   \
403         P1011RDB        \
404         P1020RDB        \
405         P2010RDB        \
406         P2020RDB        \
407         PM854           \
408         PM856           \
409         sbc8540         \
410         sbc8548         \
411         sbc8548_PCI_33  \
412         sbc8548_PCI_66  \
413         sbc8548_PCI_33_PCIE \
414         sbc8548_PCI_66_PCIE \
415         sbc8560         \
416         socrates        \
417         stxgp3          \
418         stxssa          \
419         TQM8540         \
420         TQM8541         \
421         TQM8548         \
422         TQM8548_AG      \
423         TQM8548_BE      \
424         TQM8555         \
425         TQM8560         \
426         XPEDITE5200     \
427         XPEDITE5370     \
428 "
429
430 #########################################################################
431 ## MPC86xx Systems
432 #########################################################################
433
434 LIST_86xx="             \
435         MPC8610HPCD     \
436         MPC8641HPCN     \
437         sbc8641d        \
438         XPEDITE5170     \
439 "
440
441 #########################################################################
442 ## 74xx/7xx Systems
443 #########################################################################
444
445 LIST_74xx="             \
446         DB64360         \
447         DB64460         \
448         EVB64260        \
449         mpc7448hpc2     \
450         P3G4            \
451         p3m7448         \
452         PCIPPC2         \
453         PCIPPC6         \
454         ZUMA            \
455 "
456
457 LIST_7xx="              \
458         BAB7xx          \
459         CPCI750         \
460         ELPPC           \
461         p3m750          \
462         ppmc7xx         \
463 "
464
465 #########################################################################
466 ## PowerPC groups
467 #########################################################################
468
469 LIST_TSEC="             \
470         ${LIST_83xx}    \
471         ${LIST_85xx}    \
472         ${LIST_86xx}    \
473 "
474
475 LIST_ppc="              \
476         ${LIST_5xx}     \
477         ${LIST_512x}    \
478         ${LIST_5xxx}    \
479         ${LIST_8xx}     \
480         ${LIST_8220}    \
481         ${LIST_824x}    \
482         ${LIST_8260}    \
483         ${LIST_83xx}    \
484         ${LIST_85xx}    \
485         ${LIST_86xx}    \
486         ${LIST_4xx}     \
487         ${LIST_74xx}    \
488         ${LIST_7xx}     \
489 "
490
491 #########################################################################
492 ## StrongARM Systems
493 #########################################################################
494
495 LIST_SA="               \
496         assabet         \
497         dnp1110         \
498         gcplus          \
499         lart            \
500         shannon         \
501 "
502
503 #########################################################################
504 ## ARM7 Systems
505 #########################################################################
506
507 LIST_ARM7="             \
508         ap7             \
509         ap720t          \
510         armadillo       \
511         B2              \
512         ep7312          \
513         evb4510         \
514         impa7           \
515         integratorap    \
516         lpc2292sodimm   \
517         modnet50        \
518         SMN42           \
519 "
520
521 #########################################################################
522 ## ARM9 Systems
523 #########################################################################
524
525 LIST_ARM9="                     \
526         ap920t                  \
527         ap922_XA10              \
528         ap926ejs                \
529         ap946es                 \
530         ap966                   \
531         cp920t                  \
532         cp922_XA10              \
533         cp926ejs                \
534         cp946es                 \
535         cp966                   \
536         imx27lite               \
537         lpd7a400                \
538         mv88f6281gtw_ge         \
539         mx1ads                  \
540         mx1fs2                  \
541         netstar                 \
542         nhk8815                 \
543         nhk8815_onenand         \
544         omap1510inn             \
545         omap1610h2              \
546         omap1610inn             \
547         omap5912osk             \
548         omap730p2               \
549         rd6281a                 \
550         sbc2410x                \
551         scb9328                 \
552         sheevaplug              \
553         smdk2400                \
554         smdk2410                \
555         trab                    \
556         VCMA9                   \
557         versatile               \
558         versatileab             \
559         versatilepb             \
560         voiceblue               \
561         davinci_dvevm           \
562         davinci_schmoogie       \
563         davinci_sffsdr          \
564         davinci_sonata          \
565         davinci_dm355evm        \
566 "
567
568 #########################################################################
569 ## ARM10 Systems
570 #########################################################################
571 LIST_ARM10="            \
572         integratorcp    \
573         cp1026          \
574 "
575
576 #########################################################################
577 ## ARM11 Systems
578 #########################################################################
579 LIST_ARM11="                    \
580         cp1136                  \
581         omap2420h4              \
582         apollon                 \
583         imx31_litekit           \
584         imx31_phycore           \
585         imx31_phycore_eet       \
586         mx31ads                 \
587         mx31pdk                 \
588         mx31pdk_nand            \
589         qong                    \
590         smdk6400                \
591 "
592
593 #########################################################################
594 ## ARM Cortex-A8 Systems
595 #########################################################################
596 LIST_ARM_CORTEX_A8="            \
597         devkit8000              \
598         omap3_beagle            \
599         omap3_overo             \
600         omap3_evm               \
601         omap3_pandora           \
602         omap3_zoom1             \
603         omap3_zoom2             \
604 "
605
606 #########################################################################
607 ## AT91 Systems
608 #########################################################################
609
610 LIST_at91="                     \
611         afeb9260                \
612         at91cap9adk             \
613         at91rm9200dk            \
614         at91rm9200ek            \
615         at91sam9260ek           \
616         at91sam9261ek           \
617         at91sam9263ek           \
618         at91sam9g10ek           \
619         at91sam9g20ek           \
620         at91sam9m10g45ek        \
621         at91sam9rlek            \
622         cmc_pu2                 \
623         CPUAT91                 \
624         CPU9260                 \
625         CPU9G20                 \
626         csb637                  \
627         kb9202                  \
628         meesc                   \
629         mp2usb                  \
630         m501sk                  \
631         pm9261                  \
632         pm9263                  \
633         SBC35_A9G20             \
634         TNY_A9260               \
635         TNY_A9G20               \
636 "
637
638 #########################################################################
639 ## Xscale Systems
640 #########################################################################
641
642 LIST_pxa="              \
643         cerf250         \
644         cradle          \
645         csb226          \
646         delta           \
647         innokom         \
648         lubbock         \
649         pleb2           \
650         polaris         \
651         pxa255_idp      \
652         trizepsiv       \
653         wepep250        \
654         xaeniax         \
655         xm250           \
656         xsengine        \
657         zylonite        \
658 "
659
660 LIST_ixp="              \
661         actux1          \
662         actux2          \
663         actux3          \
664         actux4          \
665         ixdp425         \
666         ixdpg425        \
667         pdnb3           \
668         scpu            \
669 "
670
671 #########################################################################
672 ## ARM groups
673 #########################################################################
674
675 LIST_arm="                      \
676         ${LIST_SA}              \
677         ${LIST_ARM7}            \
678         ${LIST_ARM9}            \
679         ${LIST_ARM10}           \
680         ${LIST_ARM11}           \
681         ${LIST_ARM_CORTEX_A8}   \
682         ${LIST_at91}            \
683         ${LIST_pxa}             \
684         ${LIST_ixp}             \
685 "
686
687 #########################################################################
688 ## MIPS Systems         (default = big endian)
689 #########################################################################
690
691 LIST_mips4kc="          \
692         incaip          \
693         qemu_mips       \
694         vct_platinum    \
695         vct_platinum_small      \
696         vct_platinum_onenand    \
697         vct_platinum_onenand_small      \
698         vct_platinumavc \
699         vct_platinumavc_small   \
700         vct_platinumavc_onenand \
701         vct_platinumavc_onenand_small   \
702         vct_premium     \
703         vct_premium_small       \
704         vct_premium_onenand     \
705         vct_premium_onenand_small       \
706 "
707
708 LIST_mips5kc="          \
709         purple          \
710 "
711
712 LIST_au1xx0="           \
713         dbau1000        \
714         dbau1100        \
715         dbau1500        \
716         dbau1550        \
717         dbau1550_el     \
718         gth2            \
719 "
720
721 LIST_mips="             \
722         ${LIST_mips4kc} \
723         ${LIST_mips5kc} \
724         ${LIST_au1xx0}  \
725 "
726
727 #########################################################################
728 ## MIPS Systems         (little endian)
729 #########################################################################
730
731 LIST_mips4kc_el=""
732
733 LIST_mips5kc_el=""
734
735 LIST_au1xx0_el="        \
736         dbau1550_el     \
737         pb1000          \
738 "
739
740 LIST_mips_el="                  \
741         ${LIST_mips4kc_el}      \
742         ${LIST_mips5kc_el}      \
743         ${LIST_au1xx0_el}       \
744 "
745
746 #########################################################################
747 ## i386 Systems
748 #########################################################################
749
750 LIST_I486="             \
751         sc520_cdp       \
752         sc520_eNET      \
753         sc520_spunk     \
754         sc520_spunk_rel \
755 "
756
757 LIST_x86="              \
758         ${LIST_I486}    \
759 "
760
761 #########################################################################
762 ## NIOS Systems
763 #########################################################################
764
765 LIST_nios="                     \
766         ADNPESC1                \
767         ADNPESC1_base_32        \
768         ADNPESC1_DNPEVA2_base_32\
769         DK1C20                  \
770         DK1C20_standard_32      \
771         DK1S10                  \
772         DK1S10_standard_32      \
773         DK1S10_mtx_ldk_20       \
774 "
775
776 #########################################################################
777 ## Nios-II Systems
778 #########################################################################
779
780 LIST_nios2="            \
781         EP1C20          \
782         EP1S10          \
783         EP1S40          \
784         PCI5441         \
785         PK1C20          \
786 "
787
788 #########################################################################
789 ## MicroBlaze Systems
790 #########################################################################
791
792 LIST_microblaze="                       \
793         microblaze-generic              \
794 "
795
796 #########################################################################
797 ## ColdFire Systems
798 #########################################################################
799
800 LIST_coldfire="                 \
801         cobra5272               \
802         EB+MCF-EV123            \
803         EB+MCF-EV123_internal   \
804         idmr                    \
805         M5208EVBE               \
806         M52277EVB               \
807         M5235EVB                \
808         M5249EVB                \
809         M5253DEMO               \
810         M5253EVBE               \
811         M5271EVB                \
812         M5272C3                 \
813         M5275EVB                \
814         M5282EVB                \
815         M53017EVB               \
816         M5329AFEE               \
817         M5373EVB                \
818         M54451EVB               \
819         M54455EVB               \
820         M5475AFE                \
821         M5485AFE                \
822         TASREG                  \
823 "
824
825 #########################################################################
826 ## AVR32 Systems
827 #########################################################################
828
829 LIST_avr32="            \
830         atstk1002       \
831         atstk1003       \
832         atstk1004       \
833         atstk1006       \
834         atngw100        \
835         favr-32-ezkit   \
836         hammerhead      \
837         mimc200         \
838 "
839
840 #########################################################################
841 ## Blackfin Systems
842 #########################################################################
843
844 LIST_blackfin="         \
845         bf518f-ezbrd    \
846         bf526-ezbrd     \
847         bf527-ezkit     \
848         bf533-ezkit     \
849         bf533-stamp     \
850         bf537-minotaur  \
851         bf537-pnav      \
852         bf537-srv1      \
853         bf537-stamp     \
854         bf538f-ezkit    \
855         bf548-ezkit     \
856         bf561-ezkit     \
857         blackstamp      \
858         cm-bf527        \
859         cm-bf533        \
860         cm-bf537e       \
861         cm-bf537u       \
862         cm-bf548        \
863         cm-bf561        \
864         ibf-dsp561      \
865         tcm-bf537       \
866 "
867
868 #########################################################################
869 ## SH Systems
870 #########################################################################
871
872 LIST_sh2="              \
873         rsk7203         \
874 "
875 LIST_sh3="              \
876         mpr2            \
877         ms7720se        \
878 "
879
880 LIST_sh4="              \
881         ms7750se        \
882         ms7722se        \
883         MigoR           \
884         r7780mp         \
885         r2dplus         \
886         sh7763rdp       \
887         sh7785lcr       \
888         ap325rxa        \
889         espt            \
890 "
891
892 LIST_sh="               \
893         ${LIST_sh2}     \
894         ${LIST_sh3}     \
895         ${LIST_sh4}     \
896 "
897
898 #########################################################################
899 ## SPARC Systems
900 #########################################################################
901
902 LIST_sparc="gr_xc3s_1500        gr_cpci_ax2000  gr_ep2s60       grsim   grsim_leon2"
903
904 #-----------------------------------------------------------------------
905
906 #----- for now, just run PPC by default -----
907 [ $# = 0 ] && set $LIST_ppc
908
909 #-----------------------------------------------------------------------
910
911 build_target() {
912         target=$1
913
914         ${MAKE} distclean >/dev/null
915         ${MAKE} ${target}_config
916
917         ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
918                                 | tee ${LOG_DIR}/$target.ERR
919         if [ -s ${LOG_DIR}/$target.ERR ] ; then
920                 ERR_CNT=$((ERR_CNT + 1))
921                 ERR_LIST="${ERR_LIST} $target"
922         else
923                 rm ${LOG_DIR}/$target.ERR
924         fi
925
926         TOTAL_CNT=$((TOTAL_CNT + 1))
927
928         ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
929                                 | tee -a ${LOG_DIR}/$target.MAKELOG
930 }
931
932 #-----------------------------------------------------------------------
933
934 print_stats() {
935         echo ""
936         echo "--------------------- SUMMARY ----------------------------"
937         echo "Boards compiled: ${TOTAL_CNT}"
938         if [ ${ERR_CNT} -gt 0 ] ; then
939                 echo "Boards with warnings or errors: ${ERR_CNT} (${ERR_LIST} )"
940         fi
941         echo "----------------------------------------------------------"
942 }
943
944 #-----------------------------------------------------------------------
945 for arg in $@
946 do
947         case "$arg" in
948         arm|SA|ARM7|ARM9|ARM10|ARM11|ARM_CORTEX_A8|at91|ixp|pxa \
949         |avr32 \
950         |blackfin \
951         |coldfire \
952         |microblaze \
953         |mips|mips_el \
954         |nios|nios2 \
955         |ppc|5xx|5xxx|512x|8xx|8220|824x|8260|83xx|85xx|86xx|4xx|7xx|74xx|TSEC \
956         |sh|sh2|sh3|sh4 \
957         |sparc \
958         |x86|I486 \
959         )
960                         for target in `eval echo '$LIST_'${arg}`
961                         do
962                                 build_target ${target}
963                         done
964                         ;;
965         *)              build_target ${arg}
966                         ;;
967         esac
968 done