]> www.infradead.org Git - users/rw/ppcboot.git/commitdiff
Moved board config files into separate directory;
authorwdenk <wdenk>
Tue, 16 Jul 2002 21:29:14 +0000 (21:29 +0000)
committerwdenk <wdenk>
Tue, 16 Jul 2002 21:29:14 +0000 (21:29 +0000)
simplified Makefile by using external shell script
prepare for other architectures in include/asm-* (Linux-like)

110 files changed:
CHANGELOG
Makefile
board/mpl/mip405/init.S
board/mpl/pip405/init.S
include/asm-ppc/8xx_immap.h [moved from include/asm/8xx_immap.h with 100% similarity]
include/asm-ppc/atomic.h [moved from include/asm/atomic.h with 100% similarity]
include/asm-ppc/bitops.h [moved from include/asm/bitops.h with 100% similarity]
include/asm-ppc/byteorder.h [moved from include/asm/byteorder.h with 100% similarity]
include/asm-ppc/cache.h [moved from include/asm/cache.h with 100% similarity]
include/asm-ppc/cpm_8260.h [moved from include/asm/cpm_8260.h with 100% similarity]
include/asm-ppc/errno.h [moved from include/asm/errno.h with 100% similarity]
include/asm-ppc/hymod.h [moved from include/asm/hymod.h with 100% similarity]
include/asm-ppc/immap_8260.h [moved from include/asm/immap_8260.h with 100% similarity]
include/asm-ppc/io.h [moved from include/asm/io.h with 100% similarity, mode: 0644]
include/asm-ppc/iopin_8260.h [moved from include/asm/iopin_8260.h with 100% similarity]
include/asm-ppc/mc146818rtc.h [moved from include/asm/mc146818rtc.h with 100% similarity, mode: 0644]
include/asm-ppc/mmu.h [moved from include/asm/mmu.h with 100% similarity]
include/asm-ppc/pci_io.h [moved from include/asm/pci_io.h with 100% similarity, mode: 0644]
include/asm-ppc/pnp.h [moved from include/asm/pnp.h with 100% similarity]
include/asm-ppc/posix_types.h [moved from include/asm/posix_types.h with 100% similarity]
include/asm-ppc/processor.h [moved from include/asm/processor.h with 100% similarity]
include/asm-ppc/ptrace.h [moved from include/asm/ptrace.h with 100% similarity]
include/asm-ppc/residual.h [moved from include/asm/residual.h with 100% similarity]
include/asm-ppc/sigcontext.h [moved from include/asm/sigcontext.h with 100% similarity]
include/asm-ppc/signal.h [moved from include/asm/signal.h with 100% similarity]
include/asm-ppc/string.h [moved from include/asm/string.h with 100% similarity]
include/asm-ppc/types.h [moved from include/asm/types.h with 100% similarity]
include/configs/ADCIOP.h [moved from include/config_ADCIOP.h with 100% similarity]
include/configs/ADS860.h [moved from include/config_ADS860.h with 100% similarity]
include/configs/AMX860.h [moved from include/config_AMX860.h with 100% similarity]
include/configs/AR405.h [moved from include/config_AR405.h with 100% similarity]
include/configs/BAB750.h [moved from include/config_BAB750.h with 100% similarity]
include/configs/CANBT.h [moved from include/config_CANBT.h with 100% similarity]
include/configs/CCM.h [moved from include/config_CCM.h with 100% similarity]
include/configs/CPCI405.h [moved from include/config_CPCI405.h with 100% similarity]
include/configs/CPCI4052.h [moved from include/config_CPCI4052.h with 100% similarity]
include/configs/CPCIISER4.h [moved from include/config_CPCIISER4.h with 100% similarity]
include/configs/CPU86.h [moved from include/config_CPU86.h with 100% similarity]
include/configs/CRAYL1.h [moved from include/config_CRAYL1.h with 100% similarity]
include/configs/CU824.h [moved from include/config_CU824.h with 100% similarity]
include/configs/DASA_SIM.h [moved from include/config_DASA_SIM.h with 100% similarity]
include/configs/DU405.h [moved from include/config_DU405.h with 100% similarity]
include/configs/ERIC.h [moved from include/config_ERIC.h with 100% similarity]
include/configs/ESTEEM192E.h [moved from include/config_ESTEEM192E.h with 100% similarity]
include/configs/ETX094.h [moved from include/config_ETX094.h with 100% similarity]
include/configs/EVB64260.h [moved from include/config_EVB64260.h with 100% similarity]
include/configs/FADS823.h [moved from include/config_FADS823.h with 100% similarity]
include/configs/FADS850SAR.h [moved from include/config_FADS850SAR.h with 100% similarity]
include/configs/FADS860T.h [moved from include/config_FADS860T.h with 100% similarity]
include/configs/FLAGADM.h [moved from include/config_FLAGADM.h with 100% similarity]
include/configs/FPS850L.h [moved from include/config_FPS850L.h with 100% similarity]
include/configs/GENIETV.h [moved from include/config_GENIETV.h with 100% similarity]
include/configs/GTH.h [moved from include/config_GTH.h with 100% similarity]
include/configs/IAD210.h [moved from include/config_IAD210.h with 100% similarity]
include/configs/ICU862.h [moved from include/config_ICU862.h with 100% similarity]
include/configs/IP860.h [moved from include/config_IP860.h with 100% similarity]
include/configs/IPHASE4539.h [moved from include/config_IPHASE4539.h with 100% similarity]
include/configs/IVML24.h [moved from include/config_IVML24.h with 100% similarity]
include/configs/IVMS8.h [moved from include/config_IVMS8.h with 100% similarity]
include/configs/LANTEC.h [moved from include/config_LANTEC.h with 100% similarity]
include/configs/MBX.h [moved from include/config_MBX.h with 100% similarity]
include/configs/MBX860T.h [moved from include/config_MBX860T.h with 100% similarity]
include/configs/MHPC.h [moved from include/config_MHPC.h with 100% similarity]
include/configs/MIP405.h [moved from include/config_MIP405.h with 100% similarity]
include/configs/MOUSSE.h [moved from include/config_MOUSSE.h with 100% similarity]
include/configs/MPC8260ADS.h [moved from include/config_MPC8260ADS.h with 100% similarity]
include/configs/MUSENKI.h [moved from include/config_MUSENKI.h with 100% similarity]
include/configs/MVS1.h [moved from include/config_MVS1.h with 100% similarity]
include/configs/NX823.h [moved from include/config_NX823.h with 100% similarity]
include/configs/OCRTC.h [moved from include/config_OCRTC.h with 100% similarity]
include/configs/ORSG.h [moved from include/config_ORSG.h with 100% similarity]
include/configs/OXC.h [moved from include/config_OXC.h with 100% similarity]
include/configs/PCI405.h [moved from include/config_PCI405.h with 100% similarity]
include/configs/PCIPPC2.h [moved from include/config_PCIPPC2.h with 100% similarity]
include/configs/PCIPPC6.h [moved from include/config_PCIPPC6.h with 100% similarity]
include/configs/PIP405.h [moved from include/config_PIP405.h with 100% similarity]
include/configs/PM826.h [moved from include/config_PM826.h with 100% similarity]
include/configs/R360MPI.h [new file with mode: 0644]
include/configs/RPXClassic.h [moved from include/config_RPXClassic.h with 100% similarity]
include/configs/RPXlite.h [moved from include/config_RPXlite.h with 100% similarity]
include/configs/RPXsuper.h [moved from include/config_RPXsuper.h with 100% similarity]
include/configs/SCM.h [moved from include/config_SCM.h with 100% similarity]
include/configs/SM850.h [moved from include/config_SM850.h with 100% similarity]
include/configs/SPD823TS.h [moved from include/config_SPD823TS.h with 100% similarity]
include/configs/SXNI855T.h [moved from include/config_SXNI855T.h with 100% similarity]
include/configs/Sandpoint8240.h [moved from include/config_Sandpoint8240.h with 100% similarity]
include/configs/Sandpoint8245.h [moved from include/config_Sandpoint8245.h with 100% similarity]
include/configs/TQM823L.h [moved from include/config_TQM823L.h with 100% similarity]
include/configs/TQM8260.h [moved from include/config_TQM8260.h with 100% similarity]
include/configs/TQM850L.h [moved from include/config_TQM850L.h with 100% similarity]
include/configs/TQM855L.h [moved from include/config_TQM855L.h with 100% similarity]
include/configs/TQM860L.h [moved from include/config_TQM860L.h with 100% similarity]
include/configs/W7OLMC.h [moved from include/config_W7OLMC.h with 100% similarity]
include/configs/W7OLMG.h [moved from include/config_W7OLMG.h with 100% similarity]
include/configs/WALNUT405.h [moved from include/config_WALNUT405.h with 100% similarity]
include/configs/ZUMA.h [moved from include/config_ZUMA.h with 100% similarity]
include/configs/c2mon.h [moved from include/config_c2mon.h with 100% similarity]
include/configs/cogent_common.h [moved from include/config_cogent_common.h with 100% similarity]
include/configs/cogent_mpc8260.h [moved from include/config_cogent_mpc8260.h with 99% similarity]
include/configs/cogent_mpc8xx.h [moved from include/config_cogent_mpc8xx.h with 99% similarity]
include/configs/ep8260.h [moved from include/config_ep8260.h with 100% similarity]
include/configs/gw8260.h [moved from include/config_gw8260.h with 100% similarity]
include/configs/hermes.h [moved from include/config_hermes.h with 100% similarity]
include/configs/hymod.h [moved from include/config_hymod.h with 100% similarity]
include/configs/lwmon.h [moved from include/config_lwmon.h with 100% similarity]
include/configs/pcu_e.h [moved from include/config_pcu_e.h with 100% similarity]
include/configs/ppmc8260.h [moved from include/config_ppmc8260.h with 100% similarity]
include/configs/rsdproto.h [moved from include/config_rsdproto.h with 100% similarity]
include/configs/sbc8260.h [moved from include/config_sbc8260.h with 100% similarity]
mkconfig [new file with mode: 0755]

