Add lowboot target to mcc200 board
[platform/kernel/u-boot.git] / Makefile
1 #
2 # (C) Copyright 2000-2006
3 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 #
5 # See file CREDITS for list of people who contributed to this
6 # project.
7 #
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.
12 #
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.
17 #
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,
21 # MA 02111-1307 USA
22 #
23
24 VERSION = 1
25 PATCHLEVEL = 1
26 SUBLEVEL = 4
27 EXTRAVERSION =
28 U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
29 VERSION_FILE = include/version_autogenerated.h
30
31 HOSTARCH := $(shell uname -m | \
32         sed -e s/i.86/i386/ \
33             -e s/sun4u/sparc64/ \
34             -e s/arm.*/arm/ \
35             -e s/sa110/arm/ \
36             -e s/powerpc/ppc/ \
37             -e s/macppc/ppc/)
38
39 HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \
40             sed -e 's/\(cygwin\).*/cygwin/')
41
42 export  HOSTARCH HOSTOS
43
44 # Deal with colliding definitions from tcsh etc.
45 VENDOR=
46
47 #########################################################################
48
49 TOPDIR  := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
50 export  TOPDIR
51
52 ifeq (include/config.mk,$(wildcard include/config.mk))
53 # load ARCH, BOARD, and CPU configuration
54 include include/config.mk
55 export  ARCH CPU BOARD VENDOR SOC
56 # load other configuration
57 include $(TOPDIR)/config.mk
58
59 ifndef CROSS_COMPILE
60 ifeq ($(HOSTARCH),ppc)
61 CROSS_COMPILE =
62 else
63 ifeq ($(ARCH),ppc)
64 CROSS_COMPILE = powerpc-linux-
65 endif
66 ifeq ($(ARCH),arm)
67 CROSS_COMPILE = arm-linux-
68 endif
69 ifeq ($(ARCH),i386)
70 ifeq ($(HOSTARCH),i386)
71 CROSS_COMPILE =
72 else
73 CROSS_COMPILE = i386-linux-
74 endif
75 endif
76 ifeq ($(ARCH),mips)
77 CROSS_COMPILE = mips_4KC-
78 endif
79 ifeq ($(ARCH),nios)
80 CROSS_COMPILE = nios-elf-
81 endif
82 ifeq ($(ARCH),nios2)
83 CROSS_COMPILE = nios2-elf-
84 endif
85 ifeq ($(ARCH),m68k)
86 CROSS_COMPILE = m68k-elf-
87 endif
88 ifeq ($(ARCH),microblaze)
89 CROSS_COMPILE = mb-
90 endif
91 endif
92 endif
93
94 export  CROSS_COMPILE
95
96 #########################################################################
97 # U-Boot objects....order is important (i.e. start must be first)
98
99 OBJS  = cpu/$(CPU)/start.o
100 ifeq ($(CPU),i386)
101 OBJS += cpu/$(CPU)/start16.o
102 OBJS += cpu/$(CPU)/reset.o
103 endif
104 ifeq ($(CPU),ppc4xx)
105 OBJS += cpu/$(CPU)/resetvec.o
106 endif
107 ifeq ($(CPU),mpc83xx)
108 OBJS += cpu/$(CPU)/resetvec.o
109 endif
110 ifeq ($(CPU),mpc85xx)
111 OBJS += cpu/$(CPU)/resetvec.o
112 endif
113
114 LIBS  = lib_generic/libgeneric.a
115 LIBS += board/$(BOARDDIR)/lib$(BOARD).a
116 LIBS += cpu/$(CPU)/lib$(CPU).a
117 ifdef SOC
118 LIBS += cpu/$(CPU)/$(SOC)/lib$(SOC).a
119 endif
120 LIBS += lib_$(ARCH)/lib$(ARCH).a
121 LIBS += fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a \
122         fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a
123 LIBS += net/libnet.a
124 LIBS += disk/libdisk.a
125 LIBS += rtc/librtc.a
126 LIBS += dtt/libdtt.a
127 LIBS += drivers/libdrivers.a
128 LIBS += drivers/sk98lin/libsk98lin.a
129 LIBS += post/libpost.a post/cpu/libcpu.a
130 LIBS += common/libcommon.a
131 .PHONY : $(LIBS)
132
133 # Add GCC lib
134 PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
135
136
137 # The "tools" are needed early, so put this first
138 # Don't include stuff already done in $(LIBS)
139 SUBDIRS = tools \
140           examples \
141           post \
142           post/cpu
143 .PHONY : $(SUBDIRS)
144
145 #########################################################################
146 #########################################################################
147
148 ALL = u-boot.srec u-boot.bin System.map
149
150 all:            $(ALL)
151
152 u-boot.hex:     u-boot
153                 $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@
154
155 u-boot.srec:    u-boot
156                 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@
157
158 u-boot.bin:     u-boot
159                 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
160
161 u-boot.img:     u-boot.bin
162                 ./tools/mkimage -A $(ARCH) -T firmware -C none \
163                 -a $(TEXT_BASE) -e 0 \
164                 -n $(shell sed -n -e 's/.*U_BOOT_VERSION//p' $(VERSION_FILE) | \
165                         sed -e 's/"[     ]*$$/ for $(BOARD) board"/') \
166                 -d $< $@
167
168 u-boot.dis:     u-boot
169                 $(OBJDUMP) -d $< > $@
170
171 u-boot:         depend version $(SUBDIRS) $(OBJS) $(LIBS) $(LDSCRIPT)
172                 UNDEF_SYM=`$(OBJDUMP) -x $(LIBS) |sed  -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
173                 $(LD) $(LDFLAGS) $$UNDEF_SYM $(OBJS) \
174                         --start-group $(LIBS) --end-group $(PLATFORM_LIBS) \
175                         -Map u-boot.map -o u-boot
176
177 $(LIBS):
178                 $(MAKE) -C `dirname $@`
179
180 $(SUBDIRS):
181                 $(MAKE) -C $@ all
182
183 version:
184                 @echo -n "#define U_BOOT_VERSION \"U-Boot " > $(VERSION_FILE); \
185                 echo -n "$(U_BOOT_VERSION)" >> $(VERSION_FILE); \
186                 echo -n $(shell $(CONFIG_SHELL) $(TOPDIR)/tools/setlocalversion \
187                          $(TOPDIR)) >> $(VERSION_FILE); \
188                 echo "\"" >> $(VERSION_FILE)
189
190 gdbtools:
191                 $(MAKE) -C tools/gdb || exit 1
192
193 depend dep:
194                 @for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir .depend ; done
195
196 tags:
197                 ctags -w `find $(SUBDIRS) include \
198                                 lib_generic board/$(BOARDDIR) cpu/$(CPU) lib_$(ARCH) \
199                                 fs/cramfs fs/fat fs/fdos fs/jffs2 \
200                                 net disk rtc dtt drivers drivers/sk98lin common \
201                         \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
202
203 etags:
204                 etags -a `find $(SUBDIRS) include \
205                                 lib_generic board/$(BOARDDIR) cpu/$(CPU) lib_$(ARCH) \
206                                 fs/cramfs fs/fat fs/fdos fs/jffs2 \
207                                 net disk rtc dtt drivers drivers/sk98lin common \
208                         \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)`
209
210 System.map:     u-boot
211                 @$(NM) $< | \
212                 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
213                 sort > System.map
214
215 #########################################################################
216 else
217 all install u-boot u-boot.srec depend dep:
218         @echo "System not configured - see README" >&2
219         @ exit 1
220 endif
221
222 #########################################################################
223
224 unconfig:
225         @rm -f include/config.h include/config.mk board/*/config.tmp
226
227 #========================================================================
228 # PowerPC
229 #========================================================================
230
231 #########################################################################
232 ## MPC5xx Systems
233 #########################################################################
234
235 canmb_config:   unconfig
236         @./mkconfig -a canmb ppc mpc5xxx canmb
237
238 cmi_mpc5xx_config:      unconfig
239         @./mkconfig $(@:_config=) ppc mpc5xx cmi
240
241 PATI_config:            unconfig
242         @./mkconfig $(@:_config=) ppc mpc5xx pati mpl
243
244 #########################################################################
245 ## MPC5xxx Systems
246 #########################################################################
247
248 aev_config: unconfig
249         @./mkconfig -a aev ppc mpc5xxx tqm5200
250
251 cpci5200_config:  unconfig
252         @./mkconfig -a cpci5200  ppc mpc5xxx cpci5200 esd
253
254 hmi1001_config:         unconfig
255         @./mkconfig hmi1001 ppc mpc5xxx hmi1001
256
257 Lite5200_config                         \
258 Lite5200_LOWBOOT_config                 \
259 Lite5200_LOWBOOT08_config               \
260 icecube_5200_config                     \
261 icecube_5200_LOWBOOT_config             \
262 icecube_5200_LOWBOOT08_config           \
263 icecube_5200_DDR_config                 \
264 icecube_5200_DDR_LOWBOOT_config         \
265 icecube_5200_DDR_LOWBOOT08_config       \
266 icecube_5100_config:                    unconfig
267         @ >include/config.h
268         @[ -z "$(findstring LOWBOOT_,$@)" ] || \
269                 { if [ "$(findstring DDR,$@)" ] ; \
270                         then echo "TEXT_BASE = 0xFF800000" >board/icecube/config.tmp ; \
271                         else echo "TEXT_BASE = 0xFF000000" >board/icecube/config.tmp ; \
272                   fi ; \
273                   echo "... with LOWBOOT configuration" ; \
274                 }
275         @[ -z "$(findstring LOWBOOT08,$@)" ] || \
276                 { echo "TEXT_BASE = 0xFF800000" >board/icecube/config.tmp ; \
277                   echo "... with 8 MB flash only" ; \
278                   echo "... with LOWBOOT configuration" ; \
279                 }
280         @[ -z "$(findstring DDR,$@)" ] || \
281                 { echo "#define CONFIG_MPC5200_DDR"     >>include/config.h ; \
282                   echo "... DDR memory revision" ; \
283                 }
284         @[ -z "$(findstring 5200,$@)" ] || \
285                 { echo "#define CONFIG_MPC5200"         >>include/config.h ; \
286                   echo "... with MPC5200 processor" ; \
287                 }
288         @[ -z "$(findstring 5100,$@)" ] || \
289                 { echo "#define CONFIG_MGT5100"         >>include/config.h ; \
290                   echo "... with MGT5100 processor" ; \
291                 }
292         @./mkconfig -a IceCube ppc mpc5xxx icecube
293
294 inka4x0_config: unconfig
295         @./mkconfig inka4x0 ppc mpc5xxx inka4x0
296
297 mcc200_config   \
298 mcc200_lowboot_config:  unconfig
299         @ >include/config.h
300         @[ -z "$(findstring lowboot_,$@)" ] || \
301                 { echo "TEXT_BASE = 0xFE000000" >board/mcc200/config.tmp ; \
302                   echo "... with lowboot configuration" ; \
303                 }
304         @./mkconfig mcc200 ppc mpc5xxx mcc200
305
306 o2dnt_config:
307         @./mkconfig o2dnt ppc mpc5xxx o2dnt
308
309 pf5200_config:  unconfig
310         @./mkconfig pf5200  ppc mpc5xxx pf5200 esd
311
312 PM520_config \
313 PM520_DDR_config \
314 PM520_ROMBOOT_config \
315 PM520_ROMBOOT_DDR_config:       unconfig
316         @ >include/config.h
317         @[ -z "$(findstring DDR,$@)" ] || \
318                 { echo "#define CONFIG_MPC5200_DDR"     >>include/config.h ; \
319                   echo "... DDR memory revision" ; \
320                 }
321         @[ -z "$(findstring ROMBOOT,$@)" ] || \
322                 { echo "#define CONFIG_BOOT_ROM" >>include/config.h ; \
323                   echo "... booting from 8-bit flash" ; \
324                 }
325         @./mkconfig -a PM520 ppc mpc5xxx pm520
326
327 smmaco4_config: unconfig
328         @./mkconfig -a smmaco4 ppc mpc5xxx tqm5200
329
330 spieval_config: unconfig
331         echo "#define CONFIG_CS_AUTOCONF">>include/config.h
332         echo "... with automatic CS configuration"
333         @./mkconfig -a spieval ppc mpc5xxx tqm5200
334
335 MINI5200_config \
336 EVAL5200_config \
337 TOP5200_config: unconfig
338         @ echo "#define CONFIG_$(@:_config=) 1" >include/config.h
339         @./mkconfig -a TOP5200 ppc mpc5xxx top5200 emk
340
341 Total5100_config                \
342 Total5200_config                \
343 Total5200_lowboot_config        \
344 Total5200_Rev2_config           \
345 Total5200_Rev2_lowboot_config:  unconfig
346         @ >include/config.h
347         @[ -z "$(findstring 5100,$@)" ] || \
348                 { echo "#define CONFIG_MGT5100"         >>include/config.h ; \
349                   echo "... with MGT5100 processor" ; \
350                 }
351         @[ -z "$(findstring 5200,$@)" ] || \
352                 { echo "#define CONFIG_MPC5200"         >>include/config.h ; \
353                   echo "... with MPC5200 processor" ; \
354                 }
355         @[ -n "$(findstring Rev,$@)" ] || \
356                 { echo "#define CONFIG_TOTAL5200_REV 1" >>include/config.h ; \
357                   echo "... revision 1 board" ; \
358                 }
359         @[ -z "$(findstring Rev2_,$@)" ] || \
360                 { echo "#define CONFIG_TOTAL5200_REV 2" >>include/config.h ; \
361                   echo "... revision 2 board" ; \
362                 }
363         @[ -z "$(findstring lowboot_,$@)" ] || \
364                 { echo "TEXT_BASE = 0xFE000000" >board/total5200/config.tmp ; \
365                   echo "... with lowboot configuration" ; \
366                 }
367         @./mkconfig -a Total5200 ppc mpc5xxx total5200
368
369 TQM5200_auto_config     \
370 TQM5200_AA_config       \
371 TQM5200_AB_config       \
372 TQM5200_AC_config       \
373 MiniFAP_config: unconfig
374         @ >include/config.h
375         @[ -z "$(findstring MiniFAP,$@)" ] || \
376                 { echo "#define CONFIG_MINIFAP" >>include/config.h ; \
377                   echo "#define CONFIG_TQM5200_AC"      >>include/config.h ; \
378                   echo "... TQM5200_AC on MiniFAP" ; \
379                 }
380         @[ -z "$(findstring AA,$@)" ] || \
381                 { echo "#define CONFIG_TQM5200_AA"      >>include/config.h ; \
382                   echo "... with 4 MB Flash, 16 MB SDRAM, 32 kB EEPROM" ; \
383                 }
384         @[ -z "$(findstring AB,$@)" ] || \
385                 { echo "#define CONFIG_TQM5200_AB"      >>include/config.h ; \
386                   echo "... with 64 MB Flash, 64 MB SDRAM, 32 kB EEPROM, 512 kB SRAM" ; \
387                   echo "... with Graphics Controller"; \
388                 }
389         @[ -z "$(findstring AC,$@)" ] || \
390                 { echo "#define CONFIG_TQM5200_AC"      >>include/config.h ; \
391                   echo "... with 4 MB Flash, 128 MB SDRAM" ; \
392                   echo "... with Graphics Controller"; \
393                 }
394         @[ -z "$(findstring auto,$@)" ] || \
395                 { echo "#define CONFIG_CS_AUTOCONF"     >>include/config.h ; \
396                   echo "... with automatic CS configuration" ; \
397                 }
398         @./mkconfig -a TQM5200 ppc mpc5xxx tqm5200
399
400 #########################################################################
401 ## MPC8xx Systems
402 #########################################################################
403
404 Adder_config    \
405 Adder87x_config \
406 AdderII_config  \
407         :               unconfig
408         $(if $(findstring AdderII,$@), \
409         @echo "#define CONFIG_MPC852T" > include/config.h)
410         @./mkconfig -a Adder ppc mpc8xx adder
411
412 ADS860_config     \
413 FADS823_config    \
414 FADS850SAR_config \
415 MPC86xADS_config  \
416 MPC885ADS_config  \
417 FADS860T_config:        unconfig
418         @./mkconfig $(@:_config=) ppc mpc8xx fads
419
420 AMX860_config   :       unconfig
421         @./mkconfig $(@:_config=) ppc mpc8xx amx860 westel
422
423 c2mon_config:           unconfig
424         @./mkconfig $(@:_config=) ppc mpc8xx c2mon
425
426 CCM_config:             unconfig
427         @./mkconfig $(@:_config=) ppc mpc8xx CCM siemens
428
429 cogent_mpc8xx_config:   unconfig
430         @./mkconfig $(@:_config=) ppc mpc8xx cogent
431
432 ELPT860_config:         unconfig
433         @./mkconfig $(@:_config=) ppc mpc8xx elpt860 LEOX
434
435 ESTEEM192E_config:      unconfig
436         @./mkconfig $(@:_config=) ppc mpc8xx esteem192e
437
438 ETX094_config   :       unconfig
439         @./mkconfig $(@:_config=) ppc mpc8xx etx094
440
441 FLAGADM_config: unconfig
442         @./mkconfig $(@:_config=) ppc mpc8xx flagadm
443
444 xtract_GEN860T = $(subst _SC,,$(subst _config,,$1))
445
446 GEN860T_SC_config       \
447 GEN860T_config: unconfig
448         @ >include/config.h
449         @[ -z "$(findstring _SC,$@)" ] || \
450                 { echo "#define CONFIG_SC" >>include/config.h ; \
451                   echo "With reduced H/W feature set (SC)..." ; \
452                 }
453         @./mkconfig -a $(call xtract_GEN860T,$@) ppc mpc8xx gen860t
454
455 GENIETV_config: unconfig
456         @./mkconfig $(@:_config=) ppc mpc8xx genietv
457
458 GTH_config:     unconfig
459         @./mkconfig $(@:_config=) ppc mpc8xx gth
460
461 hermes_config   :       unconfig
462         @./mkconfig $(@:_config=) ppc mpc8xx hermes
463
464 HMI10_config    :       unconfig
465         @./mkconfig $(@:_config=) ppc mpc8xx tqm8xx
466
467 IAD210_config: unconfig
468         @./mkconfig $(@:_config=) ppc mpc8xx IAD210 siemens
469
470 xtract_ICU862 = $(subst _100MHz,,$(subst _config,,$1))
471
472 ICU862_100MHz_config    \
473 ICU862_config: unconfig
474         @ >include/config.h
475         @[ -z "$(findstring _100MHz,$@)" ] || \
476                 { echo "#define CONFIG_100MHz"  >>include/config.h ; \
477                   echo "... with 100MHz system clock" ; \
478                 }
479         @./mkconfig -a $(call xtract_ICU862,$@) ppc mpc8xx icu862
480
481 IP860_config    :       unconfig
482         @./mkconfig $(@:_config=) ppc mpc8xx ip860
483
484 IVML24_256_config \
485 IVML24_128_config \
486 IVML24_config:  unconfig
487         @ >include/config.h
488         @[ -z "$(findstring IVML24_config,$@)" ] || \
489                  { echo "#define CONFIG_IVML24_16M"     >>include/config.h ; \
490                  }
491         @[ -z "$(findstring IVML24_128_config,$@)" ] || \
492                  { echo "#define CONFIG_IVML24_32M"     >>include/config.h ; \
493                  }
494         @[ -z "$(findstring IVML24_256_config,$@)" ] || \
495                  { echo "#define CONFIG_IVML24_64M"     >>include/config.h ; \
496                  }
497         @./mkconfig -a IVML24 ppc mpc8xx ivm
498
499 IVMS8_256_config \
500 IVMS8_128_config \
501 IVMS8_config:   unconfig
502         @ >include/config.h
503         @[ -z "$(findstring IVMS8_config,$@)" ] || \
504                  { echo "#define CONFIG_IVMS8_16M"      >>include/config.h ; \
505                  }
506         @[ -z "$(findstring IVMS8_128_config,$@)" ] || \
507                  { echo "#define CONFIG_IVMS8_32M"      >>include/config.h ; \
508                  }
509         @[ -z "$(findstring IVMS8_256_config,$@)" ] || \
510                  { echo "#define CONFIG_IVMS8_64M"      >>include/config.h ; \
511                  }
512         @./mkconfig -a IVMS8 ppc mpc8xx ivm
513
514 KUP4K_config    :       unconfig
515         @./mkconfig $(@:_config=) ppc mpc8xx kup4k kup
516
517 KUP4X_config    :       unconfig
518         @./mkconfig $(@:_config=) ppc mpc8xx kup4x kup
519
520 LANTEC_config   :       unconfig
521         @./mkconfig $(@:_config=) ppc mpc8xx lantec
522
523 lwmon_config:           unconfig
524         @./mkconfig $(@:_config=) ppc mpc8xx lwmon
525
526 MBX_config      \
527 MBX860T_config: unconfig
528         @./mkconfig $(@:_config=) ppc mpc8xx mbx8xx
529
530 MHPC_config:            unconfig
531         @./mkconfig $(@:_config=) ppc mpc8xx mhpc eltec
532
533 MVS1_config :           unconfig
534         @./mkconfig $(@:_config=) ppc mpc8xx mvs1
535
536 xtract_NETVIA = $(subst _V2,,$(subst _config,,$1))
537
538 NETVIA_V2_config \
539 NETVIA_config:          unconfig
540         @ >include/config.h
541         @[ -z "$(findstring NETVIA_config,$@)" ] || \
542                  { echo "#define CONFIG_NETVIA_VERSION 1" >>include/config.h ; \
543                   echo "... Version 1" ; \
544                  }
545         @[ -z "$(findstring NETVIA_V2_config,$@)" ] || \
546                  { echo "#define CONFIG_NETVIA_VERSION 2" >>include/config.h ; \
547                   echo "... Version 2" ; \
548                  }
549         @./mkconfig -a $(call xtract_NETVIA,$@) ppc mpc8xx netvia
550
551 xtract_NETPHONE = $(subst _V2,,$(subst _config,,$1))
552
553 NETPHONE_V2_config \
554 NETPHONE_config:        unconfig
555         @ >include/config.h
556         @[ -z "$(findstring NETPHONE_config,$@)" ] || \
557                  { echo "#define CONFIG_NETPHONE_VERSION 1" >>include/config.h ; \
558                  }
559         @[ -z "$(findstring NETPHONE_V2_config,$@)" ] || \
560                  { echo "#define CONFIG_NETPHONE_VERSION 2" >>include/config.h ; \
561                  }
562         @./mkconfig -a $(call xtract_NETPHONE,$@) ppc mpc8xx netphone
563
564 xtract_NETTA = $(subst _SWAPHOOK,,$(subst _6412,,$(subst _ISDN,,$(subst _config,,$1))))
565
566 NETTA_ISDN_6412_SWAPHOOK_config \
567 NETTA_ISDN_SWAPHOOK_config \
568 NETTA_6412_SWAPHOOK_config \
569 NETTA_SWAPHOOK_config \
570 NETTA_ISDN_6412_config \
571 NETTA_ISDN_config \
572 NETTA_6412_config \
573 NETTA_config:           unconfig
574         @ >include/config.h
575         @[ -z "$(findstring ISDN_,$@)" ] || \
576                  { echo "#define CONFIG_NETTA_ISDN 1" >>include/config.h ; \
577                  }
578         @[ -n "$(findstring ISDN_,$@)" ] || \
579                  { echo "#undef CONFIG_NETTA_ISDN" >>include/config.h ; \
580                  }
581         @[ -z "$(findstring 6412_,$@)" ] || \
582                  { echo "#define CONFIG_NETTA_6412 1" >>include/config.h ; \
583                  }
584         @[ -n "$(findstring 6412_,$@)" ] || \
585                  { echo "#undef CONFIG_NETTA_6412" >>include/config.h ; \
586                  }
587         @[ -z "$(findstring SWAPHOOK_,$@)" ] || \
588                  { echo "#define CONFIG_NETTA_SWAPHOOK 1" >>include/config.h ; \
589                  }
590         @[ -n "$(findstring SWAPHOOK_,$@)" ] || \
591                  { echo "#undef CONFIG_NETTA_SWAPHOOK" >>include/config.h ; \
592                  }
593         @./mkconfig -a $(call xtract_NETTA,$@) ppc mpc8xx netta
594
595 xtract_NETTA2 = $(subst _V2,,$(subst _config,,$1))
596
597 NETTA2_V2_config \
598 NETTA2_config:          unconfig
599         @ >include/config.h
600         @[ -z "$(findstring NETTA2_config,$@)" ] || \
601                  { echo "#define CONFIG_NETTA2_VERSION 1" >>include/config.h ; \
602                  }
603         @[ -z "$(findstring NETTA2_V2_config,$@)" ] || \
604                  { echo "#define CONFIG_NETTA2_VERSION 2" >>include/config.h ; \
605                  }
606         @./mkconfig -a $(call xtract_NETTA2,$@) ppc mpc8xx netta2
607
608 NC650_config:   unconfig
609         @./mkconfig $(@:_config=) ppc mpc8xx nc650
610
611 NX823_config:           unconfig
612         @./mkconfig $(@:_config=) ppc mpc8xx nx823
613
614 pcu_e_config:           unconfig
615         @./mkconfig $(@:_config=) ppc mpc8xx pcu_e siemens
616
617 QS850_config:   unconfig
618         @./mkconfig $(@:_config=) ppc mpc8xx qs850 snmc
619
620 QS823_config:   unconfig
621         @./mkconfig $(@:_config=) ppc mpc8xx qs850 snmc
622
623 QS860T_config:  unconfig
624         @./mkconfig $(@:_config=) ppc mpc8xx qs860t snmc
625
626 quantum_config: unconfig
627         @./mkconfig $(@:_config=) ppc mpc8xx quantum
628
629 R360MPI_config: unconfig
630         @./mkconfig $(@:_config=) ppc mpc8xx r360mpi
631
632 RBC823_config:  unconfig
633         @./mkconfig $(@:_config=) ppc mpc8xx rbc823
634
635 RPXClassic_config:      unconfig
636         @./mkconfig $(@:_config=) ppc mpc8xx RPXClassic
637
638 RPXlite_config:         unconfig
639         @./mkconfig $(@:_config=) ppc mpc8xx RPXlite
640
641 RPXlite_DW_64_config            \
642 RPXlite_DW_LCD_config           \
643 RPXlite_DW_64_LCD_config        \
644 RPXlite_DW_NVRAM_config         \
645 RPXlite_DW_NVRAM_64_config      \
646 RPXlite_DW_NVRAM_LCD_config     \
647 RPXlite_DW_NVRAM_64_LCD_config  \
648 RPXlite_DW_config:         unconfig
649         @ >include/config.h
650         @[ -z "$(findstring _64,$@)" ] || \
651                 { echo "#define RPXlite_64MHz"          >>include/config.h ; \
652                   echo "... with 64MHz system clock ..."; \
653                 }
654         @[ -z "$(findstring _LCD,$@)" ] || \
655                 { echo "#define CONFIG_LCD"             >>include/config.h ; \
656                   echo "#define CONFIG_NEC_NL6448BC20"  >>include/config.h ; \
657                   echo "... with LCD display ..."; \
658                 }
659         @[ -z "$(findstring _NVRAM,$@)" ] || \
660                 { echo "#define  CFG_ENV_IS_IN_NVRAM"   >>include/config.h ; \
661                   echo "... with ENV in NVRAM ..."; \
662                 }
663         @./mkconfig -a RPXlite_DW ppc mpc8xx RPXlite_dw
664
665 rmu_config:     unconfig
666         @./mkconfig $(@:_config=) ppc mpc8xx rmu
667
668 RRvision_config:        unconfig
669         @./mkconfig $(@:_config=) ppc mpc8xx RRvision
670
671 RRvision_LCD_config:    unconfig
672         @echo "#define CONFIG_LCD" >include/config.h
673         @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h
674         @./mkconfig -a RRvision ppc mpc8xx RRvision
675
676 SM850_config    :       unconfig
677         @./mkconfig $(@:_config=) ppc mpc8xx tqm8xx
678
679 SPD823TS_config:        unconfig
680         @./mkconfig $(@:_config=) ppc mpc8xx spd8xx
681
682 stxxtc_config:  unconfig
683         @./mkconfig $(@:_config=) ppc mpc8xx stxxtc
684
685 svm_sc8xx_config:       unconfig
686         @ >include/config.h
687         @./mkconfig $(@:_config=) ppc mpc8xx svm_sc8xx
688
689 SXNI855T_config:        unconfig
690         @./mkconfig $(@:_config=) ppc mpc8xx sixnet
691
692 # EMK MPC8xx based modules
693 TOP860_config:          unconfig
694         @./mkconfig $(@:_config=) ppc mpc8xx top860 emk
695
696 # Play some tricks for configuration selection
697 # Only 855 and 860 boards may come with FEC
698 # and only 823 boards may have LCD support
699 xtract_8xx = $(subst _LCD,,$(subst _config,,$1))
700
701 FPS850L_config          \
702 FPS860L_config          \
703 NSCU_config             \
704 TQM823L_config          \
705 TQM823L_LCD_config      \
706 TQM850L_config          \
707 TQM855L_config          \
708 TQM860L_config          \
709 TQM862L_config          \
710 TQM823M_config          \
711 TQM850M_config          \
712 TQM855M_config          \
713 TQM860M_config          \
714 TQM862M_config          \
715 TQM866M_config:         unconfig
716         @ >include/config.h
717         @[ -z "$(findstring _LCD,$@)" ] || \
718                 { echo "#define CONFIG_LCD"             >>include/config.h ; \
719                   echo "#define CONFIG_NEC_NL6448BC20"  >>include/config.h ; \
720                   echo "... with LCD display" ; \
721                 }
722         @./mkconfig -a $(call xtract_8xx,$@) ppc mpc8xx tqm8xx
723
724 TTTech_config:  unconfig
725         @echo "#define CONFIG_LCD" >include/config.h
726         @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h
727         @./mkconfig -a TQM823L ppc mpc8xx tqm8xx
728
729 uc100_config    :       unconfig
730         @./mkconfig $(@:_config=) ppc mpc8xx uc100
731
732 v37_config:     unconfig
733         @echo "#define CONFIG_LCD" >include/config.h
734         @echo "#define CONFIG_SHARP_LQ084V1DG21" >>include/config.h
735         @./mkconfig $(@:_config=) ppc mpc8xx v37
736
737 wtk_config:     unconfig
738         @echo "#define CONFIG_LCD" >include/config.h
739         @echo "#define CONFIG_SHARP_LQ065T9DR51U" >>include/config.h
740         @./mkconfig -a TQM823L ppc mpc8xx tqm8xx
741
742 #########################################################################
743 ## PPC4xx Systems
744 #########################################################################
745 xtract_4xx = $(subst _25,,$(subst _33,,$(subst _BA,,$(subst _ME,,$(subst _HI,,$(subst _config,,$1))))))
746
747 ADCIOP_config:  unconfig
748         @./mkconfig $(@:_config=) ppc ppc4xx adciop esd
749
750 AP1000_config:unconfig
751         @./mkconfig $(@:_config=) ppc ppc4xx ap1000 amirix
752
753 APC405_config:  unconfig
754         @./mkconfig $(@:_config=) ppc ppc4xx apc405 esd
755
756 AR405_config:   unconfig
757         @./mkconfig $(@:_config=) ppc ppc4xx ar405 esd
758
759 ASH405_config:  unconfig
760         @./mkconfig $(@:_config=) ppc ppc4xx ash405 esd
761
762 bamboo_config:  unconfig
763         @./mkconfig $(@:_config=) ppc ppc4xx bamboo amcc
764
765 bubinga_config: unconfig
766         @./mkconfig $(@:_config=) ppc ppc4xx bubinga amcc
767
768 CANBT_config:   unconfig
769         @./mkconfig $(@:_config=) ppc ppc4xx canbt esd
770
771 CATcenter_config        \
772 CATcenter_25_config     \
773 CATcenter_33_config:    unconfig
774         @ echo "/* CATcenter uses PPChameleon Model ME */"  > include/config.h
775         @ echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 1" >> include/config.h
776         @[ -z "$(findstring _25,$@)" ] || \
777                 { echo "#define CONFIG_PPCHAMELEON_CLK_25" >>include/config.h ; \
778                   echo "SysClk = 25MHz" ; \
779                 }
780         @[ -z "$(findstring _33,$@)" ] || \
781                 { echo "#define CONFIG_PPCHAMELEON_CLK_33" >>include/config.h ; \
782                   echo "SysClk = 33MHz" ; \
783                 }
784         @./mkconfig -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave
785
786 CPCI2DP_config: unconfig
787         @./mkconfig $(@:_config=) ppc ppc4xx cpci2dp esd
788
789 CPCI405_config  \
790 CPCI4052_config \
791 CPCI405DT_config        \
792 CPCI405AB_config:       unconfig
793         @./mkconfig $(@:_config=) ppc ppc4xx cpci405 esd
794         @echo "BOARD_REVISION = $(@:_config=)"  >>include/config.mk
795
796 CPCI440_config: unconfig
797         @./mkconfig $(@:_config=) ppc ppc4xx cpci440 esd
798
799 CPCIISER4_config:       unconfig
800         @./mkconfig $(@:_config=) ppc ppc4xx cpciiser4 esd
801
802 CRAYL1_config:  unconfig
803         @./mkconfig $(@:_config=) ppc ppc4xx L1 cray
804
805 csb272_config:  unconfig
806         @./mkconfig $(@:_config=) ppc ppc4xx csb272
807
808 csb472_config:  unconfig
809         @./mkconfig $(@:_config=) ppc ppc4xx csb472
810
811 DASA_SIM_config: unconfig
812         @./mkconfig $(@:_config=) ppc ppc4xx dasa_sim esd
813
814 DP405_config:   unconfig
815         @./mkconfig $(@:_config=) ppc ppc4xx dp405 esd
816
817 DU405_config:   unconfig
818         @./mkconfig $(@:_config=) ppc ppc4xx du405 esd
819
820 ebony_config:   unconfig
821         @./mkconfig $(@:_config=) ppc ppc4xx ebony amcc
822
823 ERIC_config:    unconfig
824         @./mkconfig $(@:_config=) ppc ppc4xx eric
825
826 EXBITGEN_config:        unconfig
827         @./mkconfig $(@:_config=) ppc ppc4xx exbitgen
828
829 G2000_config:   unconfig
830         @./mkconfig $(@:_config=) ppc ppc4xx g2000
831
832 HH405_config:   unconfig
833         @./mkconfig $(@:_config=) ppc ppc4xx hh405 esd
834
835 HUB405_config:  unconfig
836         @./mkconfig $(@:_config=) ppc ppc4xx hub405 esd
837
838 JSE_config:     unconfig
839         @./mkconfig $(@:_config=) ppc ppc4xx jse
840
841 KAREF_config: unconfig
842         @./mkconfig $(@:_config=) ppc ppc4xx karef sandburst
843
844 luan_config:    unconfig
845         @./mkconfig $(@:_config=) ppc ppc4xx luan amcc
846
847 METROBOX_config: unconfig
848         @./mkconfig $(@:_config=) ppc ppc4xx metrobox sandburst
849
850 MIP405_config:  unconfig
851         @./mkconfig $(@:_config=) ppc ppc4xx mip405 mpl
852
853 MIP405T_config: unconfig
854         @echo "#define CONFIG_MIP405T" >include/config.h
855         @echo "Enable subset config for MIP405T"
856         @./mkconfig -a MIP405 ppc ppc4xx mip405 mpl
857
858 ML2_config:     unconfig
859         @./mkconfig $(@:_config=) ppc ppc4xx ml2
860
861 ml300_config:   unconfig
862         @./mkconfig $(@:_config=) ppc ppc4xx ml300 xilinx
863
864 ocotea_config:  unconfig
865         @./mkconfig $(@:_config=) ppc ppc4xx ocotea amcc
866
867 OCRTC_config            \
868 ORSG_config:    unconfig
869         @./mkconfig $(@:_config=) ppc ppc4xx ocrtc esd
870
871 p3p440_config:  unconfig
872         @./mkconfig $(@:_config=) ppc ppc4xx p3p440 prodrive
873
874 PCI405_config:  unconfig
875         @./mkconfig $(@:_config=) ppc ppc4xx pci405 esd
876
877 PIP405_config:  unconfig
878         @./mkconfig $(@:_config=) ppc ppc4xx pip405 mpl
879
880 PLU405_config:  unconfig
881         @./mkconfig $(@:_config=) ppc ppc4xx plu405 esd
882
883 PMC405_config:  unconfig
884         @./mkconfig $(@:_config=) ppc ppc4xx pmc405 esd
885
886 PPChameleonEVB_config           \
887 PPChameleonEVB_BA_25_config     \
888 PPChameleonEVB_ME_25_config     \
889 PPChameleonEVB_HI_25_config     \
890 PPChameleonEVB_BA_33_config     \
891 PPChameleonEVB_ME_33_config     \
892 PPChameleonEVB_HI_33_config:    unconfig
893         @ >include/config.h
894         @[ -z "$(findstring EVB_BA,$@)" ] || \
895                 { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 0" >>include/config.h ; \
896                   echo "... BASIC model" ; \
897                 }
898         @[ -z "$(findstring EVB_ME,$@)" ] || \
899                 { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 1" >>include/config.h ; \
900                   echo "... MEDIUM model" ; \
901                 }
902         @[ -z "$(findstring EVB_HI,$@)" ] || \
903                 { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 2" >>include/config.h ; \
904                   echo "... HIGH-END model" ; \
905                 }
906         @[ -z "$(findstring _25,$@)" ] || \
907                 { echo "#define CONFIG_PPCHAMELEON_CLK_25" >>include/config.h ; \
908                   echo "SysClk = 25MHz" ; \
909                 }
910         @[ -z "$(findstring _33,$@)" ] || \
911                 { echo "#define CONFIG_PPCHAMELEON_CLK_33" >>include/config.h ; \
912                   echo "SysClk = 33MHz" ; \
913                 }
914         @./mkconfig -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave
915
916 sbc405_config:  unconfig
917         @./mkconfig $(@:_config=) ppc ppc4xx sbc405
918
919 sycamore_config:        unconfig
920         @echo "Configuring for sycamore board as subset of walnut..."
921         @./mkconfig -a walnut ppc ppc4xx walnut amcc
922
923 VOH405_config:  unconfig
924         @./mkconfig $(@:_config=) ppc ppc4xx voh405 esd
925
926 VOM405_config:  unconfig
927         @./mkconfig $(@:_config=) ppc ppc4xx vom405 esd
928
929 CMS700_config:  unconfig
930         @./mkconfig $(@:_config=) ppc ppc4xx cms700 esd
931
932 W7OLMC_config   \
933 W7OLMG_config: unconfig
934         @./mkconfig $(@:_config=) ppc ppc4xx w7o
935
936 walnut_config: unconfig
937         @./mkconfig $(@:_config=) ppc ppc4xx walnut amcc
938
939 WUH405_config:  unconfig
940         @./mkconfig $(@:_config=) ppc ppc4xx wuh405 esd
941
942 XPEDITE1K_config:       unconfig
943         @./mkconfig $(@:_config=) ppc ppc4xx xpedite1k
944
945 yosemite_config:        unconfig
946         @./mkconfig $(@:_config=) ppc ppc4xx yosemite amcc
947
948 yellowstone_config:     unconfig
949         @./mkconfig $(@:_config=) ppc ppc4xx yellowstone amcc
950
951 #########################################################################
952 ## MPC8220 Systems
953 #########################################################################
954
955 Alaska8220_config       \
956 Yukon8220_config:       unconfig
957         @./mkconfig $(@:_config=) ppc mpc8220 alaska
958
959 sorcery_config:         unconfig
960         @./mkconfig $(@:_config=) ppc mpc8220 sorcery
961
962 #########################################################################
963 ## MPC824x Systems
964 #########################################################################
965 xtract_82xx = $(subst _BIGFLASH,,$(subst _ROMBOOT,,$(subst _L2,,$(subst _266MHz,,$(subst _300MHz,,$(subst _config,,$1))))))
966
967 A3000_config: unconfig
968         @./mkconfig $(@:_config=) ppc mpc824x a3000
969
970 barco_config: unconfig
971         @./mkconfig $(@:_config=) ppc mpc824x barco
972
973 BMW_config: unconfig
974         @./mkconfig $(@:_config=) ppc mpc824x bmw
975
976 CPC45_config    \
977 CPC45_ROMBOOT_config:   unconfig
978         @./mkconfig $(call xtract_82xx,$@) ppc mpc824x cpc45
979         @cd ./include ;                         \
980         if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
981                 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
982                 echo "... booting from 8-bit flash" ; \
983         else \
984                 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
985                 echo "... booting from 64-bit flash" ; \
986         fi; \
987         echo "export CONFIG_BOOT_ROM" >> config.mk;
988
989 CU824_config: unconfig
990         @./mkconfig $(@:_config=) ppc mpc824x cu824
991
992 debris_config: unconfig
993         @./mkconfig $(@:_config=) ppc mpc824x debris etin
994
995 eXalion_config: unconfig
996         @./mkconfig $(@:_config=) ppc mpc824x eXalion
997
998 HIDDEN_DRAGON_config: unconfig
999         @./mkconfig $(@:_config=) ppc mpc824x hidden_dragon
1000
1001 MOUSSE_config: unconfig
1002         @./mkconfig $(@:_config=) ppc mpc824x mousse
1003
1004 MUSENKI_config: unconfig
1005         @./mkconfig $(@:_config=) ppc mpc824x musenki
1006
1007 MVBLUE_config:  unconfig
1008         @./mkconfig $(@:_config=) ppc mpc824x mvblue
1009
1010 OXC_config: unconfig
1011         @./mkconfig $(@:_config=) ppc mpc824x oxc
1012
1013 PN62_config: unconfig
1014         @./mkconfig $(@:_config=) ppc mpc824x pn62
1015
1016 Sandpoint8240_config: unconfig
1017         @./mkconfig $(@:_config=) ppc mpc824x sandpoint
1018
1019 Sandpoint8245_config: unconfig
1020         @./mkconfig $(@:_config=) ppc mpc824x sandpoint
1021
1022 sbc8240_config: unconfig
1023         @./mkconfig $(@:_config=) ppc mpc824x sbc8240
1024
1025 SL8245_config: unconfig
1026         @./mkconfig $(@:_config=) ppc mpc824x sl8245
1027
1028 utx8245_config: unconfig
1029         @./mkconfig $(@:_config=) ppc mpc824x utx8245
1030
1031 #########################################################################
1032 ## MPC8260 Systems
1033 #########################################################################
1034
1035 atc_config:     unconfig
1036         @./mkconfig $(@:_config=) ppc mpc8260 atc
1037
1038 cogent_mpc8260_config:  unconfig
1039         @./mkconfig $(@:_config=) ppc mpc8260 cogent
1040
1041 CPU86_config    \
1042 CPU86_ROMBOOT_config: unconfig
1043         @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 cpu86
1044         @cd ./include ;                         \
1045         if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
1046                 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
1047                 echo "... booting from 8-bit flash" ; \
1048         else \
1049                 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
1050                 echo "... booting from 64-bit flash" ; \
1051         fi; \
1052         echo "export CONFIG_BOOT_ROM" >> config.mk;
1053
1054 CPU87_config    \
1055 CPU87_ROMBOOT_config: unconfig
1056         @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 cpu87
1057         @cd ./include ;                         \
1058         if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
1059                 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
1060                 echo "... booting from 8-bit flash" ; \
1061         else \
1062                 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
1063                 echo "... booting from 64-bit flash" ; \
1064         fi; \
1065         echo "export CONFIG_BOOT_ROM" >> config.mk;
1066
1067 ep8248_config   \
1068 ep8248E_config  :       unconfig
1069         @./mkconfig ep8248 ppc mpc8260 ep8248
1070
1071 ep8260_config:  unconfig
1072         @./mkconfig $(@:_config=) ppc mpc8260 ep8260
1073
1074 gw8260_config:  unconfig
1075         @./mkconfig $(@:_config=) ppc mpc8260 gw8260
1076
1077 hymod_config:   unconfig
1078         @./mkconfig $(@:_config=) ppc mpc8260 hymod
1079
1080 IDS8247_config: unconfig
1081         @./mkconfig $(@:_config=) ppc mpc8260 ids8247
1082
1083 IPHASE4539_config:      unconfig
1084         @./mkconfig $(@:_config=) ppc mpc8260 iphase4539
1085
1086 ISPAN_config            \
1087 ISPAN_REVB_config:      unconfig
1088         @if [ "$(findstring _REVB_,$@)" ] ; then \
1089                 echo "#define CFG_REV_B" > include/config.h ; \
1090         fi
1091         @./mkconfig -a ISPAN ppc mpc8260 ispan
1092
1093 MPC8260ADS_config       \
1094 MPC8260ADS_lowboot_config       \
1095 MPC8260ADS_33MHz_config \
1096 MPC8260ADS_33MHz_lowboot_config \
1097 MPC8260ADS_40MHz_config \
1098 MPC8260ADS_40MHz_lowboot_config \
1099 MPC8272ADS_config       \
1100 MPC8272ADS_lowboot_config       \
1101 PQ2FADS_config          \
1102 PQ2FADS_lowboot_config          \
1103 PQ2FADS-VR_config       \
1104 PQ2FADS-VR_lowboot_config       \
1105 PQ2FADS-ZU_config       \
1106 PQ2FADS-ZU_lowboot_config       \
1107 PQ2FADS-ZU_66MHz_config \
1108 PQ2FADS-ZU_66MHz_lowboot_config \
1109         :               unconfig
1110         $(if $(findstring PQ2FADS,$@), \
1111         @echo "#define CONFIG_ADSTYPE CFG_PQ2FADS" > include/config.h, \
1112         @echo "#define CONFIG_ADSTYPE CFG_"$(subst MPC,,$(word 1,$(subst _, ,$@))) > include/config.h)
1113         $(if $(findstring MHz,$@), \
1114         @echo "#define CONFIG_8260_CLKIN" $(subst MHz,,$(word 2,$(subst _, ,$@)))"000000" >> include/config.h, \
1115         $(if $(findstring VR,$@), \
1116         @echo "#define CONFIG_8260_CLKIN 66000000" >> include/config.h))
1117         @[ -z "$(findstring lowboot_,$@)" ] || \
1118                 { echo "TEXT_BASE = 0xFF800000" >board/mpc8260ads/config.tmp ; \
1119                   echo "... with lowboot configuration" ; \
1120                 }
1121         @./mkconfig -a MPC8260ADS ppc mpc8260 mpc8260ads
1122
1123 MPC8266ADS_config:      unconfig
1124         @./mkconfig $(@:_config=) ppc mpc8260 mpc8266ads
1125
1126 # PM825/PM826 default configuration:  small (= 8 MB) Flash / boot from 64-bit flash
1127 PM825_config    \
1128 PM825_ROMBOOT_config    \
1129 PM825_BIGFLASH_config   \
1130 PM825_ROMBOOT_BIGFLASH_config   \
1131 PM826_config    \
1132 PM826_ROMBOOT_config    \
1133 PM826_BIGFLASH_config   \
1134 PM826_ROMBOOT_BIGFLASH_config:  unconfig
1135         @if [ "$(findstring PM825_,$@)" ] ; then \
1136                 echo "#define CONFIG_PCI"       >include/config.h ; \
1137         else \
1138                 >include/config.h ; \
1139         fi
1140         @if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
1141                 echo "... booting from 8-bit flash" ; \
1142                 echo "#define CONFIG_BOOT_ROM" >>include/config.h ; \
1143                 echo "TEXT_BASE = 0xFF800000" >board/pm826/config.tmp ; \
1144                 if [ "$(findstring _BIGFLASH_,$@)" ] ; then \
1145                         echo "... with 32 MB Flash" ; \
1146                         echo "#define CONFIG_FLASH_32MB" >>include/config.h ; \
1147                 fi; \
1148         else \
1149                 echo "... booting from 64-bit flash" ; \
1150                 if [ "$(findstring _BIGFLASH_,$@)" ] ; then \
1151                         echo "... with 32 MB Flash" ; \
1152                         echo "#define CONFIG_FLASH_32MB" >>include/config.h ; \
1153                         echo "TEXT_BASE = 0x40000000" >board/pm826/config.tmp ; \
1154                 else \
1155                         echo "TEXT_BASE = 0xFF000000" >board/pm826/config.tmp ; \
1156                 fi; \
1157         fi
1158         @./mkconfig -a PM826 ppc mpc8260 pm826
1159
1160 PM828_config    \
1161 PM828_PCI_config        \
1162 PM828_ROMBOOT_config    \
1163 PM828_ROMBOOT_PCI_config:       unconfig
1164         @if [ -z "$(findstring _PCI_,$@)" ] ; then \
1165                 echo "#define CONFIG_PCI"  >>include/config.h ; \
1166                 echo "... with PCI enabled" ; \
1167         else \
1168                 >include/config.h ; \
1169         fi
1170         @if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
1171                 echo "... booting from 8-bit flash" ; \
1172                 echo "#define CONFIG_BOOT_ROM" >>include/config.h ; \
1173                 echo "TEXT_BASE = 0xFF800000" >board/pm826/config.tmp ; \
1174         fi
1175         @./mkconfig -a PM828 ppc mpc8260 pm828
1176
1177 ppmc8260_config:        unconfig
1178         @./mkconfig $(@:_config=) ppc mpc8260 ppmc8260
1179
1180 Rattler8248_config      \
1181 Rattler_config:         unconfig
1182         $(if $(findstring 8248,$@), \
1183         @echo "#define CONFIG_MPC8248" > include/config.h)
1184         @./mkconfig -a Rattler ppc mpc8260 rattler
1185
1186 RPXsuper_config:        unconfig
1187         @./mkconfig $(@:_config=) ppc mpc8260 rpxsuper
1188
1189 rsdproto_config:        unconfig
1190         @./mkconfig $(@:_config=) ppc mpc8260 rsdproto
1191
1192 sacsng_config:  unconfig
1193         @./mkconfig $(@:_config=) ppc mpc8260 sacsng
1194
1195 sbc8260_config: unconfig
1196         @./mkconfig $(@:_config=) ppc mpc8260 sbc8260
1197
1198 SCM_config:             unconfig
1199         @./mkconfig $(@:_config=) ppc mpc8260 SCM siemens
1200
1201 TQM8255_AA_config \
1202 TQM8260_AA_config \
1203 TQM8260_AB_config \
1204 TQM8260_AC_config \
1205 TQM8260_AD_config \
1206 TQM8260_AE_config \
1207 TQM8260_AF_config \
1208 TQM8260_AG_config \
1209 TQM8260_AH_config \
1210 TQM8265_AA_config:  unconfig
1211         @case "$@" in \
1212         TQM8255_AA_config) CTYPE=MPC8255; CFREQ=300; CACHE=no;  BMODE=8260;;  \
1213         TQM8260_AA_config) CTYPE=MPC8260; CFREQ=200; CACHE=no;  BMODE=8260;; \
1214         TQM8260_AB_config) CTYPE=MPC8260; CFREQ=200; CACHE=yes; BMODE=60x;;  \
1215         TQM8260_AC_config) CTYPE=MPC8260; CFREQ=200; CACHE=yes; BMODE=60x;;  \
1216         TQM8260_AD_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=60x;;  \
1217         TQM8260_AE_config) CTYPE=MPC8260; CFREQ=266; CACHE=no;  BMODE=8260;; \
1218         TQM8260_AF_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=60x;;  \
1219         TQM8260_AG_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=8260;; \
1220         TQM8260_AH_config) CTYPE=MPC8260; CFREQ=300; CACHE=yes; BMODE=60x;;  \
1221         TQM8265_AA_config) CTYPE=MPC8265; CFREQ=300; CACHE=no;  BMODE=60x;;  \
1222         esac; \
1223         >include/config.h ; \
1224         if [ "$${CTYPE}" != "MPC8260" ] ; then \
1225                 echo "#define CONFIG_$${CTYPE}" >>include/config.h ; \
1226         fi; \
1227         echo "#define CONFIG_$${CFREQ}MHz"      >>include/config.h ; \
1228         echo "... with $${CFREQ}MHz system clock" ; \
1229         if [ "$${CACHE}" == "yes" ] ; then \
1230                 echo "#define CONFIG_L2_CACHE"  >>include/config.h ; \
1231                 echo "... with L2 Cache support" ; \
1232         else \
1233                 echo "#undef CONFIG_L2_CACHE"   >>include/config.h ; \
1234                 echo "... without L2 Cache support" ; \
1235         fi; \
1236         if [ "$${BMODE}" == "60x" ] ; then \
1237                 echo "#define CONFIG_BUSMODE_60x" >>include/config.h ; \
1238                 echo "... with 60x Bus Mode" ; \
1239         else \
1240                 echo "#undef CONFIG_BUSMODE_60x"  >>include/config.h ; \
1241                 echo "... without 60x Bus Mode" ; \
1242         fi
1243         @./mkconfig -a TQM8260 ppc mpc8260 tqm8260
1244
1245 VoVPN-GW_66MHz_config   \
1246 VoVPN-GW_100MHz_config:         unconfig
1247         @echo "#define CONFIG_CLKIN_$(word 2,$(subst _, ,$@))" > include/config.h
1248         @./mkconfig -a VoVPN-GW ppc mpc8260 vovpn-gw funkwerk
1249
1250 ZPC1900_config: unconfig
1251         @./mkconfig $(@:_config=) ppc mpc8260 zpc1900
1252
1253 #========================================================================
1254 # M68K
1255 #========================================================================
1256 #########################################################################
1257 ## Coldfire
1258 #########################################################################
1259
1260 cobra5272_config :              unconfig
1261         @./mkconfig $(@:_config=) m68k mcf52x2 cobra5272
1262
1263 M5272C3_config :                unconfig
1264         @./mkconfig $(@:_config=) m68k mcf52x2 m5272c3
1265
1266 M5282EVB_config :               unconfig
1267         @./mkconfig $(@:_config=) m68k mcf52x2 m5282evb
1268
1269 TASREG_config :         unconfig
1270         @./mkconfig $(@:_config=) m68k mcf52x2 tasreg esd
1271
1272 #########################################################################
1273 ## MPC83xx Systems
1274 #########################################################################
1275
1276 MPC8349ADS_config:      unconfig
1277         @./mkconfig $(@:_config=) ppc mpc83xx mpc8349ads
1278
1279 TQM834x_config: unconfig
1280         @./mkconfig $(@:_config=) ppc mpc83xx tqm834x
1281
1282 #########################################################################
1283 ## MPC85xx Systems
1284 #########################################################################
1285
1286 MPC8540ADS_config:      unconfig
1287         @./mkconfig $(@:_config=) ppc mpc85xx mpc8540ads
1288
1289 MPC8540EVAL_config \
1290 MPC8540EVAL_33_config \
1291 MPC8540EVAL_66_config \
1292 MPC8540EVAL_33_slave_config \
1293 MPC8540EVAL_66_slave_config:      unconfig
1294         @echo "" >include/config.h ; \
1295         if [ "$(findstring _33_,$@)" ] ; then \
1296                 echo -n "... 33 MHz PCI" ; \
1297         else \
1298                 echo "#define CONFIG_SYSCLK_66M" >>include/config.h ; \
1299                 echo -n "... 66 MHz PCI" ; \
1300         fi ; \
1301         if [ "$(findstring _slave_,$@)" ] ; then \
1302                 echo "#define CONFIG_PCI_SLAVE" >>include/config.h ; \
1303                 echo " slave" ; \
1304         else \
1305                 echo " host" ; \
1306         fi
1307         @./mkconfig -a MPC8540EVAL ppc mpc85xx mpc8540eval
1308
1309 MPC8560ADS_config:      unconfig
1310         @./mkconfig $(@:_config=) ppc mpc85xx mpc8560ads
1311
1312 MPC8541CDS_config:      unconfig
1313         @./mkconfig $(@:_config=) ppc mpc85xx mpc8541cds cds
1314
1315 MPC8548CDS_config:      unconfig
1316         @./mkconfig $(@:_config=) ppc mpc85xx mpc8548cds cds
1317
1318 MPC8555CDS_config:      unconfig
1319         @./mkconfig $(@:_config=) ppc mpc85xx mpc8555cds cds
1320
1321 PM854_config:   unconfig
1322         @./mkconfig $(@:_config=) ppc mpc85xx pm854
1323
1324 PM856_config:   unconfig
1325         @./mkconfig $(@:_config=) ppc mpc85xx pm856
1326
1327 sbc8540_config \
1328 sbc8540_33_config \
1329 sbc8540_66_config:      unconfig
1330         @if [ "$(findstring _66_,$@)" ] ; then \
1331                 echo "#define CONFIG_PCI_66"    >>include/config.h ; \
1332                 echo "... 66 MHz PCI" ; \
1333         else \
1334                 >include/config.h ; \
1335                 echo "... 33 MHz PCI" ; \
1336         fi
1337         @./mkconfig -a SBC8540 ppc mpc85xx sbc8560
1338
1339 sbc8560_config \
1340 sbc8560_33_config \
1341 sbc8560_66_config:      unconfig
1342         @if [ "$(findstring _66_,$@)" ] ; then \
1343                 echo "#define CONFIG_PCI_66"    >>include/config.h ; \
1344                 echo "... 66 MHz PCI" ; \
1345         else \
1346                 >include/config.h ; \
1347                 echo "... 33 MHz PCI" ; \
1348         fi
1349         @./mkconfig -a sbc8560 ppc mpc85xx sbc8560
1350
1351 stxgp3_config:          unconfig
1352         @./mkconfig $(@:_config=) ppc mpc85xx stxgp3
1353
1354 TQM8540_config          \
1355 TQM8541_config          \
1356 TQM8555_config          \
1357 TQM8560_config:         unconfig
1358         @CTYPE=$(subst TQM,,$(@:_config=)); \
1359         >include/config.h ; \
1360         echo "... TQM"$${CTYPE}; \
1361         echo "#define CONFIG_MPC$${CTYPE}">>include/config.h; \
1362         echo "#define CONFIG_TQM$${CTYPE}">>include/config.h; \
1363         echo "#define CONFIG_HOSTNAME tqm$${CTYPE}">>include/config.h; \
1364         echo "#define CONFIG_BOARDNAME \"TQM$${CTYPE}\"">>include/config.h; \
1365         echo "#define CFG_BOOTFILE \"bootfile=/tftpboot/tqm$${CTYPE}/uImage\0\"">>include/config.h
1366         @./mkconfig -a TQM85xx ppc mpc85xx tqm85xx
1367
1368 #########################################################################
1369 ## 74xx/7xx Systems
1370 #########################################################################
1371
1372 AmigaOneG3SE_config:    unconfig
1373         @./mkconfig $(@:_config=) ppc 74xx_7xx AmigaOneG3SE MAI
1374
1375 BAB7xx_config: unconfig
1376         @./mkconfig $(@:_config=) ppc 74xx_7xx bab7xx eltec
1377
1378 CPCI750_config:        unconfig
1379         @./mkconfig CPCI750 ppc 74xx_7xx cpci750 esd
1380
1381 DB64360_config:  unconfig
1382         @./mkconfig DB64360 ppc 74xx_7xx db64360 Marvell
1383
1384 DB64460_config:  unconfig
1385         @./mkconfig DB64460 ppc 74xx_7xx db64460 Marvell
1386
1387 ELPPC_config: unconfig
1388         @./mkconfig $(@:_config=) ppc 74xx_7xx elppc eltec
1389
1390 EVB64260_config \
1391 EVB64260_750CX_config:  unconfig
1392         @./mkconfig EVB64260 ppc 74xx_7xx evb64260
1393
1394 P3G4_config: unconfig
1395         @./mkconfig $(@:_config=) ppc 74xx_7xx evb64260
1396
1397 PCIPPC2_config \
1398 PCIPPC6_config: unconfig
1399         @./mkconfig $(@:_config=) ppc 74xx_7xx pcippc2
1400
1401 ZUMA_config:    unconfig
1402         @./mkconfig $(@:_config=) ppc 74xx_7xx evb64260
1403
1404 #========================================================================
1405 # ARM
1406 #========================================================================
1407 #########################################################################
1408 ## StrongARM Systems
1409 #########################################################################
1410
1411 assabet_config  :       unconfig
1412         @./mkconfig $(@:_config=) arm sa1100 assabet
1413
1414 dnp1110_config  :       unconfig
1415         @./mkconfig $(@:_config=) arm sa1100 dnp1110
1416
1417 gcplus_config   :       unconfig
1418         @./mkconfig $(@:_config=) arm sa1100 gcplus
1419
1420 lart_config     :       unconfig
1421         @./mkconfig $(@:_config=) arm sa1100 lart
1422
1423 shannon_config  :       unconfig
1424         @./mkconfig $(@:_config=) arm sa1100 shannon
1425
1426 #########################################################################
1427 ## ARM92xT Systems
1428 #########################################################################
1429
1430 xtract_trab = $(subst _bigram,,$(subst _bigflash,,$(subst _old,,$(subst _config,,$1))))
1431
1432 xtract_omap1610xxx = $(subst _cs0boot,,$(subst _cs3boot,,$(subst _cs_autoboot,,$(subst _config,,$1))))
1433
1434 xtract_omap730p2 = $(subst _cs0boot,,$(subst _cs3boot,, $(subst _config,,$1)))
1435
1436 at91rm9200dk_config     :       unconfig
1437         @./mkconfig $(@:_config=) arm arm920t at91rm9200dk NULL at91rm9200
1438
1439 cmc_pu2_config  :       unconfig
1440         @./mkconfig $(@:_config=) arm arm920t cmc_pu2 NULL at91rm9200
1441
1442 csb637_config   :       unconfig
1443         @./mkconfig $(@:_config=) arm arm920t csb637 NULL at91rm9200
1444
1445 mp2usb_config   :       unconfig
1446         @./mkconfig $(@:_config=) arm arm920t mp2usb NULL at91rm9200
1447
1448
1449 ########################################################################
1450 ## ARM Integrator boards - see doc/README-integrator for more info.
1451 integratorap_config     \
1452 ap_config               \
1453 ap966_config            \
1454 ap922_config            \
1455 ap922_XA10_config       \
1456 ap7_config              \
1457 ap720t_config           \
1458 ap920t_config           \
1459 ap926ejs_config         \
1460 ap946es_config: unconfig
1461         @board/integratorap/split_by_variant.sh $@
1462
1463 integratorcp_config     \
1464 cp_config               \
1465 cp920t_config           \
1466 cp926ejs_config         \
1467 cp946es_config          \
1468 cp1136_config           \
1469 cp966_config            \
1470 cp922_config            \
1471 cp922_XA10_config       \
1472 cp1026_config: unconfig
1473         @board/integratorcp/split_by_variant.sh $@
1474
1475 kb9202_config   :       unconfig
1476         @./mkconfig $(@:_config=) arm arm920t kb9202 NULL at91rm9200
1477
1478 lpd7a400_config \
1479 lpd7a404_config:        unconfig
1480         @./mkconfig $(@:_config=) arm lh7a40x lpd7a40x
1481
1482 mx1ads_config   :       unconfig
1483         @./mkconfig $(@:_config=) arm arm920t mx1ads NULL imx
1484
1485 mx1fs2_config   :       unconfig
1486         @./mkconfig $(@:_config=) arm arm920t mx1fs2 NULL imx
1487
1488 omap1510inn_config :    unconfig
1489         @./mkconfig $(@:_config=) arm arm925t omap1510inn
1490
1491 omap5912osk_config :    unconfig
1492         @./mkconfig $(@:_config=) arm arm926ejs omap5912osk
1493
1494 omap1610inn_config \
1495 omap1610inn_cs0boot_config \
1496 omap1610inn_cs3boot_config \
1497 omap1610inn_cs_autoboot_config \
1498 omap1610h2_config \
1499 omap1610h2_cs0boot_config \
1500 omap1610h2_cs3boot_config \
1501 omap1610h2_cs_autoboot_config:  unconfig
1502         @if [ "$(findstring _cs0boot_, $@)" ] ; then \
1503                 echo "#define CONFIG_CS0_BOOT" >> ./include/config.h ; \
1504                 echo "... configured for CS0 boot"; \
1505         elif [ "$(findstring _cs_autoboot_, $@)" ] ; then \
1506                 echo "#define CONFIG_CS_AUTOBOOT" >> ./include/config.h ; \
1507                 echo "... configured for CS_AUTO boot"; \
1508         else \
1509                 echo "#define CONFIG_CS3_BOOT" >> ./include/config.h ; \
1510                 echo "... configured for CS3 boot"; \
1511         fi;
1512         @./mkconfig -a $(call xtract_omap1610xxx,$@) arm arm926ejs omap1610inn
1513
1514 omap730p2_config \
1515 omap730p2_cs0boot_config \
1516 omap730p2_cs3boot_config :      unconfig
1517         @if [ "$(findstring _cs0boot_, $@)" ] ; then \
1518                 echo "#define CONFIG_CS0_BOOT" >> ./include/config.h ; \
1519                 echo "... configured for CS0 boot"; \
1520         else \
1521                 echo "#define CONFIG_CS3_BOOT" >> ./include/config.h ; \
1522                 echo "... configured for CS3 boot"; \
1523         fi;
1524         @./mkconfig -a $(call xtract_omap730p2,$@) arm arm926ejs omap730p2
1525
1526 scb9328_config  :       unconfig
1527         @./mkconfig $(@:_config=) arm arm920t scb9328 NULL imx
1528
1529 smdk2400_config :       unconfig
1530         @./mkconfig $(@:_config=) arm arm920t smdk2400 NULL s3c24x0
1531
1532 smdk2410_config :       unconfig
1533         @./mkconfig $(@:_config=) arm arm920t smdk2410 NULL s3c24x0
1534
1535 SX1_config :            unconfig
1536         @./mkconfig $(@:_config=) arm arm925t sx1
1537
1538 # TRAB default configuration:   8 MB Flash, 32 MB RAM
1539 trab_config \
1540 trab_bigram_config \
1541 trab_bigflash_config \
1542 trab_old_config:        unconfig
1543         @ >include/config.h
1544         @[ -z "$(findstring _bigram,$@)" ] || \
1545                 { echo "#define CONFIG_FLASH_8MB"  >>include/config.h ; \
1546                   echo "#define CONFIG_RAM_32MB"   >>include/config.h ; \
1547                   echo "... with 8 MB Flash, 32 MB RAM" ; \
1548                 }
1549         @[ -z "$(findstring _bigflash,$@)" ] || \
1550                 { echo "#define CONFIG_FLASH_16MB" >>include/config.h ; \
1551                   echo "#define CONFIG_RAM_16MB"   >>include/config.h ; \
1552                   echo "... with 16 MB Flash, 16 MB RAM" ; \
1553                   echo "TEXT_BASE = 0x0CF40000" >board/trab/config.tmp ; \
1554                 }
1555         @[ -z "$(findstring _old,$@)" ] || \
1556                 { echo "#define CONFIG_FLASH_8MB"  >>include/config.h ; \
1557                   echo "#define CONFIG_RAM_16MB"   >>include/config.h ; \
1558                   echo "... with 8 MB Flash, 16 MB RAM" ; \
1559                   echo "TEXT_BASE = 0x0CF40000" >board/trab/config.tmp ; \
1560                 }
1561         @./mkconfig -a $(call xtract_trab,$@) arm arm920t trab NULL s3c24x0
1562
1563 VCMA9_config    :       unconfig
1564         @./mkconfig $(@:_config=) arm arm920t vcma9 mpl s3c24x0
1565
1566 #========================================================================
1567 # ARM supplied Versatile development boards
1568 #========================================================================
1569 versatile_config        \
1570 versatileab_config      \
1571 versatilepb_config :    unconfig
1572         @board/versatile/split_by_variant.sh $@
1573
1574 voiceblue_smallflash_config     \
1575 voiceblue_config:       unconfig
1576         @if [ "$(findstring _smallflash_,$@)" ] ; then \
1577                 echo "... boot from lower flash bank" ; \
1578                 echo "#define VOICEBLUE_SMALL_FLASH" >>include/config.h ; \
1579                 echo "VOICEBLUE_SMALL_FLASH=y" >board/voiceblue/config.tmp ; \
1580         else \
1581                 echo "... boot from upper flash bank" ; \
1582                 >include/config.h ; \
1583                 echo "VOICEBLUE_SMALL_FLASH=n" >board/voiceblue/config.tmp ; \
1584         fi
1585         @./mkconfig -a voiceblue arm arm925t voiceblue
1586
1587 cm4008_config   :       unconfig
1588         @./mkconfig $(@:_config=) arm arm920t cm4008 NULL ks8695
1589
1590 cm41xx_config   :       unconfig
1591         @./mkconfig $(@:_config=) arm arm920t cm41xx NULL ks8695
1592
1593 #########################################################################
1594 ## S3C44B0 Systems
1595 #########################################################################
1596
1597 B2_config       :       unconfig
1598         @./mkconfig $(@:_config=) arm s3c44b0 B2 dave
1599
1600 #########################################################################
1601 ## ARM720T Systems
1602 #########################################################################
1603
1604 armadillo_config:       unconfig
1605         @./mkconfig $(@:_config=) arm arm720t armadillo
1606
1607 ep7312_config   :       unconfig
1608         @./mkconfig $(@:_config=) arm arm720t ep7312
1609
1610 impa7_config    :       unconfig
1611         @./mkconfig $(@:_config=) arm arm720t impa7
1612
1613 modnet50_config :       unconfig
1614         @./mkconfig $(@:_config=) arm arm720t modnet50
1615
1616 evb4510_config :        unconfig
1617         @./mkconfig $(@:_config=) arm arm720t evb4510
1618
1619 #########################################################################
1620 ## XScale Systems
1621 #########################################################################
1622
1623 adsvix_config   :       unconfig
1624         @./mkconfig $(@:_config=) arm pxa adsvix
1625
1626 cerf250_config :        unconfig
1627         @./mkconfig $(@:_config=) arm pxa cerf250
1628
1629 cradle_config   :       unconfig
1630         @./mkconfig $(@:_config=) arm pxa cradle
1631
1632 csb226_config   :       unconfig
1633         @./mkconfig $(@:_config=) arm pxa csb226
1634
1635 innokom_config  :       unconfig
1636         @./mkconfig $(@:_config=) arm pxa innokom
1637
1638 ixdp425_config  :       unconfig
1639         @./mkconfig $(@:_config=) arm ixp ixdp425
1640
1641 lubbock_config  :       unconfig
1642         @./mkconfig $(@:_config=) arm pxa lubbock
1643
1644 logodl_config   :       unconfig
1645         @./mkconfig $(@:_config=) arm pxa logodl
1646
1647 pxa255_idp_config:      unconfig
1648         @./mkconfig $(@:_config=) arm pxa pxa255_idp
1649
1650 wepep250_config :       unconfig
1651         @./mkconfig $(@:_config=) arm pxa wepep250
1652
1653 xaeniax_config  :       unconfig
1654         @./mkconfig $(@:_config=) arm pxa xaeniax
1655
1656 xm250_config    :       unconfig
1657         @./mkconfig $(@:_config=) arm pxa xm250
1658
1659 xsengine_config :       unconfig
1660         @./mkconfig $(@:_config=) arm pxa xsengine
1661
1662 #########################################################################
1663 ## ARM1136 Systems
1664 #########################################################################
1665 omap2420h4_config :    unconfig
1666         @./mkconfig $(@:_config=) arm arm1136 omap2420h4
1667
1668 #========================================================================
1669 # i386
1670 #========================================================================
1671 #########################################################################
1672 ## AMD SC520 CDP
1673 #########################################################################
1674 sc520_cdp_config        :       unconfig
1675         @./mkconfig $(@:_config=) i386 i386 sc520_cdp
1676
1677 sc520_spunk_config      :       unconfig
1678         @./mkconfig $(@:_config=) i386 i386 sc520_spunk
1679
1680 sc520_spunk_rel_config  :       unconfig
1681         @./mkconfig $(@:_config=) i386 i386 sc520_spunk
1682
1683 #========================================================================
1684 # MIPS
1685 #========================================================================
1686 #########################################################################
1687 ## MIPS32 4Kc
1688 #########################################################################
1689
1690 xtract_incaip = $(subst _100MHz,,$(subst _133MHz,,$(subst _150MHz,,$(subst _config,,$1))))
1691
1692 incaip_100MHz_config    \
1693 incaip_133MHz_config    \
1694 incaip_150MHz_config    \
1695 incaip_config: unconfig
1696         @ >include/config.h
1697         @[ -z "$(findstring _100MHz,$@)" ] || \
1698                 { echo "#define CPU_CLOCK_RATE 100000000" >>include/config.h ; \
1699                   echo "... with 100MHz system clock" ; \
1700                 }
1701         @[ -z "$(findstring _133MHz,$@)" ] || \
1702                 { echo "#define CPU_CLOCK_RATE 133000000" >>include/config.h ; \
1703                   echo "... with 133MHz system clock" ; \
1704                 }
1705         @[ -z "$(findstring _150MHz,$@)" ] || \
1706                 { echo "#define CPU_CLOCK_RATE 150000000" >>include/config.h ; \
1707                   echo "... with 150MHz system clock" ; \
1708                 }
1709         @./mkconfig -a $(call xtract_incaip,$@) mips mips incaip
1710
1711 tb0229_config: unconfig
1712         @./mkconfig $(@:_config=) mips mips tb0229
1713
1714 #########################################################################
1715 ## MIPS32 AU1X00
1716 #########################################################################
1717 dbau1000_config         :       unconfig
1718         @ >include/config.h
1719         @echo "#define CONFIG_DBAU1000 1" >>include/config.h
1720         @./mkconfig -a dbau1x00 mips mips dbau1x00
1721
1722 dbau1100_config         :       unconfig
1723         @ >include/config.h
1724         @echo "#define CONFIG_DBAU1100 1" >>include/config.h
1725         @./mkconfig -a dbau1x00 mips mips dbau1x00
1726
1727 dbau1500_config         :       unconfig
1728         @ >include/config.h
1729         @echo "#define CONFIG_DBAU1500 1" >>include/config.h
1730         @./mkconfig -a dbau1x00 mips mips dbau1x00
1731
1732 dbau1550_config         :       unconfig
1733         @ >include/config.h
1734         @echo "#define CONFIG_DBAU1550 1" >>include/config.h
1735         @./mkconfig -a dbau1x00 mips mips dbau1x00
1736
1737 dbau1550_el_config      :       unconfig
1738         @ >include/config.h
1739         @echo "#define CONFIG_DBAU1550 1" >>include/config.h
1740         @./mkconfig -a dbau1x00 mips mips dbau1x00
1741
1742 pb1000_config           :       unconfig
1743         @ >include/config.h
1744         @echo "#define CONFIG_PB1000 1" >>include/config.h
1745         @./mkconfig -a pb1x00 mips mips pb1x00
1746
1747 #########################################################################
1748 ## MIPS64 5Kc
1749 #########################################################################
1750
1751 purple_config :         unconfig
1752         @./mkconfig $(@:_config=) mips mips purple
1753
1754 #========================================================================
1755 # Nios
1756 #========================================================================
1757 #########################################################################
1758 ## Nios32
1759 #########################################################################
1760
1761 DK1C20_safe_32_config           \
1762 DK1C20_standard_32_config       \
1763 DK1C20_config:  unconfig
1764         @ >include/config.h
1765         @[ -z "$(findstring _safe_32,$@)" ] || \
1766                 { echo "#define CONFIG_NIOS_SAFE_32 1" >>include/config.h ; \
1767                   echo "... NIOS 'safe_32' configuration" ; \
1768                 }
1769         @[ -z "$(findstring _standard_32,$@)" ] || \
1770                 { echo "#define CONFIG_NIOS_STANDARD_32 1" >>include/config.h ; \
1771                   echo "... NIOS 'standard_32' configuration" ; \
1772                 }
1773         @[ -z "$(findstring DK1C20_config,$@)" ] || \
1774                 { echo "#define CONFIG_NIOS_STANDARD_32 1" >>include/config.h ; \
1775                   echo "... NIOS 'standard_32' configuration (DEFAULT)" ; \
1776                 }
1777         @./mkconfig -a DK1C20 nios nios dk1c20 altera
1778
1779 DK1S10_safe_32_config           \
1780 DK1S10_standard_32_config       \
1781 DK1S10_mtx_ldk_20_config        \
1782 DK1S10_config:  unconfig
1783         @ >include/config.h
1784         @[ -z "$(findstring _safe_32,$@)" ] || \
1785                 { echo "#define CONFIG_NIOS_SAFE_32 1" >>include/config.h ; \
1786                   echo "... NIOS 'safe_32' configuration" ; \
1787                 }
1788         @[ -z "$(findstring _standard_32,$@)" ] || \
1789                 { echo "#define CONFIG_NIOS_STANDARD_32 1" >>include/config.h ; \
1790                   echo "... NIOS 'standard_32' configuration" ; \
1791                 }
1792         @[ -z "$(findstring _mtx_ldk_20,$@)" ] || \
1793                 { echo "#define CONFIG_NIOS_MTX_LDK_20 1" >>include/config.h ; \
1794                   echo "... NIOS 'mtx_ldk_20' configuration" ; \
1795                 }
1796         @[ -z "$(findstring DK1S10_config,$@)" ] || \
1797                 { echo "#define CONFIG_NIOS_STANDARD_32 1" >>include/config.h ; \
1798                   echo "... NIOS 'standard_32' configuration (DEFAULT)" ; \
1799                 }
1800         @./mkconfig -a DK1S10 nios nios dk1s10 altera
1801
1802 ADNPESC1_DNPEVA2_base_32_config \
1803 ADNPESC1_base_32_config         \
1804 ADNPESC1_config: unconfig
1805         @ >include/config.h
1806         @[ -z "$(findstring _DNPEVA2,$@)" ] || \
1807                 { echo "#define CONFIG_DNPEVA2 1" >>include/config.h ; \
1808                   echo "... DNP/EVA2 configuration" ; \
1809                 }
1810         @[ -z "$(findstring _base_32,$@)" ] || \
1811                 { echo "#define CONFIG_NIOS_BASE_32 1" >>include/config.h ; \
1812                   echo "... NIOS 'base_32' configuration" ; \
1813                 }
1814         @[ -z "$(findstring ADNPESC1_config,$@)" ] || \
1815                 { echo "#define CONFIG_NIOS_BASE_32 1" >>include/config.h ; \
1816                   echo "... NIOS 'base_32' configuration (DEFAULT)" ; \
1817                 }
1818         @./mkconfig -a ADNPESC1 nios nios adnpesc1 ssv
1819
1820 #########################################################################
1821 ## Nios-II
1822 #########################################################################
1823
1824 PK1C20_config : unconfig
1825         @./mkconfig  PK1C20 nios2 nios2 pk1c20 psyent
1826
1827 PCI5441_config : unconfig
1828         @./mkconfig  PCI5441 nios2 nios2 pci5441 psyent
1829
1830 #========================================================================
1831 # MicroBlaze
1832 #========================================================================
1833 #########################################################################
1834 ## Microblaze
1835 #########################################################################
1836 suzaku_config:  unconfig
1837         @ >include/config.h
1838         @echo "#define CONFIG_SUZAKU 1" >> include/config.h
1839         @./mkconfig -a $(@:_config=) microblaze microblaze suzaku AtmarkTechno
1840
1841 #########################################################################
1842 #########################################################################
1843
1844 clean:
1845         find . -type f \
1846                 \( -name 'core' -o -name '*.bak' -o -name '*~' \
1847                 -o -name '*.o'  -o -name '*.a'  \) -print \
1848                 | xargs rm -f
1849         rm -f examples/hello_world examples/timer \
1850               examples/eepro100_eeprom examples/sched \
1851               examples/mem_to_mem_idma2intr examples/82559_eeprom \
1852               examples/test_burst
1853         rm -f tools/img2srec tools/mkimage tools/envcrc tools/gen_eth_addr
1854         rm -f tools/mpc86x_clk tools/ncb
1855         rm -f tools/easylogo/easylogo tools/bmp_logo
1856         rm -f tools/gdb/astest tools/gdb/gdbcont tools/gdb/gdbsend
1857         rm -f tools/env/fw_printenv tools/env/fw_setenv
1858         rm -f board/cray/L1/bootscript.c board/cray/L1/bootscript.image
1859         rm -f board/trab/trab_fkt board/voiceblue/eeprom
1860         rm -f board/integratorap/u-boot.lds board/integratorcp/u-boot.lds
1861
1862 clobber:        clean
1863         find . -type f \( -name .depend \
1864                 -o -name '*.srec' -o -name '*.bin' -o -name u-boot.img \) \
1865                 -print0 \
1866                 | xargs -0 rm -f
1867         rm -f $(OBJS) *.bak tags TAGS include/version_autogenerated.h
1868         rm -fr *.*~
1869         rm -f u-boot u-boot.map u-boot.hex $(ALL)
1870         rm -f tools/crc32.c tools/environment.c tools/env/crc32.c
1871         rm -f tools/inca-swap-bytes cpu/mpc824x/bedbug_603e.c
1872         rm -f include/asm/proc include/asm/arch include/asm
1873
1874 mrproper \
1875 distclean:      clobber unconfig
1876
1877 backup:
1878         F=`basename $(TOPDIR)` ; cd .. ; \
1879         gtar --force-local -zcvf `date "+$$F-%Y-%m-%d-%T.tar.gz"` $$F
1880
1881 #########################################################################