2 # (C) Copyright 2000, 2001, 2002
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
5 # See file CREDITS for list of people who contributed to this
8 # This program is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU General Public License as
10 # published by the Free Software Foundation; either version 2 of
11 # the License, or (at your option) any later version.
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
18 # You should have received a copy of the GNU General Public License
19 # along with this program; if not, write to the Free Software
20 # Foundation, Inc., 59 Temple Place, Suite 330, Boston,
24 HOSTARCH := $(shell uname -m | \
32 HOSTOS := $(shell uname -s | tr A-Z a-z | \
33 sed -e 's/\(cygwin\).*/cygwin/')
37 # Deal with colliding definitions from tcsh etc.
40 #########################################################################
42 TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
45 ifeq (include/config.mk,$(wildcard include/config.mk))
46 # load ARCH, BOARD, and CPU configuration
47 include include/config.mk
48 export ARCH CPU BOARD VENDOR
49 # load other configuration
50 include $(TOPDIR)/config.mk
53 ifeq ($(HOSTARCH),ppc)
57 CROSS_COMPILE = ppc_8xx-
60 CROSS_COMPILE = arm-linux-
63 ifeq ($(HOSTARCH),i386)
66 CROSS_COMPILE = i386-linux-
70 CROSS_COMPILE = mips_4KC-
73 CROSS_COMPILE = nios-elf-
80 # The "tools" are needed early, so put this first
98 #########################################################################
99 # U-Boot objects....order is important (i.e. start must be first)
101 OBJS = cpu/$(CPU)/start.o
103 OBJS += cpu/$(CPU)/start16.o
104 OBJS += cpu/$(CPU)/reset.o
107 OBJS += cpu/$(CPU)/resetvec.o
109 ifeq ($(CPU),mpc85xx)
110 OBJS += cpu/$(CPU)/resetvec.o
113 LIBS = board/$(BOARDDIR)/lib$(BOARD).a
114 LIBS += cpu/$(CPU)/lib$(CPU).a
115 LIBS += lib_$(ARCH)/lib$(ARCH).a
116 LIBS += fs/jffs2/libjffs2.a fs/fdos/libfdos.a fs/fat/libfat.a
118 LIBS += disk/libdisk.a
121 LIBS += drivers/libdrivers.a
122 LIBS += drivers/sk98lin/libsk98lin.a
123 LIBS += post/libpost.a post/cpu/libcpu.a
124 LIBS += common/libcommon.a
125 LIBS += lib_generic/libgeneric.a
127 PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
129 #########################################################################
130 #########################################################################
132 ALL = u-boot.srec u-boot.bin System.map
137 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@
140 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
142 u-boot.img: u-boot.bin
143 ./tools/mkimage -A $(ARCH) -T firmware -C none \
144 -a $(TEXT_BASE) -e 0 \
145 -n $(shell sed -n -e 's/.*U_BOOT_VERSION//p' include/version.h | \
146 sed -e 's/"[ ]*$$/ for $(BOARD) board"/') \
150 $(OBJDUMP) -d $< > $@
152 u-boot: depend subdirs $(OBJS) $(LIBS) $(LDSCRIPT)
153 UNDEF_SYM=`$(OBJDUMP) -x $(LIBS) |sed -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
154 $(LD) $(LDFLAGS) $$UNDEF_SYM $(OBJS) \
155 --start-group $(LIBS) $(PLATFORM_LIBS) --end-group \
156 -Map u-boot.map -o u-boot
159 @for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir || exit 1 ; done
162 $(MAKE) -C tools/gdb || exit 1
165 @for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir .depend ; done
168 ctags -w `find $(SUBDIRS) include \
169 \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
172 etags -a `find $(SUBDIRS) include \
173 \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
177 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
180 #########################################################################
182 all install u-boot u-boot.srec depend dep:
183 @echo "System not configured - see README" >&2
187 #########################################################################
190 rm -f include/config.h include/config.mk
192 #========================================================================
194 #========================================================================
196 #########################################################################
198 #########################################################################
200 cmi_mpc5xx_config: unconfig
201 @./mkconfig $(@:_config=) ppc mpc5xx cmi
203 #########################################################################
205 #########################################################################
207 MPC5200LITE_LOWBOOT_config \
208 MPC5200LITE_LOWBOOT08_config \
209 icecube_5200_config \
210 IceCube_5200_config \
211 IceCube_5100_config: unconfig
213 @[ -z "$(findstring LOWBOOT,$@)" ] || \
214 { echo "TEXT_BASE = 0xFF000000" >board/icecube/config.tmp ; \
215 echo "... with LOWBOOT configuration" ; \
217 @[ -z "$(findstring LOWBOOT08,$@)" ] || \
218 { echo "TEXT_BASE = 0xFF800000" >board/icecube/config.tmp ; \
219 echo "... with 8 MB flash only" ; \
221 @[ -z "$(findstring 5200,$@)" ] || \
222 { echo "#define CONFIG_MPC5200" >>include/config.h ; \
223 echo "... with MPC5200 processor" ; \
225 @[ -z "$(findstring 5100,$@)" ] || \
226 { echo "#define CONFIG_MGT5100" >>include/config.h ; \
227 echo "... with MGT5100 processor" ; \
229 @./mkconfig -a IceCube ppc mpc5xxx icecube
231 #########################################################################
233 #########################################################################
235 AdderII_config: unconfig
236 @./mkconfig $(@:_config=) ppc mpc8xx adderII
238 ADS860_config: unconfig
239 @./mkconfig $(@:_config=) ppc mpc8xx fads
241 AMX860_config : unconfig
242 @./mkconfig $(@:_config=) ppc mpc8xx amx860 westel
244 bms2003_config : unconfig
245 @echo "#define CONFIG_BMS2003" >include/config.h
246 @echo "#define CONFIG_LCD" >>include/config.h
247 @echo "#define CONFIG_NEC_NL6448BC33_54" >>include/config.h
248 @./mkconfig -a TQM823L ppc mpc8xx tqm8xx
250 c2mon_config: unconfig
251 @./mkconfig $(@:_config=) ppc mpc8xx c2mon
254 @./mkconfig $(@:_config=) ppc mpc8xx CCM siemens
256 cogent_mpc8xx_config: unconfig
257 @./mkconfig $(@:_config=) ppc mpc8xx cogent
259 ELPT860_config: unconfig
260 @./mkconfig $(@:_config=) ppc mpc8xx elpt860 LEOX
262 ESTEEM192E_config: unconfig
263 @./mkconfig $(@:_config=) ppc mpc8xx esteem192e
265 ETX094_config : unconfig
266 @./mkconfig $(@:_config=) ppc mpc8xx etx094
271 FADS860T_config: unconfig
272 @./mkconfig $(@:_config=) ppc mpc8xx fads
274 FLAGADM_config: unconfig
275 @./mkconfig $(@:_config=) ppc mpc8xx flagadm
277 xtract_GEN860T = $(subst _SC,,$(subst _config,,$1))
280 GEN860T_config: unconfig
282 @[ -z "$(findstring _SC,$@)" ] || \
283 { echo "#define CONFIG_SC" >>include/config.h ; \
284 echo "With reduced H/W feature set (SC)..." ; \
286 @./mkconfig -a $(call xtract_GEN860T,$@) ppc mpc8xx gen860t
288 GENIETV_config: unconfig
289 @./mkconfig $(@:_config=) ppc mpc8xx genietv
292 @./mkconfig $(@:_config=) ppc mpc8xx gth
294 hermes_config : unconfig
295 @./mkconfig $(@:_config=) ppc mpc8xx hermes
297 IAD210_config: unconfig
298 @./mkconfig $(@:_config=) ppc mpc8xx IAD210 siemens
300 xtract_ICU862 = $(subst _100MHz,,$(subst _config,,$1))
302 ICU862_100MHz_config \
303 ICU862_config: unconfig
305 @[ -z "$(findstring _100MHz,$@)" ] || \
306 { echo "#define CONFIG_100MHz" >>include/config.h ; \
307 echo "... with 100MHz system clock" ; \
309 @./mkconfig -a $(call xtract_ICU862,$@) ppc mpc8xx icu862
311 IP860_config : unconfig
312 @./mkconfig $(@:_config=) ppc mpc8xx ip860
316 IVML24_config: unconfig
318 @[ -z "$(findstring IVML24_config,$@)" ] || \
319 { echo "#define CONFIG_IVML24_16M" >>include/config.h ; \
321 @[ -z "$(findstring IVML24_128_config,$@)" ] || \
322 { echo "#define CONFIG_IVML24_32M" >>include/config.h ; \
324 @[ -z "$(findstring IVML24_256_config,$@)" ] || \
325 { echo "#define CONFIG_IVML24_64M" >>include/config.h ; \
327 @./mkconfig -a IVML24 ppc mpc8xx ivm
331 IVMS8_config: unconfig
333 @[ -z "$(findstring IVMS8_config,$@)" ] || \
334 { echo "#define CONFIG_IVMS8_16M" >>include/config.h ; \
336 @[ -z "$(findstring IVMS8_128_config,$@)" ] || \
337 { echo "#define CONFIG_IVMS8_32M" >>include/config.h ; \
339 @[ -z "$(findstring IVMS8_256_config,$@)" ] || \
340 { echo "#define CONFIG_IVMS8_64M" >>include/config.h ; \
342 @./mkconfig -a IVMS8 ppc mpc8xx ivm
344 KUP4K_config : unconfig
345 @./mkconfig $(@:_config=) ppc mpc8xx kup4k
347 LANTEC_config : unconfig
348 @./mkconfig $(@:_config=) ppc mpc8xx lantec
350 lwmon_config: unconfig
351 @./mkconfig $(@:_config=) ppc mpc8xx lwmon
354 MBX860T_config: unconfig
355 @./mkconfig $(@:_config=) ppc mpc8xx mbx8xx
357 MHPC_config: unconfig
358 @./mkconfig $(@:_config=) ppc mpc8xx mhpc eltec
360 MVS1_config : unconfig
361 @./mkconfig $(@:_config=) ppc mpc8xx mvs1
363 xtract_NETVIA = $(subst _V2,,$(subst _config,,$1))
366 NETVIA_config: unconfig
368 @[ -z "$(findstring NETVIA_config,$@)" ] || \
369 { echo "#define CONFIG_NETVIA_VERSION 1" >>include/config.h ; \
370 echo "... Version 1" ; \
372 @[ -z "$(findstring NETVIA_V2_config,$@)" ] || \
373 { echo "#define CONFIG_NETVIA_VERSION 2" >>include/config.h ; \
374 echo "... Version 2" ; \
376 @./mkconfig -a $(call xtract_NETVIA,$@) ppc mpc8xx netvia
378 NX823_config: unconfig
379 @./mkconfig $(@:_config=) ppc mpc8xx nx823
381 pcu_e_config: unconfig
382 @./mkconfig $(@:_config=) ppc mpc8xx pcu_e siemens
384 R360MPI_config: unconfig
385 @./mkconfig $(@:_config=) ppc mpc8xx r360mpi
387 RBC823_config: unconfig
388 @./mkconfig $(@:_config=) ppc mpc8xx rbc823
390 RPXClassic_config: unconfig
391 @./mkconfig $(@:_config=) ppc mpc8xx RPXClassic
393 RPXlite_config: unconfig
394 @./mkconfig $(@:_config=) ppc mpc8xx RPXlite
397 @./mkconfig $(@:_config=) ppc mpc8xx rmu
399 RRvision_config: unconfig
400 @./mkconfig $(@:_config=) ppc mpc8xx RRvision
402 RRvision_LCD_config: unconfig
403 @echo "#define CONFIG_LCD" >include/config.h
404 @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h
405 @./mkconfig -a RRvision ppc mpc8xx RRvision
407 SM850_config : unconfig
408 @./mkconfig $(@:_config=) ppc mpc8xx tqm8xx
410 SPD823TS_config: unconfig
411 @./mkconfig $(@:_config=) ppc mpc8xx spd8xx
413 svm_sc8xx_config: unconfig
415 @./mkconfig $(@:_config=) ppc mpc8xx svm_sc8xx
417 SXNI855T_config: unconfig
418 @./mkconfig $(@:_config=) ppc mpc8xx sixnet
420 # EMK MPC8xx based modules
421 TOP860_config: unconfig
422 @./mkconfig $(@:_config=) ppc mpc8xx top860 emk
424 # Play some tricks for configuration selection
425 # All boards can come with 50 MHz (default), 66MHz, 80MHz or 100 MHz clock,
426 # but only 855 and 860 boards may come with FEC
427 # and 823 boards may have LCD support
428 xtract_8xx = $(subst _66MHz,,$(subst _80MHz,,$(subst _100MHz,,$(subst _LCD,,$(subst _config,,$1)))))
434 TQM823L_66MHz_config \
435 TQM823L_80MHz_config \
437 TQM823L_LCD_66MHz_config \
438 TQM823L_LCD_80MHz_config \
440 TQM850L_66MHz_config \
441 TQM850L_80MHz_config \
443 TQM855L_66MHz_config \
444 TQM855L_80MHz_config \
446 TQM860L_66MHz_config \
447 TQM860L_80MHz_config \
449 TQM862L_66MHz_config \
450 TQM862L_80MHz_config \
452 TQM823M_66MHz_config \
453 TQM823M_80MHz_config \
455 TQM850M_66MHz_config \
456 TQM850M_80MHz_config \
458 TQM855M_66MHz_config \
459 TQM855M_80MHz_config \
461 TQM860M_66MHz_config \
462 TQM860M_80MHz_config \
464 TQM862M_66MHz_config \
465 TQM862M_80MHz_config \
466 TQM862M_100MHz_config: unconfig
468 @[ -z "$(findstring _66MHz,$@)" ] || \
469 { echo "#define CONFIG_66MHz" >>include/config.h ; \
470 echo "... with 66MHz system clock" ; \
472 @[ -z "$(findstring _80MHz,$@)" ] || \
473 { echo "#define CONFIG_80MHz" >>include/config.h ; \
474 echo "... with 80MHz system clock" ; \
476 @[ -z "$(findstring _100MHz,$@)" ] || \
477 { echo "#define CONFIG_100MHz" >>include/config.h ; \
478 echo "... with 100MHz system clock" ; \
480 @[ -z "$(findstring _LCD,$@)" ] || \
481 { echo "#define CONFIG_LCD" >>include/config.h ; \
482 echo "#define CONFIG_NEC_NL6448BC20" >>include/config.h ; \
483 echo "... with LCD display" ; \
485 @./mkconfig -a $(call xtract_8xx,$@) ppc mpc8xx tqm8xx
487 TTTech_config: unconfig
488 @echo "#define CONFIG_LCD" >include/config.h
489 @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h
490 @./mkconfig -a TQM823L ppc mpc8xx tqm8xx
493 @echo "#define CONFIG_LCD" >include/config.h
494 @echo "#define CONFIG_SHARP_LQ084V1DG21" >>include/config.h
495 @./mkconfig $(@:_config=) ppc mpc8xx v37
498 @echo "#define CONFIG_LCD" >include/config.h
499 @echo "#define CONFIG_SHARP_LQ065T9DR51U" >>include/config.h
500 @./mkconfig -a TQM823L ppc mpc8xx tqm8xx
502 #########################################################################
504 #########################################################################
505 xtract_4xx = $(subst _MODEL_BA,,$(subst _MODEL_ME,,$(subst _MODEL_HI,,$(subst _config,,$1))))
507 ADCIOP_config: unconfig
508 @./mkconfig $(@:_config=) ppc ppc4xx adciop esd
510 AR405_config: unconfig
511 @./mkconfig $(@:_config=) ppc ppc4xx ar405 esd
513 ASH405_config: unconfig
514 @./mkconfig $(@:_config=) ppc ppc4xx ash405 esd
516 BUBINGA405EP_config:unconfig
517 @./mkconfig $(@:_config=) ppc ppc4xx bubinga405ep
519 CANBT_config: unconfig
520 @./mkconfig $(@:_config=) ppc ppc4xx canbt esd
524 CPCI405AB_config: unconfig
525 @./mkconfig $(@:_config=) ppc ppc4xx cpci405 esd
526 @echo "BOARD_REVISION = $(@:_config=)" >>include/config.mk
528 CPCI440_config: unconfig
529 @./mkconfig $(@:_config=) ppc ppc4xx cpci440 esd
531 CPCIISER4_config: unconfig
532 @./mkconfig $(@:_config=) ppc ppc4xx cpciiser4 esd
534 CRAYL1_config:unconfig
535 @./mkconfig $(@:_config=) ppc ppc4xx L1 cray
537 DASA_SIM_config: unconfig
538 @./mkconfig $(@:_config=) ppc ppc4xx dasa_sim esd
540 DP405_config: unconfig
541 @./mkconfig $(@:_config=) ppc ppc4xx dp405 esd
543 DU405_config: unconfig
544 @./mkconfig $(@:_config=) ppc ppc4xx du405 esd
546 EBONY_config:unconfig
547 @./mkconfig $(@:_config=) ppc ppc4xx ebony
550 @./mkconfig $(@:_config=) ppc ppc4xx eric
552 EXBITGEN_config:unconfig
553 @./mkconfig $(@:_config=) ppc ppc4xx exbitgen
555 HUB405_config: unconfig
556 @./mkconfig $(@:_config=) ppc ppc4xx hub405 esd
558 MIP405_config:unconfig
559 @./mkconfig $(@:_config=) ppc ppc4xx mip405 mpl
561 MIP405T_config:unconfig
562 @echo "#define CONFIG_MIP405T" >include/config.h
563 @echo "Enable subset config for MIP405T"
564 @./mkconfig -a MIP405 ppc ppc4xx mip405 mpl
567 @./mkconfig $(@:_config=) ppc ppc4xx ml2
570 ORSG_config: unconfig
571 @./mkconfig $(@:_config=) ppc ppc4xx ocrtc esd
573 PCI405_config: unconfig
574 @./mkconfig $(@:_config=) ppc ppc4xx pci405 esd
576 PIP405_config:unconfig
577 @./mkconfig $(@:_config=) ppc ppc4xx pip405 mpl
579 PLU405_config: unconfig
580 @./mkconfig $(@:_config=) ppc ppc4xx plu405 esd
582 PMC405_config: unconfig
583 @./mkconfig $(@:_config=) ppc ppc4xx pmc405 esd
585 PPChameleonEVB_MODEL_BA_config \
586 PPChameleonEVB_MODEL_ME_config \
587 PPChameleonEVB_MODEL_HI_config \
588 PPChameleonEVB_config: unconfig
590 @[ -z "$(findstring _MODEL_BA,$@)" ] || \
591 { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 0" >>include/config.h ; \
592 echo "... BASIC model" ; \
594 @[ -z "$(findstring _MODEL_ME,$@)" ] || \
595 { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 1" >>include/config.h ; \
596 echo "... MEDIUM model" ; \
598 @[ -z "$(findstring _MODEL_HI,$@)" ] || \
599 { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 2" >>include/config.h ; \
600 echo "... HIGH-END model" ; \
602 @./mkconfig -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave
604 VOH405_config: unconfig
605 @./mkconfig $(@:_config=) ppc ppc4xx voh405 esd
608 W7OLMG_config: unconfig
609 @./mkconfig $(@:_config=) ppc ppc4xx w7o
611 WALNUT405_config:unconfig
612 @./mkconfig $(@:_config=) ppc ppc4xx walnut405
614 #########################################################################
616 #########################################################################
617 xtract_82xx = $(subst _ROMBOOT,,$(subst _L2,,$(subst _266MHz,,$(subst _300MHz,,$(subst _config,,$1)))))
619 A3000_config: unconfig
620 @./mkconfig $(@:_config=) ppc mpc824x a3000
623 @./mkconfig $(@:_config=) ppc mpc824x bmw
626 CPC45_ROMBOOT_config: unconfig
627 @./mkconfig $(call xtract_82xx,$@) ppc mpc824x cpc45
629 if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
630 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
631 echo "... booting from 8-bit flash" ; \
633 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
634 echo "... booting from 64-bit flash" ; \
636 echo "export CONFIG_BOOT_ROM" >> config.mk;
638 CU824_config: unconfig
639 @./mkconfig $(@:_config=) ppc mpc824x cu824
641 MOUSSE_config: unconfig
642 @./mkconfig $(@:_config=) ppc mpc824x mousse
644 MUSENKI_config: unconfig
645 @./mkconfig $(@:_config=) ppc mpc824x musenki
648 @./mkconfig $(@:_config=) ppc mpc824x oxc
650 PN62_config: unconfig
651 @./mkconfig $(@:_config=) ppc mpc824x pn62
653 Sandpoint8240_config: unconfig
654 @./mkconfig $(@:_config=) ppc mpc824x sandpoint
656 Sandpoint8245_config: unconfig
657 @./mkconfig $(@:_config=) ppc mpc824x sandpoint
659 SL8245_config: unconfig
660 @./mkconfig $(@:_config=) ppc mpc824x sl8245
662 utx8245_config: unconfig
663 @./mkconfig $(@:_config=) ppc mpc824x utx8245
665 #########################################################################
667 #########################################################################
670 @./mkconfig $(@:_config=) ppc mpc8260 atc
672 cogent_mpc8260_config: unconfig
673 @./mkconfig $(@:_config=) ppc mpc8260 cogent
676 CPU86_ROMBOOT_config: unconfig
677 @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 cpu86
679 if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
680 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
681 echo "... booting from 8-bit flash" ; \
683 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
684 echo "... booting from 64-bit flash" ; \
686 echo "export CONFIG_BOOT_ROM" >> config.mk;
688 ep8260_config: unconfig
689 @./mkconfig $(@:_config=) ppc mpc8260 ep8260
691 gw8260_config: unconfig
692 @./mkconfig $(@:_config=) ppc mpc8260 gw8260
694 hymod_config: unconfig
695 @./mkconfig $(@:_config=) ppc mpc8260 hymod
697 IPHASE4539_config: unconfig
698 @./mkconfig $(@:_config=) ppc mpc8260 iphase4539
700 MPC8260ADS_config: unconfig
701 @./mkconfig $(@:_config=) ppc mpc8260 mpc8260ads
703 MPC8266ADS_config: unconfig
704 @./mkconfig $(@:_config=) ppc mpc8260 mpc8266ads
707 PM825_ROMBOOT_config: unconfig
708 @echo "#define CONFIG_PCI" >include/config.h
709 @./mkconfig -a PM826 ppc mpc8260 pm826
711 if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
712 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
713 echo "... booting from 8-bit flash" ; \
715 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
716 echo "... booting from 64-bit flash" ; \
718 echo "export CONFIG_BOOT_ROM" >> config.mk; \
721 PM826_ROMBOOT_config: unconfig
722 @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 pm826
724 if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
725 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
726 echo "... booting from 8-bit flash" ; \
728 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
729 echo "... booting from 64-bit flash" ; \
731 echo "export CONFIG_BOOT_ROM" >> config.mk; \
733 ppmc8260_config: unconfig
734 @./mkconfig $(@:_config=) ppc mpc8260 ppmc8260
736 RPXsuper_config: unconfig
737 @./mkconfig $(@:_config=) ppc mpc8260 rpxsuper
739 rsdproto_config: unconfig
740 @./mkconfig $(@:_config=) ppc mpc8260 rsdproto
742 sacsng_config: unconfig
743 @./mkconfig $(@:_config=) ppc mpc8260 sacsng
745 sbc8260_config: unconfig
746 @./mkconfig $(@:_config=) ppc mpc8260 sbc8260
749 @./mkconfig $(@:_config=) ppc mpc8260 SCM siemens
760 TQM8265_AA_config: unconfig
762 TQM8255_AA_config) CTYPE=MPC8255; CFREQ=300; CACHE=no; BMODE=8260;; \
763 TQM8260_AA_config) CTYPE=MPC8260; CFREQ=200; CACHE=no; BMODE=8260;; \
764 TQM8260_AB_config) CTYPE=MPC8260; CFREQ=200; CACHE=yes; BMODE=60x;; \
765 TQM8260_AC_config) CTYPE=MPC8260; CFREQ=200; CACHE=yes; BMODE=60x;; \
766 TQM8260_AD_config) CTYPE=MPC8260; CFREQ=300; CACHE=no; BMODE=60x;; \
767 TQM8260_AE_config) CTYPE=MPC8260; CFREQ=266; CACHE=no; BMODE=8260;; \
768 TQM8260_AF_config) CTYPE=MPC8260; CFREQ=300; CACHE=no; BMODE=60x;; \
769 TQM8260_AG_config) CTYPE=MPC8260; CFREQ=300; CACHE=no; BMODE=8260;; \
770 TQM8260_AH_config) CTYPE=MPC8260; CFREQ=300; CACHE=yes; BMODE=60x;; \
771 TQM8265_AA_config) CTYPE=MPC8265; CFREQ=300; CACHE=no; BMODE=60x;; \
773 >include/config.h ; \
774 if [ "$${CTYPE}" != "MPC8260" ] ; then \
775 echo "#define CONFIG_$${CTYPE}" >>include/config.h ; \
777 echo "#define CONFIG_$${CFREQ}MHz" >>include/config.h ; \
778 echo "... with $${CFREQ}MHz system clock" ; \
779 if [ "$${CACHE}" == "yes" ] ; then \
780 echo "#define CONFIG_L2_CACHE" >>include/config.h ; \
781 echo "... with L2 Cache support" ; \
783 echo "#undef CONFIG_L2_CACHE" >>include/config.h ; \
784 echo "... without L2 Cache support" ; \
786 if [ "$${BMODE}" == "60x" ] ; then \
787 echo "#define CONFIG_BUSMODE_60x" >>include/config.h ; \
788 echo "... with 60x Bus Mode" ; \
790 echo "#undef CONFIG_BUSMODE_60x" >>include/config.h ; \
791 echo "... without 60x Bus Mode" ; \
793 @./mkconfig -a TQM8260 ppc mpc8260 tqm8260
795 ZPC1900_config: unconfig
796 @./mkconfig $(@:_config=) ppc mpc8260 zpc1900
798 #########################################################################
800 #########################################################################
802 MPC8540ADS_config: unconfig
803 @./mkconfig $(@:_config=) ppc mpc85xx mpc8540ads
805 MPC8560ADS_config: unconfig
806 @./mkconfig $(@:_config=) ppc mpc85xx mpc8560ads
808 #########################################################################
810 #########################################################################
812 AmigaOneG3SE_config: unconfig
813 @./mkconfig $(@:_config=) ppc 74xx_7xx AmigaOneG3SE MAI
815 BAB7xx_config: unconfig
816 @./mkconfig $(@:_config=) ppc 74xx_7xx bab7xx eltec
818 debris_config: unconfig
819 @./mkconfig $(@:_config=) ppc mpc824x debris etin
821 ELPPC_config: unconfig
822 @./mkconfig $(@:_config=) ppc 74xx_7xx elppc eltec
825 EVB64260_750CX_config: unconfig
826 @./mkconfig EVB64260 ppc 74xx_7xx evb64260
828 P3G4_config: unconfig
829 @./mkconfig $(@:_config=) ppc 74xx_7xx evb64260
832 PCIPPC6_config: unconfig
833 @./mkconfig $(@:_config=) ppc 74xx_7xx pcippc2
835 ZUMA_config: unconfig
836 @./mkconfig $(@:_config=) ppc 74xx_7xx evb64260
838 #========================================================================
840 #========================================================================
841 #########################################################################
843 #########################################################################
845 at91rm9200dk_config : unconfig
846 @./mkconfig $(@:_config=) arm at91rm9200 at91rm9200dk
848 lart_config : unconfig
849 @./mkconfig $(@:_config=) arm sa1100 lart
851 dnp1110_config : unconfig
852 @./mkconfig $(@:_config=) arm sa1100 dnp1110
854 shannon_config : unconfig
855 @./mkconfig $(@:_config=) arm sa1100 shannon
857 #########################################################################
859 #########################################################################
861 xtract_trab = $(subst _bigram,,$(subst _bigflash,,$(subst _old,,$(subst _config,,$1))))
863 omap1510inn_config : unconfig
864 @./mkconfig $(@:_config=) arm arm925t omap1510inn
866 omap1610inn_config : unconfig
867 @./mkconfig $(@:_config=) arm arm926ejs omap1610inn
869 smdk2400_config : unconfig
870 @./mkconfig $(@:_config=) arm arm920t smdk2400
872 smdk2410_config : unconfig
873 @./mkconfig $(@:_config=) arm arm920t smdk2410
877 trab_bigflash_config \
878 trab_old_config: unconfig
880 @[ -z "$(findstring _bigram,$@)" ] || \
881 { echo "#define CONFIG_FLASH_8MB" >>include/config.h ; \
882 echo "... with 8 MB Flash, 32 MB RAM" ; \
884 @[ -z "$(findstring _bigflash,$@)" ] || \
885 { echo "#define CONFIG_RAM_16MB" >>include/config.h ; \
886 echo "... with 16 MB Flash, 16 MB RAM" ; \
887 echo "TEXT_BASE = 0x0CF00000" >board/trab/config.tmp ; \
889 @[ -z "$(findstring _old,$@)" ] || \
890 { echo "#define CONFIG_OLD_VERSION" >>include/config.h ; \
891 echo "... with small memory configuration" ; \
892 echo "TEXT_BASE = 0x0CF00000" >board/trab/config.tmp ; \
894 @./mkconfig -a $(call xtract_trab,$@) arm arm920t trab
896 VCMA9_config : unconfig
897 @./mkconfig $(@:_config=) arm arm920t vcma9 mpl
899 #########################################################################
901 #########################################################################
903 impa7_config : unconfig
904 @./mkconfig $(@:_config=) arm arm720t impa7
906 ep7312_config : unconfig
907 @./mkconfig $(@:_config=) arm arm720t ep7312
909 #########################################################################
911 #########################################################################
913 cradle_config : unconfig
914 @./mkconfig $(@:_config=) arm pxa cradle
916 csb226_config : unconfig
917 @./mkconfig $(@:_config=) arm pxa csb226
919 innokom_config : unconfig
920 @./mkconfig $(@:_config=) arm pxa innokom
922 ixdp425_config : unconfig
923 @./mkconfig $(@:_config=) arm ixp ixdp425
925 lubbock_config : unconfig
926 @./mkconfig $(@:_config=) arm pxa lubbock
928 logodl_config : unconfig
929 @./mkconfig $(@:_config=) arm pxa logodl
931 wepep250_config : unconfig
932 @./mkconfig $(@:_config=) arm pxa wepep250
934 #========================================================================
936 #========================================================================
937 #########################################################################
939 #########################################################################
940 sc520_cdp_config : unconfig
941 @./mkconfig $(@:_config=) i386 i386 sc520_cdp
943 sc520_spunk_config : unconfig
944 @./mkconfig $(@:_config=) i386 i386 sc520_spunk
946 sc520_spunk_rel_config : unconfig
947 @./mkconfig $(@:_config=) i386 i386 sc520_spunk
949 #========================================================================
951 #========================================================================
952 #########################################################################
954 #########################################################################
956 xtract_incaip = $(subst _100MHz,,$(subst _133MHz,,$(subst _150MHz,,$(subst _config,,$1))))
958 incaip_100MHz_config \
959 incaip_133MHz_config \
960 incaip_150MHz_config \
961 incaip_config: unconfig
963 @[ -z "$(findstring _100MHz,$@)" ] || \
964 { echo "#define CPU_CLOCK_RATE 100000000" >>include/config.h ; \
965 echo "... with 100MHz system clock" ; \
967 @[ -z "$(findstring _133MHz,$@)" ] || \
968 { echo "#define CPU_CLOCK_RATE 133000000" >>include/config.h ; \
969 echo "... with 133MHz system clock" ; \
971 @[ -z "$(findstring _150MHz,$@)" ] || \
972 { echo "#define CPU_CLOCK_RATE 150000000" >>include/config.h ; \
973 echo "... with 150MHz system clock" ; \
975 @./mkconfig -a $(call xtract_incaip,$@) mips mips incaip
977 #########################################################################
979 #########################################################################
981 purple_config : unconfig
982 @./mkconfig $(@:_config=) mips mips purple
984 #========================================================================
986 #========================================================================
987 #########################################################################
989 #########################################################################
991 DK1C20_config: unconfig
992 @./mkconfig $(@:_config=) nios nios dk1c20
995 #########################################################################
997 #########################################################################
998 dbau1x00_config : unconfig
999 @./mkconfig $(@:_config=) mips mips dbau1x00
1001 #########################################################################
1002 #########################################################################
1006 \( -name 'core' -o -name '*.bak' -o -name '*~' \
1007 -o -name '*.o' -o -name '*.a' \) -print \
1009 rm -f examples/hello_world examples/timer \
1010 examples/eepro100_eeprom examples/sched \
1011 examples/mem_to_mem_idma2intr examples/82559_eeprom
1013 rm -f tools/img2srec tools/mkimage tools/envcrc tools/gen_eth_addr
1014 rm -f tools/easylogo/easylogo tools/bmp_logo
1015 rm -f tools/gdb/astest tools/gdb/gdbcont tools/gdb/gdbsend
1016 rm -f tools/env/fw_printenv tools/env/fw_setenv
1017 rm -f board/cray/L1/bootscript.c board/cray/L1/bootscript.image
1018 rm -f board/trab/trab_fkt board/*/config.tmp
1022 \( -name .depend -o -name '*.srec' -o -name '*.bin' \) \
1025 rm -f $(OBJS) *.bak tags TAGS
1027 rm -f u-boot u-boot.map $(ALL)
1028 rm -f tools/crc32.c tools/environment.c tools/env/crc32.c
1029 rm -f tools/inca-swap-bytes cpu/mpc824x/bedbug_603e.c
1030 rm -f include/asm/proc include/asm/arch include/asm
1033 distclean: clobber unconfig
1036 F=`basename $(TOPDIR)` ; cd .. ; \
1037 gtar --force-local -zcvf `date "+$$F-%Y-%m-%d-%T.tar.gz"` $$F
1039 #########################################################################