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