index d3425b82a73ba5e1ba9e96dc9a757309e13c29bd..1fb0349b5bdc35cfa87854486712120a547197de 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Modifications for 1.2.0:
 ======================================================================
 
+* Moved board config files into separate directory;
+  simplified Makefile by using external shell script
+  prepare for other architectures in include/asm-* (Linux-like)
+
 * Prepare for merging ARMBoot sources to common tree:
   - update include/linux/types.h, and associated fixes
   - add endianess fixes to network code
index 8ea071bc981b4f0202e2a32641143455f1f08628..39b8b8f9435a670f991d2b7610130f84bcb02e13 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -147,162 +147,77 @@ endif
 unconfig:
        rm -f include/config.h include/config.mk
 
+#========================================================================
+# PowerPC
+#========================================================================
 #########################################################################
 ## MPC8xx Systems
 #########################################################################
 
 ADS860_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = fads"     >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx fads
 
 AMX860_config  :       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = amx860"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "VENDOR= westel"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx amx860 westel
 
 c2mon_config:          unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = c2mon"    >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx c2mon
 
 CCM_config:            unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = CCM"      >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "VENDOR = siemens" >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx CCM siemens
 
 SCM_config:            unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = SCM"      >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "VENDOR = siemens" >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx SCM siemens
 
 cogent_mpc8xx_config:  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = cogent"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx cogent
 
 ESTEEM192E_config:     unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = esteem192e"       >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx esteem192e
 
 ETX094_config  :       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = etx094"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx etx094
 
 FADS823_config \
 FADS850SAR_config \
 FADS860T_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = fads"     >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx fads
 
 FLAGADM_config:        unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = flagadm"  >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx flagadm
 
 GENIETV_config:        unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = genietv"  >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx genietv
 
 GTH_config:    unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = gth"      >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx gth
 
 hermes_config  :       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = hermes"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx hermes
 
 IAD210_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;           \
-       echo "BOARD = IAD210"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "VENDOR = siemens" >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx IAD210 siemens
 
 xtract_ICU862 = $(subst _100MHz,,$(subst _config,,$1))
 
 ICU862_100MHz_config   \
 ICU862_config: unconfig
-       @echo "Configuring for $(call xtract_ICU862,$@) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;           \
-       echo "BOARD = icu862"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;
-       @echo "/* Automatically generated - do not edit */" >include/config.h
+       @ >include/config.h
        @[ -z "$(findstring _100MHz,$@)" ] || \
