Updates for MCC200 / PRS200 boards:
authorWolfgang Denk <wd@pollux.denx.de>
Wed, 23 Aug 2006 22:26:42 +0000 (00:26 +0200)
committerWolfgang Denk <wd@pollux.denx.de>
Wed, 23 Aug 2006 22:26:42 +0000 (00:26 +0200)
- support for configurations with SDRAM or DDR memory,
- support for highboot and lowboot
- adjusting environment definitions

CHANGELOG
Makefile
board/mcc200/config.mk
board/mcc200/mcc200.c
include/configs/mcc200.h

index 82be4e3..7975cf3 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,11 @@
 Changes since U-Boot 1.1.4:
 ======================================================================
 
+* Updates for MCC200 / PRS200 boards:
+  - support for configurations with SDRAM or DDR memory,
+  - support for highboot and lowboot
+  - adjusting environment definitions
+
 * Add support for WTK FO300 board (TQM5200 based).
 
 * Fix TQM834x hang.
index a78f35b..7542ab4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -323,10 +323,15 @@ lite5200b_LOWBOOT_config: unconfig
        @./mkconfig -a IceCube  ppc mpc5xxx icecube
 
 mcc200_config  \
-mcc200_SDRAM   \
-mcc200_highboot        \
-mcc200_COM12   \
-mcc200_highboot_SDRAM: unconfig
+mcc200_SDRAM_config    \
+mcc200_highboot_config \
+mcc200_COM12_config    \
+mcc200_COM12_SDRAM_config      \
+mcc200_highboot_SDRAM_config   \
+prs200_config  \
+prs200_DDR_config      \
+prs200_highboot_config \
+prs200_highboot_DDR_config:    unconfig
        @ >include/config.h
        @[ -n "$(findstring highboot,$@)" ] || \
                { echo "... with lowboot configuration" ; \
@@ -336,7 +341,18 @@ mcc200_highboot_SDRAM:     unconfig
                  echo "... with highboot configuration" ; \
                }
        @[ -n "$(findstring _SDRAM,$@)" ] || \