-               { echo "#define CONFIG_100MHz"          >>include/config.h ; \
+               { echo "#define CONFIG_100MHz"  >>include/config.h ; \
                  echo "... with 100MHz system clock" ; \
                }
-       @echo "#include <config_$(call xtract_ICU862,$@).h>" >>include/config.h
+       @./mkconfig -a $(call xtract_ICU862,$@) ppc mpc8xx icu862
 
 IP860_config   :       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ip860"    >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx ip860
 
 IVML24_256_config \
 IVML24_128_config \
 IVML24_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ivm"      >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk
+       @ >include/config.h
        @[ -z "$(findstring IVML24_config,$@)" ] || \
-                { echo "#define CONFIG_IVML24_16M"     >include/config.h ; \
+                { echo "#define CONFIG_IVML24_16M"     >>include/config.h ; \
                 }
        @[ -z "$(findstring IVML24_128_config,$@)" ] || \
                 { echo "#define CONFIG_IVML24_32M"     >>include/config.h ; \
@@ -310,18 +225,14 @@ IVML24_config:    unconfig
        @[ -z "$(findstring IVML24_256_config,$@)" ] || \
                 { echo "#define CONFIG_IVML24_64M"     >>include/config.h ; \
                 }
-       @echo "#include <config_IVML24.h>" >>include/config.h
+       @./mkconfig -a IVML24 ppc mpc8xx ivm
 
 IVMS8_256_config \
 IVMS8_128_config \
 IVMS8_config:  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ivm"      >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk
+       @ >include/config.h
        @[ -z "$(findstring IVMS8_config,$@)" ] || \
-                { echo "#define CONFIG_IVMS8_16M"      >include/config.h ; \
+                { echo "#define CONFIG_IVMS8_16M"      >>include/config.h ; \
                 }
        @[ -z "$(findstring IVMS8_128_config,$@)" ] || \
                 { echo "#define CONFIG_IVMS8_32M"      >>include/config.h ; \
@@ -329,114 +240,47 @@ IVMS8_config:    unconfig
        @[ -z "$(findstring IVMS8_256_config,$@)" ] || \
                 { echo "#define CONFIG_IVMS8_64M"      >>include/config.h ; \
                 }
-       @echo "#include <config_IVMS8.h>" >>include/config.h
+       @./mkconfig -a IVMS8 ppc mpc8xx ivm
 
 LANTEC_config  :       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = lantec"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx lantec
 
 lwmon_config:          unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = lwmon"    >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx lwmon
 
 MBX_config     \
 MBX860T_config:        unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = mbx8xx"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx mbx8xx
 
 MHPC_config:           unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "VENDOR= eltec"    >>config.mk ;   \
-       echo "BOARD = mhpc"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx mhpc eltec
 
 MVS1_config :  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd include ;                            \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = mvs1"     >>config.mk ;   \
-       echo "CPU   = mpc8xx"           >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx mvs1
 
 NX823_config:          unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = nx823"    >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx nx823
 
 pcu_e_config:          unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = pcu_e"    >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "VENDOR = siemens" >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx pcu_e siemens
 
 R360MPI_config:        unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd include ;                            \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = r360mpi"  >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx r360mpi
 
 RPXClassic_config:     unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd include ;                            \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = RPXClassic" >>config.mk ; \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx RPXClassic
 
 RPXlite_config:                unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = RPXlite"  >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx RPXlite
 
 SM850_config   :       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = tqm8xx"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx tqm8xx
 
 SPD823TS_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = spd8xx"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx spd8xx
 
 SXNI855T_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = sixnet"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8xx sixnet
 
 # Play some tricks for configuration selection
 # All boards can come with 50 MHz (default), 66MHz or 80MHz clock,
@@ -466,12 +310,7 @@ TQM860L_80MHz_config       \
 TQM860L_FEC_config     \
 TQM860L_FEC_66MHz_config       \
 TQM860L_FEC_80MHz_config:      unconfig
-       @echo "Configuring for $(call xtract_8xx,$@) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = tqm8xx"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk
-       @echo "/* Automatically generated - do not edit */" >include/config.h
+       @ >include/config.h
        @[ -z "$(findstring _FEC,$@)" ] || \
                { echo "#define CONFIG_FEC_ENET"        >>include/config.h ; \
                  echo "... with FEC support" ; \
@@ -489,210 +328,87 @@ TQM860L_FEC_80MHz_config:        unconfig
                  echo "#define CONFIG_NEC_NL6648BC20"  >>include/config.h ; \
                  echo "... with LCD display" ; \
                }
-       @echo "#include <config_$(call xtract_8xx,$@).h>" >>include/config.h
+       @./mkconfig -a $(call xtract_8xx,$@) ppc mpc8xx tqm8xx
 
 TTTech_config: unconfig
-       @echo "Configuring for $@ Board..." ;   \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = tqm8xx"   >>config.mk ;   \
-       echo "CPU   = mpc8xx"   >>config.mk
-       @echo "/* Automatically generated - do not edit */" >include/config.h
-       @echo "#define CONFIG_LCD" >>include/config.h
+       @echo "#define CONFIG_LCD" >include/config.h
        @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h
-       @echo "#include <config_TQM823L.h>" >>include/config.h
+       @./mkconfig -a TQM823L ppc mpc8xx tqm8xx
 
 #########################################################################
 ## PPC4xx Systems
 #########################################################################
 
 ADCIOP_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = adciop"   >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx adciop esd
 
 AR405_config:  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ar405"    >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx ar405 esd
 
 CANBT_config:  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = canbt"    >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx canbt esd
 
 CPCI405_config         \
 CPCI4052_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = cpci405"  >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "TARGET = $(@:_config=)"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx cpci405 esd
+       @echo "TARGET = $(@:_config=)"  >>include/config.mk
 
 CPCIISER4_config:      unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = cpciiser4">>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx cpciiser4 esd
 
 CRAYL1_config:unconfig
-       @echo "Configuring for $(@:_config=) Board..(SV2 L1)." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = L1"       >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = cray"    >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx L1 cray
 
 DASA_SIM_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = dasa_sim" >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx dasa_sim esd
 
 DU405_config:  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = du405"    >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx du405 esd
 
 ERIC_config:unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = eric"     >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx eric
 
 MIP405_config:unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = mip405"   >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = mpl"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx mip405 mpl
 
 OCRTC_config           \
 ORSG_config:   unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ocrtc"    >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx ocrtc esd
 
 PCI405_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = pci405"   >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = esd"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx pci405 esd
 
 PIP405_config:unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = pip405"   >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "VENDOR = mpl"     >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx pip405 mpl
 
 W7OLMC_config  \
 W7OLMG_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                            \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = w7o"      >>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx w7o
 
 WALNUT405_config:unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = walnut405">>config.mk ;   \
-       echo "CPU   = ppc4xx"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc ppc4xx walnut405
 
 #########################################################################
 ## MPC824x Systems
 #########################################################################
 
 CU824_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = cu824"    >>config.mk ;   \
-       echo "CPU   = mpc824x"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc824x cu824
 
 MOUSSE_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = mousse"   >>config.mk ;   \
-       echo "CPU   = mpc824x"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc824x mousse
 
 MUSENKI_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = musenki"  >>config.mk ;   \
-       echo "CPU   = mpc824x"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc824x musenki
 
 OXC_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = oxc"      >>config.mk ;   \
-       echo "CPU   = mpc824x"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc824x oxc
 
 Sandpoint8240_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = sandpoint">>config.mk ;   \
-       echo "CPU   = mpc824x"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc824x sandpoint
 
 Sandpoint8245_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = sandpoint">>config.mk ;   \
-       echo "CPU   = mpc824x"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc824x sandpoint
 
 
 #########################################################################
@@ -701,20 +417,12 @@ Sandpoint8245_config: unconfig
 xtract_82xx = $(subst _ROMBOOT,,$(subst _L2,,$(subst _266MHz,,$(subst _300MHz,,$(subst _config,,$1)))))
 
 cogent_mpc8260_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = cogent"   >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 cogent
 
 CPU86_config   \
 CPU86_ROMBOOT_config: unconfig
-       @echo "Configuring for $(call xtract_82xx,$@) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = cpu86"    >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
+       @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 cpu86
+       @cd ./include ;                         \
        if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
                echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
                echo "... booting from 8-bit flash" ; \
@@ -722,111 +430,54 @@ CPU86_ROMBOOT_config: unconfig
                echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
                echo "... booting from 64-bit flash" ; \
        fi; \
-       echo "export CONFIG_BOOT_ROM" >>config.mk;
-       @echo "/* Automatically generated - do not edit */" >include/config.h
-       @echo "#include <config_$(call xtract_82xx,$@).h>" >>include/config.h
+       echo "export CONFIG_BOOT_ROM" >> config.mk;
 
 ep8260_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ep8260"   >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;
-       @echo "/* Automatically generated - do not edit */" >include/config.h
-       @echo "#include <config_$(@:_config=).h>" >>include/config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 ep8260
 
 gw8260_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = gw8260"   >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 gw8260
 
 hymod_config:  unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = hymod"    >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 hymod
 
 IPHASE4539_config:     unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = iphase4539" >>config.mk ; \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 iphase4539
 
 MPC8260ADS_config:     unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = mpc8260ads" >>config.mk ; \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 mpc8260ads
 
 PM826_config   \
 PM826_ROMBOOT_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = pm826"    >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
+       @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 pm826
+       @cd ./include ;                         \
        if [ "$(findstring _ROMBOOT_,$@)" ] ; then \
-               echo "CONFIG_BOOT_ROM = y" >>config.mk ; \
+               echo "CONFIG_BOOT_ROM = y" >> config.mk ; \
                echo "... booting from 8-bit flash" ; \
        else \
-               echo "CONFIG_BOOT_ROM = n" >>config.mk ; \
+               echo "CONFIG_BOOT_ROM = n" >> config.mk ; \
                echo "... booting from 64-bit flash" ; \
        fi; \
-       echo "export CONFIG_BOOT_ROM" >>config.mk; \
-       echo "#include <config_$(call xtract_82xx,$@).h>" >config.h
+       echo "export CONFIG_BOOT_ROM" >> config.mk; \
 
 ppmc8260_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = ppmc8260" >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 ppmc8260
 
 RPXsuper_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = rpxsuper" >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 rpxsuper
 
 rsdproto_config:       unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = rsdproto" >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 rsdproto
 
 sbc8260_config:        unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = sbc8260"  >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc8260 sbc8260
 
 TQM8260_config \
 TQM8260_L2_config      \
 TQM8260_266MHz_config  \
 TQM8260_L2_266MHz_config \
 TQM8260_300MHz_config: unconfig
-       @echo "Configuring for $(call xtract_82xx,$@) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = tqm8260"  >>config.mk ;   \
-       echo "CPU   = mpc8260"  >>config.mk ;
-       @echo "/* Automatically generated - do not edit */" >include/config.h
+       @ >include/config.h
        @if [ "$(findstring _L2_,$@)" ] ; then \
                echo "#define CONFIG_L2_CACHE"  >>include/config.h ; \
                echo "... with L2 Cache support (60x Bus Mode)" ; \
@@ -835,14 +486,15 @@ TQM8260_300MHz_config:    unconfig
                echo "... without L2 Cache support" ; \
        fi
        @[ -z "$(findstring _266MHz,$@)" ] || \
-               { echo "#define CONFIG_266MHz"          >>include/config.h ; \
+               { echo "#define CONFIG_266MHz"  >>include/config.h ; \
                  echo "... with 266MHz system clock" ; \
                }
        @[ -z "$(findstring _300MHz,$@)" ] || \
-               { echo "#define CONFIG_300MHz"          >>include/config.h ; \
+               { echo "#define CONFIG_300MHz"  >>include/config.h ; \
                  echo "... with 300MHz system clock" ; \
                }
-       @echo "#include <config_$(call xtract_82xx,$@).h>" >>include/config.h
+       @./mkconfig -a $(call xtract_82xx,$@) ppc mpc8260 tqm8260
+
 
 #########################################################################
 ## 74xx/7xx Systems
@@ -850,34 +502,18 @@ TQM8260_300MHz_config:    unconfig
 
 EVB64260_config        \
 ZUMA_config:   unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd ./include ;                          \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = evb64260" >>config.mk ;   \
-       echo "CPU   = 74xx_7xx" >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc 74xx_7xx evb64260
 
 PCIPPC2_config \
 PCIPPC6_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd include ;                            \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "BOARD = pcippc2"  >>config.mk ;   \
-       echo "CPU   = 74xx_7xx" >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc 74xx_7xx pcippc2
 
 #########################################################################
 ## MPC7xx Systems
 #########################################################################
 
 BAB750_config: unconfig
-       @echo "Configuring for $(@:_config=) Board..." ; \
-       cd include ;                            \
-       echo "ARCH  = ppc"      > config.mk ;   \
-       echo "VENDOR= eltec"    >>config.mk ;   \
-       echo "BOARD = bab750"   >>config.mk ;   \
-       echo "CPU   = mpc75x"   >>config.mk ;   \
-       echo "#include <config_$(@:_config=).h>" >config.h
+       @./mkconfig $(@:_config=) ppc mpc75x bab750 eltec
 
 #########################################################################
 
index 9dc791003c921718ff60f8c51aa27dcc7ea888ee..33fc15a5960ba535aae9e2fd623e076eab8ee3b6 100644 (file)
@@ -41,7 +41,7 @@
 
 #define _LINUX_CONFIG_H 1      /* avoid reading Linux autoconf.h file  */
 
-#include "config_MIP405.h"
+#include "configs/MIP405.h"
 #include <ppc_asm.tmpl>
 #include <ppc_defs.h>
 
index e3c0fbe1ebc751f758f41b2b3f29bec9dea76bbc..4a70ec90d89e0594877fdd02e342ce8230f7df4b 100644 (file)
@@ -41,7 +41,7 @@
 
 #define _LINUX_CONFIG_H 1      /* avoid reading Linux autoconf.h file  */
 
-#include "config_PIP405.h"
+#include "configs/PIP405.h"
 #include <ppc_asm.tmpl>
 #include <ppc_defs.h>
 
similarity index 100%
rename from include/asm/cache.h
rename to include/asm-ppc/cache.h
similarity index 100%
rename from include/asm/errno.h
rename to include/asm-ppc/errno.h
similarity index 100%
rename from include/asm/hymod.h
rename to include/asm-ppc/hymod.h
old mode 100755 (executable)
new mode 100644 (file)
similarity index 100%
rename from include/asm/io.h
rename to include/asm-ppc/io.h
old mode 100755 (executable)
new mode 100644 (file)
similarity index 100%
rename from include/asm/mc146818rtc.h
rename to include/asm-ppc/mc146818rtc.h
similarity index 100%
rename from include/asm/mmu.h
rename to include/asm-ppc/mmu.h
old mode 100755 (executable)
new mode 100644 (file)
similarity index 100%
rename from include/asm/pci_io.h
rename to include/asm-ppc/pci_io.h
similarity index 100%
rename from include/asm/pnp.h
rename to include/asm-ppc/pnp.h
similarity index 100%
rename from include/asm/types.h
rename to include/asm-ppc/types.h
similarity index 100%
rename from include/config_CCM.h
rename to include/configs/CCM.h
similarity index 100%
rename from include/config_ERIC.h
rename to include/configs/ERIC.h
similarity index 100%
rename from include/config_GTH.h
rename to include/configs/GTH.h
similarity index 100%
rename from include/config_MBX.h
rename to include/configs/MBX.h
similarity index 100%
rename from include/config_MHPC.h
rename to include/configs/MHPC.h
similarity index 100%
rename from include/config_MVS1.h
rename to include/configs/MVS1.h
similarity index 100%
rename from include/config_ORSG.h
rename to include/configs/ORSG.h
similarity index 100%
rename from include/config_OXC.h
rename to include/configs/OXC.h
diff --git a/include/configs/R360MPI.h b/include/configs/R360MPI.h
new file mode 100644 (file)
index 0000000..1f2afc4
--- /dev/null
@@ -0,0 +1,441 @@
+/*
+ * (C) Copyright 2000, 2001, 2002
+ * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+/*
+ * board/config.h - configuration options, board specific
+ */
+
+#ifndef __CONFIG_H
+#define __CONFIG_H
+
+/*
+ * High Level Configuration Options
+ * (easy to change)
+ */
+
+#define CONFIG_MPC823          1       /* This is a MPC823 CPU         */
+#define CONFIG_R360MPI         1
+
+#ifdef CONFIG_LCD                      /* with LCD controller ?        */
+/* #define CONFIG_NEC_NL6648BC20 1 / * use NEC NL6648BC20 display      */
+#endif
+
+#define MPC8XX_FACT             1              /* Multiply by 1        */
+#define MPC8XX_XIN              50000000       /* 50 MHz in            */
+#define CONFIG_8xx_GCLK_FREQ    50000000 /* define if cant use get_gclk_freq */
+
+#define        CONFIG_8xx_CONS_SMC1    1       /* Console is on SMC1           */
+#undef CONFIG_8xx_CONS_SMC2
+#undef CONFIG_8xx_CONS_NONE
+#define CONFIG_BAUDRATE                9600    /* console baudrate = 9600bps   */
+#if 0
+#define CONFIG_BOOTDELAY       -1      /* autoboot disabled            */
+#else
+#define CONFIG_BOOTDELAY       5       /* autoboot after 5 seconds     */
+#endif
+
+#define        CONFIG_CLOCKS_IN_MHZ    1       /* clocks passsed to Linux in MHz */
+
+#define CONFIG_PREBOOT "echo;echo Type \"run flash_nfs\" to mount root filesystem over NFS;echo"
+
+#undef CONFIG_BOOTARGS
+#define CONFIG_BOOTCOMMAND                                                     \
+       "bootp; "                                                               \
+       "setenv bootargs root=/dev/nfs rw nfsroot=$(serverip):$(rootpath) "     \
+       "ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname)::off; "   \
+       "bootm"
+
+#undef CONFIG_SCC1_ENET
+#define        CONFIG_SCC2_ENET
+
+#define CONFIG_LOADS_ECHO      1       /* echo on for serial download  */
+#undef CFG_LOADS_BAUD_CHANGE           /* don't allow baudrate change  */
+
+#undef CONFIG_WATCHDOG                 /* watchdog disabled            */
+
+#if 0
+#ifdef CONFIG_LCD
+# undef         CONFIG_STATUS_LED              /* disturbs display             */
+#else
+# define CONFIG_STATUS_LED     1       /* Status LED enabled           */
+#endif /* CONFIG_LCD */
+#endif
+
+#undef CONFIG_CAN_DRIVER               /* CAN Driver support disabled  */
+
+#define CONFIG_BOOTP_MASK      (CONFIG_BOOTP_DEFAULT | CONFIG_BOOTP_BOOTFILESIZE)
+
+#define        CONFIG_RTC_MPC8xx               /* use internal RTC of MPC8xx   */
+
+#define CONFIG_COMMANDS              ( CONFIG_CMD_DFL  | \
+                               CFG_CMD_DHCP    | \
+                               CFG_CMD_DATE    )
+
+/* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */
+#include <cmd_confdefs.h>
+
+/*
+ * Miscellaneous configurable options
+ */
+#define        CFG_LONGHELP                    /* undef to save memory         */
+#define        CFG_PROMPT      "=> "           /* Monitor Command Prompt       */
+#if (CONFIG_COMMANDS & CFG_CMD_KGDB)
+#define        CFG_CBSIZE      1024            /* Console I/O Buffer Size      */
+#else
+#define        CFG_CBSIZE      256             /* Console I/O Buffer Size      */
+#endif
+#define        CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
+#define        CFG_MAXARGS     16              /* max number of command args   */
+#define CFG_BARGSIZE   CFG_CBSIZE      /* Boot Argument Buffer Size    */
+
+#define CFG_MEMTEST_START      0x0400000       /* memtest works on     */
+#define CFG_MEMTEST_END                0x0C00000       /* 4 ... 12 MB in DRAM  */
+
+#define        CFG_LOAD_ADDR           0x100000        /* default load address */
+
+#define        CFG_HZ          1000            /* decrementer freq: 1 ms ticks */
+
+#define CFG_BAUDRATE_TABLE     { 9600, 19200, 38400, 57600, 115200 }
+
+/*
+ * Low Level Configuration Settings
+ * (address mappings, register initial values, etc.)
+ * You should know what you are doing if you make changes here.
+ */
+/*-----------------------------------------------------------------------
+ * Internal Memory Mapped Register
+ */
+#define CFG_IMMR               0xFF000000
+
+/*-----------------------------------------------------------------------
+ * Definitions for initial stack pointer and data area (in DPRAM)
+ */
+#define CFG_INIT_RAM_ADDR      CFG_IMMR
+#define        CFG_INIT_RAM_END        0x2F00  /* End of used area in DPRAM    */
+#define        CFG_INIT_DATA_SIZE      64  /* size in bytes reserved for initial data */
+#define CFG_INIT_DATA_OFFSET   (CFG_INIT_RAM_END - CFG_INIT_DATA_SIZE)
+#define        CFG_INIT_SP_OFFSET      CFG_INIT_DATA_OFFSET
+
+/*-----------------------------------------------------------------------
+ * Start addresses for the final memory configuration
+ * (Set up by the startup code)
+ * Please note that CFG_SDRAM_BASE _must_ start at 0
+ */
+#define        CFG_SDRAM_BASE          0x00000000
+#define CFG_FLASH_BASE         0x40000000
+#if defined(DEBUG)
+#define        CFG_MONITOR_LEN         (256 << 10)     /* Reserve 256 kB for Monitor   */
+#else
+#define        CFG_MONITOR_LEN         (192 << 10)     /* Reserve 192 kB for Monitor   */
+#endif
+#define CFG_MONITOR_BASE       CFG_FLASH_BASE
+#define        CFG_MALLOC_LEN          (128 << 10)     /* Reserve 128 kB for malloc()  */
+
+/*
+ * For booting Linux, the board info and command line data
+ * have to be in the first 8 MB of memory, since this is
+ * the maximum mapped by the Linux kernel during initialization.
+ */
+#define        CFG_BOOTMAPSZ           (8 << 20)       /* Initial Memory map for Linux */
+
+/*-----------------------------------------------------------------------
+ * FLASH organization
+ */
+#define CFG_MAX_FLASH_BANKS    1       /* max number of memory banks           */
+#define CFG_MAX_FLASH_SECT     64      /* max number of sectors on one chip    */
+
+#define CFG_FLASH_ERASE_TOUT   120000  /* Timeout for Flash Erase (in ms)      */
+#define CFG_FLASH_WRITE_TOUT   500     /* Timeout for Flash Write (in ms)      */
+
+#define        CFG_ENV_IS_IN_FLASH     1
+#define        CFG_ENV_SECT_SIZE       0x20000
+#define        CFG_ENV_OFFSET          0x20000 /*   Offset   of Environment Sector     */
+#define        CFG_ENV_SIZE            0x4000  /* Total Size of Environment Sector     */
+
+/*-----------------------------------------------------------------------
+ * Cache Configuration
+ */
+#define CFG_CACHELINE_SIZE     16      /* For all MPC8xx CPUs                  */
+#if (CONFIG_COMMANDS & CFG_CMD_KGDB)
+#define CFG_CACHELINE_SHIFT    4       /* log base 2 of the above value        */
+#endif
+
+/*-----------------------------------------------------------------------
+ * SYPCR - System Protection Control                           11-9
+ * SYPCR can only be written once after reset!
+ *-----------------------------------------------------------------------
+ * Software & Bus Monitor Timer max, Bus Monitor enable, SW Watchdog freeze
+ */
+#if defined(CONFIG_WATCHDOG)
+#define CFG_SYPCR      (SYPCR_SWTC | SYPCR_BMT | SYPCR_BME | SYPCR_SWF | \
+                        SYPCR_SWE  | SYPCR_SWRI| SYPCR_SWP)
+#else
+#define CFG_SYPCR      (SYPCR_SWTC | SYPCR_BMT | SYPCR_BME | SYPCR_SWF | SYPCR_SWP)
+#endif
+
+/*-----------------------------------------------------------------------
+ * SIUMCR - SIU Module Configuration                           11-6
+ *-----------------------------------------------------------------------
+ * PCMCIA config., multi-function pin tri-state
+ */
+#ifndef        CONFIG_CAN_DRIVER
+#define CFG_SIUMCR     (SIUMCR_DBGC00 | SIUMCR_DBPC00 | SIUMCR_MLRC01)
+#else  /* we must activate GPL5 in the SIUMCR for CAN */
+#define CFG_SIUMCR     (SIUMCR_DBGC11 | SIUMCR_DBPC00 | SIUMCR_MLRC01)
+#endif /* CONFIG_CAN_DRIVER */
+
+/*-----------------------------------------------------------------------
+ * TBSCR - Time Base Status and Control                                11-26
+ *-----------------------------------------------------------------------
+ * Clear Reference Interrupt Status, Timebase freezing enabled
+ */
+#define CFG_TBSCR      (TBSCR_REFA | TBSCR_REFB | TBSCR_TBE)
+
+/*-----------------------------------------------------------------------
+ * RTCSC - Real-Time Clock Status and Control Register         11-27
+ *-----------------------------------------------------------------------
+ */
+#define CFG_RTCSC      (RTCSC_SEC | RTCSC_ALR | RTCSC_RTF| RTCSC_RTE)
+
+/*-----------------------------------------------------------------------
+ * PISCR - Periodic Interrupt Status and Control               11-31
+ *-----------------------------------------------------------------------
+ * Clear Periodic Interrupt Status, Interrupt Timer freezing enabled
+ */
+#define CFG_PISCR      (PISCR_PS | PISCR_PITF)
+
+/*-----------------------------------------------------------------------
+ * PLPRCR - PLL, Low-Power, and Reset Control Register         15-30
+ *-----------------------------------------------------------------------
+ * Reset PLL lock status sticky bit, timer expired status bit and timer
+ * interrupt status bit
+ *
+ * If this is a 80 MHz CPU, set PLL multiplication factor to 5 (5*16=80)!
+ */
+#ifdef CONFIG_80MHz    /* for 80 MHz, we use a 16 MHz clock * 5 */
+#define CFG_PLPRCR                                                     \
+               ( (5-1)<<PLPRCR_MF_SHIFT | PLPRCR_TEXPS | PLPRCR_TMIST )
+#else                  /* up to 50 MHz we use a 1:1 clock */
+#define CFG_PLPRCR     (PLPRCR_SPLSS | PLPRCR_TEXPS | PLPRCR_TMIST)
+#endif /* CONFIG_80MHz */
+
+/*-----------------------------------------------------------------------
+ * SCCR - System Clock and reset Control Register              15-27
+ *-----------------------------------------------------------------------
+ * Set clock output, timebase and RTC source and divider,
+ * power management and some other internal clocks
+ */
+#define SCCR_MASK      SCCR_EBDF11
+#define CFG_SCCR       (SCCR_TBS     | \
+                        SCCR_COM00   | SCCR_DFSYNC00 | SCCR_DFBRG00  | \
+                        SCCR_DFNL000 | SCCR_DFNH000  | SCCR_DFLCD000 | \
+                        SCCR_DFALCD00)
+
+/*-----------------------------------------------------------------------
+ * PCMCIA stuff
+ *-----------------------------------------------------------------------
+ *
+ */
+#define CFG_PCMCIA_MEM_ADDR    (0xE0000000)
+#define CFG_PCMCIA_MEM_SIZE    ( 64 << 20 )
+#define CFG_PCMCIA_DMA_ADDR    (0xE4000000)
+#define CFG_PCMCIA_DMA_SIZE    ( 64 << 20 )
+#define CFG_PCMCIA_ATTRB_ADDR  (0xE8000000)
+#define CFG_PCMCIA_ATTRB_SIZE  ( 64 << 20 )
+#define CFG_PCMCIA_IO_ADDR     (0xEC000000)
+#define CFG_PCMCIA_IO_SIZE     ( 64 << 20 )
+
+/*-----------------------------------------------------------------------
+ * IDE/ATA stuff (Supports IDE harddisk on PCMCIA Adapter)
+ *-----------------------------------------------------------------------
+ */
+
+#if 1
+#define        CONFIG_IDE_8xx_PCCARD   1       /* Use IDE with PC Card Adapter */
+
+#undef CONFIG_IDE_8xx_DIRECT           /* Direct IDE    not supported  */
+#undef CONFIG_IDE_LED                  /* LED   for ide not supported  */
+#undef CONFIG_IDE_RESET                /* reset for ide not supported  */
+
+#define CFG_IDE_MAXBUS         1       /* max. 1 IDE bus               */
+#define CFG_IDE_MAXDEVICE      1       /* max. 1 drive per IDE bus     */
+
+#define CFG_ATA_IDE0_OFFSET    0x0000
+
+#define CFG_ATA_BASE_ADDR      CFG_PCMCIA_MEM_ADDR
+
+/* Offset for data I/O                 */
+#define CFG_ATA_DATA_OFFSET    (CFG_PCMCIA_MEM_SIZE + 0x320)
+
+/* Offset for normal register accesses */
+#define CFG_ATA_REG_OFFSET     (2 * CFG_PCMCIA_MEM_SIZE + 0x320)
+
+/* Offset for alternate registers      */
+#define CFG_ATA_ALT_OFFSET     0x0100
+#endif
+
+/*-----------------------------------------------------------------------
+ *
+ *-----------------------------------------------------------------------
+ *
+ */
+#define        CFG_DER 0x2002000F
+/*#define CFG_DER      0*/
+
+/*
+ * Init Memory Controller:
+ *
+ * BR0/1 and OR0/1 (FLASH)
+ */
+
+#define FLASH_BASE0_PRELIM     0x40000000      /* FLASH bank #0        */
+
+/* used to re-map FLASH both when starting from SRAM or FLASH:
+ * restrict access enough to keep SRAM working (if any)
+ * but not too much to meddle with FLASH accesses
+ */
+#define CFG_REMAP_OR_AM                0x80000000      /* OR addr mask */
+#define CFG_PRELIM_OR_AM       0xE0000000      /* OR addr mask */
+
+/*
+ * FLASH timing:
+ */
+#if 0
+#if   defined(CONFIG_80MHz)
+/* 80 MHz CPU - 40 MHz bus: ACS = 00, TRLX = 0, CSNT = 1, SCY = 3, EHTR = 1 */
+#define CFG_OR_TIMING_FLASH    (OR_ACS_DIV1  | 0       | OR_CSNT_SAM | \
+                                OR_SCY_3_CLK | OR_EHTR | OR_BI)
+#elif defined(CONFIG_66MHz)
+/* 66 MHz CPU - 66 MHz bus: ACS = 00, TRLX = 1, CSNT = 1, SCY = 3, EHTR = 1 */
+#define CFG_OR_TIMING_FLASH    (OR_ACS_DIV1  | OR_TRLX | OR_CSNT_SAM | \
+                                OR_SCY_3_CLK | OR_EHTR | OR_BI)
+#else          /*   50 MHz */
+/* 50 MHz CPU - 50 MHz bus: ACS = 00, TRLX = 1, CSNT = 1, SCY = 2, EHTR = 1 */
+#define CFG_OR_TIMING_FLASH    (OR_ACS_DIV1  | OR_TRLX | OR_CSNT_SAM | \
+                                OR_SCY_2_CLK | OR_EHTR | OR_BI)
+#endif /*CONFIG_??MHz */
+#else
+#define CFG_OR_TIMING_FLASH    0x1f4
+#endif
+
+#define CFG_OR0_REMAP  (CFG_REMAP_OR_AM  | CFG_OR_TIMING_FLASH)
+#if 0
+#define CFG_OR0_PRELIM (CFG_PRELIM_OR_AM | CFG_OR_TIMING_FLASH)
+#define CFG_BR0_PRELIM ((FLASH_BASE0_PRELIM & BR_BA_MSK) | BR_PS_16 | BR_V )
+#else
+#define CFG_OR0_PRELIM  0xFF0001f4              /* Real values for the board */
+#define CFG_BR0_PRELIM  0x40000801              /* Real values for the board */
+#endif
+
+
+/*
+ * BR1 and OR1 (SDRAM)
+ *
+ */
+#define SDRAM_BASE1_PRELIM     0x00000000      /* SDRAM bank #0        */
+#define        SDRAM_MAX_SIZE          0x04000000      /* max 64 MB per bank   */
+
+/* SDRAM timing: Multiplexed addresses, GPL5 output to GPL5_A (don't care)     */
+#define CFG_OR_TIMING_SDRAM    0x00000A00
+
+#if 0
+#define CFG_OR1_PRELIM (CFG_PRELIM_OR_AM | CFG_OR_TIMING_SDRAM )
+#define CFG_BR1_PRELIM ((SDRAM_BASE1_PRELIM & BR_BA_MSK) | BR_MS_UPMA | BR_V )
+#else
+#define CFG_OR1_PRELIM 0xf8000a00
+#define CFG_BR1_PRELIM 0x00000081
+#endif
+
+
+/*
+ * Memory Periodic Timer Prescaler
+ *
+ * The Divider for PTA (refresh timer) configuration is based on an
+ * example SDRAM configuration (64 MBit, one bank). The adjustment to
+ * the number of chip selects (NCS) and the actually needed refresh
+ * rate is done by setting MPTPR.
+ *
+ * PTA is calculated from
+ *     PTA = (gclk * Trefresh) / ((2 ^ (2 * DFBRG)) * PTP * NCS)
+ *
+ *     gclk      CPU clock (not bus clock!)
+ *     Trefresh  Refresh cycle * 4 (four word bursts used)
+ *
+ * 4096  Rows from SDRAM example configuration
+ * 1000  factor s -> ms
+ *   32  PTP (pre-divider from MPTPR) from SDRAM example configuration
+ *    4  Number of refresh cycles per period
+ *   64  Refresh cycle in ms per number of rows
+ * --------------------------------------------
+ * Divider = 4096 * 32 * 1000 / (4 * 64) = 512000
+ *
+ * 50 MHz => 50.000.000 / Divider =  98
+ * 66 Mhz => 66.000.000 / Divider = 129
+ * 80 Mhz => 80.000.000 / Divider = 156
+ */
+#if   defined(CONFIG_80MHz)
+#define CFG_MAMR_PTA           156
+#elif defined(CONFIG_66MHz)
+#define CFG_MAMR_PTA           129
+#else          /*   50 MHz */
+#define CFG_MAMR_PTA            98
+#endif /*CONFIG_??MHz */
+
+/*
+ * For 16 MBit, refresh rates could be 31.3 us
+ * (= 64 ms / 2K = 125 / quad bursts).
+ * For a simpler initialization, 15.6 us is used instead.
+ *
+ * #define CFG_MPTPR_2BK_2K    MPTPR_PTP_DIV32         for 2 banks
+ * #define CFG_MPTPR_1BK_2K    MPTPR_PTP_DIV64         for 1 bank
+ */
+#define CFG_MPTPR_2BK_4K       MPTPR_PTP_DIV16         /* setting for 2 banks  */
+#define CFG_MPTPR_1BK_4K       MPTPR_PTP_DIV32         /* setting for 1 bank   */
+
+/* refresh rate 7.8 us (= 64 ms / 8K = 31.2 / quad bursts) for 256 MBit                */
+#define CFG_MPTPR_2BK_8K       MPTPR_PTP_DIV8          /* setting for 2 banks  */
+#define CFG_MPTPR_1BK_8K       MPTPR_PTP_DIV16         /* setting for 1 bank   */
+
+/*
+ * MAMR settings for SDRAM
+ */
+
+/* 8 column SDRAM */
+#define CFG_MAMR_8COL  ((CFG_MAMR_PTA << MAMR_PTA_SHIFT)  | MAMR_PTAE      |   \
+                        MAMR_AMA_TYPE_0 | MAMR_DSA_1_CYCL | MAMR_G0CLA_A11 |   \
+                        MAMR_RLFA_1X    | MAMR_WLFA_1X    | MAMR_TLFA_4X)
+/* 9 column SDRAM */
+#define CFG_MAMR_9COL  ((CFG_MAMR_PTA << MAMR_PTA_SHIFT)  | MAMR_PTAE      |   \
+                        MAMR_AMA_TYPE_1 | MAMR_DSA_1_CYCL | MAMR_G0CLA_A10 |   \
+                        MAMR_RLFA_1X    | MAMR_WLFA_1X    | MAMR_TLFA_4X)
+
+
+/*
+ * Internal Definitions
+ *
+ * Boot Flags
+ */
+#define        BOOTFLAG_COLD   0x01            /* Normal Power-On: Boot from FLASH     */
+#define BOOTFLAG_WARM  0x02            /* Software reboot                      */
+
+#endif /* __CONFIG_H */
similarity index 100%
rename from include/config_SCM.h
rename to include/configs/SCM.h
similarity index 100%
rename from include/config_ZUMA.h
rename to include/configs/ZUMA.h
similarity index 99%
rename from include/config_cogent_mpc8260.h
rename to include/configs/cogent_mpc8260.h
index b0d3fde5d87b0b20ba3dbbbcaa1c8dd9281982ff..0a0e041b59fe73bdbe4874713d7939223ddeb053 100644 (file)
  */
 #define CFG_CMA_MB_BASE                0x00000000      /* base of m/b address space */
 
-#include <config_cogent_common.h>
+#include <configs/cogent_common.h>
 
 #ifdef CONFIG_CONS_NONE
 #define CFG_CMA_CONS_SERIAL    /* use Cogent motherboard serial for console */
similarity index 99%
rename from include/config_cogent_mpc8xx.h
rename to include/configs/cogent_mpc8xx.h
index 78ca1b13b48ffbc18e689df22389d59f1691623d..a365fa5ec177969792091ce559a302ac9e6e5554 100644 (file)
  */
 #define CFG_CMA_MB_BASE                0x00000000      /* base of m/b address space */
 
-#include <config_cogent_common.h>
+#include <configs/cogent_common.h>
 
 #define CFG_CMA_CONS_SERIAL    /* use Cogent motherboard serial for console */
 #define CONFIG_CONS_INDEX      1
diff --git a/mkconfig b/mkconfig
new file mode 100755 (executable)
index 0000000..3c5fdff
--- /dev/null
+++ b/mkconfig
@@ -0,0 +1,55 @@
+#!/bin/sh -e
+
+# Script to create header files and links to configure
+# PPCBoot for a specific board.
+#
+# Parameters:  Target  Architecture  CPU  Board
+#
+# (C) 2002 DENX Software Engineering, Wolfgang Denk <wd@denx.de>
+#
+
+APPEND=no      # Default: Create new config file
+
+while [ $# -gt 0 ] ; do
+       case "$1" in
+       --) shift ; break ;;
+       -a) shift ; APPEND=yes ;;
+       *)  break ;;
+       esac
+done
+
+[ $# -lt 4 ] && exit 1
+[ $# -gt 5 ] && exit 1
+
+echo "Configuring for $1 board..."
+
+cd ./include
+
+#
+# Create link to architecture specific headers
+#
+rm -f asm
+ln -s asm-$2 asm
+
+#
+# Create include file for Make
+#
+echo "ARCH  = $2" >  config.mk
+echo "CPU   = $3" >> config.mk
+echo "BOARD = $4" >> config.mk
+
+[ "$5" ] && echo "VENDOR = $5" >> config.mk
+
+#
+# Create board specific header file
+#
+if [ "$APPEND" = "yes" ]       # Append to existing config file
+then
+       echo >> config.h
+else
+       > config.h              # Create new config file
+fi
+echo "/* Automatically generated - do not edit */" >>config.h
+echo "#include <configs/$1.h>" >>config.h
+
+exit 0