-               { echo "... with DDR" ; \
+               { if [ -n "$(findstring mcc200,$@)" ]; \
+                 then \
+                       echo "... with DDR" ; \
+                 else \
+                       if [ -n "$(findstring _DDR,$@)" ];\
+                       then \
+                               echo "... with DDR" ; \
+                       else \
+                               echo "#define CONFIG_MCC200_SDRAM" >>include/config.h ;\
+                               echo "... with SDRAM" ; \
+                       fi; \
+                 fi; \
                }
        @[ -z "$(findstring _SDRAM,$@)" ] || \
                { echo "#define CONFIG_MCC200_SDRAM"    >>include/config.h ; \
@@ -346,7 +362,10 @@ mcc200_highboot_SDRAM:     unconfig
                { echo "#define CONFIG_CONSOLE_COM12"   >>include/config.h ; \
                  echo "... with console on COM12" ; \
                }
-       @./mkconfig -a mcc200 ppc mpc5xxx mcc200
+       @[ -z "$(findstring prs200,$@)" ] || \
+               { echo "#define CONFIG_PRS200"  >>include/config.h ;\
+               }
+       @./mkconfig -n $@ -a mcc200 ppc mpc5xxx mcc200
 
 o2dnt_config:
        @./mkconfig o2dnt ppc mpc5xxx o2dnt
index a822559..1922723 100644 (file)
@@ -22,7 +22,7 @@
 #
 
 #
-# MCC200 board:
+# MCC200, PRS200 boards:
 #
 #      Valid values for TEXT_BASE are:
 #
index 775030c..9c57809 100644 (file)
@@ -197,7 +197,11 @@ long int initdram (int board_type)
 
 int checkboard (void)
 {
+#if defined(CONFIG_PRS200)
+       puts ("Board: PRS200\n");
+#else
        puts ("Board: MCC200\n");
+#endif
        return 0;
 }
 
index 563f797..aead49a 100644 (file)
  *
  *  CONFIG_PSC_CONSOLE must be undefined in this case.
  */
+#if !defined(CONFIG_PRS200)
+/* MCC200 configuration: */
 #ifdef CONFIG_CONSOLE_COM12
 #define CONFIG_QUART_CONSOLE   6       /* console is on UARTF of QUART2        */
 #else
 #define CONFIG_QUART_CONSOLE   8       /* console is on UARTH of QUART2        */
 #endif
+#else
+/* PRS200 configuration: */
+#undef CONFIG_QUART_CONSOLE
+#endif /* CONFIG_PRS200 */
 /*
  *  To select console on PSC1, define CONFIG_PSC_CONSOLE as 1
  * and undefine CONFIG_QUART_CONSOLE.
  */
-/*#define CONFIG_PSC_CONSOLE   1       */ /* console is on PSC1                */
+#if !defined(CONFIG_PRS200)
+/* MCC200 configuration: */
+#undef CONFIG_PSC_CONSOLE
+#else
+/* PRS200 configuration: */
+#define CONFIG_PSC_CONSOLE     1       /* console is on PSC1           */
+#endif
 #if defined(CONFIG_QUART_CONSOLE) && defined(CONFIG_PSC_CONSOLE)
 #error "Select only one console device!"
 #endif
 
 #undef CONFIG_BOOTARGS
 
-#define        CONFIG_EXTRA_ENV_SETTINGS                                       \
+#define XMK_STR(x)     #x
+#define MK_STR(x)      XMK_STR(x)
+
+#ifdef CONFIG_PRS200
+# define CFG__BOARDNAME "prs200"
+#else
+# define CFG__BOARDNAME "mcc200"
+#endif
+
+#define CONFIG_EXTRA_ENV_SETTINGS                                      \
        "netdev=eth0\0"                                                 \
-       "hostname=mcc200\0"                                             \
+       "hostname=" CFG__BOARDNAME "\0"                                 \
        "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
                "nfsroot=${serverip}:${rootpath}\0"                     \
        "ramargs=setenv bootargs root=/dev/ram rw\0"                    \
        "addip=setenv bootargs ${bootargs} "                            \
                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
                ":${hostname}:${netdev}:off panic=1\0"                  \
-       "flash_nfs=run nfsargs addip;"                                  \
+       "addcons=etenv bootargs ${bootargs} "                           \
+               "console=${console},${baudrate}\0"                      \
+       "flash_nfs=run nfsargs addip addcons;"                          \
                "bootm ${kernel_addr}\0"                                \
-       "flash_self=run ramargs addip;"                                 \
+       "flash_self=run ramargs addip addcons;"                         \
                "bootm ${kernel_addr} ${ramdisk_addr}\0"                \
-       "net_nfs=tftp 200000 ${bootfile};run nfsargs addip;bootm\0"     \
+       "net_nfs=tftp 200000 ${bootfile};"                              \
+               "run nfsargs addip addcons;bootm\0"                     \
+       "console=ttyS0\0"                                               \
        "rootpath=/opt/eldk/ppc_6xx\0"                                  \
-       "bootfile=/tftpboot/mcc200/uImage\0"                            \
-       "baudrate=115200\0"                                             \
-       "load=tftp 200000 /tftpboot/mcc200/u-boot.bin\0"                \
-       "update=protect off FFF00000 +${filesize};"                     \
-               "era FFF00000 +${filesize};"                            \
-               "cp.b 200000 FFF00000 ${filesize}\0"                    \
-       "serverip=192.168.1.1\0"                                        \
-       "ipaddr=192.168.133.144\0"                                      \
-       "netmask=255.255.0.0\0"                                         \
+       "bootfile=/tftpboot/" CFG__BOARDNAME "/uImage\0"                \
+       "load=tftp 200000 /tftpboot/" CFG__BOARDNAME "/u-boot.bin\0"    \
+       "text_base=" MK_STR(TEXT_BASE) "\0"                             \
+       "update=protect off ${text_base} +${filesize};"                 \
+               "era ${text_base} +${filesize};"                        \
+               "cp.b 200000 ${text_base} ${filesize}\0"                \
        "unlock=yes\0"                                                  \
-       "ethaddr=00:02:44:7D:73:3B\0"                                   \
        ""
+#undef MK_STR
+#undef XMK_STR
 
 #define CONFIG_BOOTCOMMAND     "run flash_self"
 
  * One of four SC16C554 UARTs is selected with
  * A3-A4 (DA5-DA6) lines.
  */
-#if (CONFIG_QUART_CONSOLE > 0) && (CONFIG_QUART_CONSOLE < 5)
+#if (CONFIG_QUART_CONSOLE > 0) && (CONFIG_QUART_CONSOLE < 5) && !defined(CONFIG_PRS200)
 #define CFG_NS16550_COM1       (CFG_CS2_START | (CONFIG_QUART_CONSOLE - 1)<<5)
 #elif (CONFIG_QUART_CONSOLE > 4) && (CONFIG_QUART_CONSOLE < 9)
 #define CFG_NS16550_COM1       (CFG_CS1_START | (CONFIG_QUART_CONSOLE - 5)<<5)