xscale: add support for the polaris board
authorStefano Babic <sbabic@denx.de>
Wed, 1 Jul 2009 18:40:41 +0000 (20:40 +0200)
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Mon, 6 Jul 2009 19:52:58 +0000 (21:52 +0200)
The Polaris board is based on the TrizepsIV module of
Keith & Koep (http://www.keith-koep.com).

Signed-off-by: Stefano Babic <sbabic@denx.de>
MAINTAINERS
MAKEALL
Makefile
board/trizepsiv/conxs.c
include/configs/trizepsiv.h

index b0e370f7b3f903537b7638e5dc4a7355a659dd18..41e6830b239734b13af026b60883dd6a41f3c9fe 100644 (file)
@@ -501,6 +501,11 @@ Rowel Atienza <rowel@diwalabs.com>
 
        armadillo       ARM720T
 
+Stefano Babic <sbabic@denx.de>
+
+       polaris         xscale
+       trizepsiv       xscale
+
 Dirk Behme <dirk.behme@gmail.com>
 
        omap3_beagle    ARM CORTEX-A8 (OMAP3530 SoC)
diff --git a/MAKEALL b/MAKEALL
index 027207d1a31d2c4a556e8e2fa16b819c29aac103..e6f6c147de0d4a6b277138a25626755a54daddde 100755 (executable)
--- a/MAKEALL
+++ b/MAKEALL
@@ -607,7 +607,9 @@ LIST_pxa="          \
        innokom         \
        lubbock         \
        pleb2           \
+       polaris         \
        pxa255_idp      \
+       trizepsiv       \
        wepep250        \
        xaeniax         \
        xm250           \
index 0ae1d3602264a4e319fda9fbdc9c68d7b4275dcd..9b9f7bfef2a7fc3b89d9aac5c8307c7d226e319f 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -3095,8 +3095,13 @@ scpu_config:     unconfig
 pxa255_idp_config:     unconfig
        @$(MKCONFIG) $(@:_config=) arm pxa pxa255_idp
 
+polaris_config \
 trizepsiv_config       :       unconfig
-       @$(MKCONFIG) $(@:_config=) arm pxa trizepsiv
+       @mkdir -p $(obj)include
+       @if [ "$(findstring polaris,$@)" ] ; then \
+               echo "#define CONFIG_POLARIS 1" >>$(obj)include/config.h ; \
+       fi;
+       @$(MKCONFIG) -a trizepsiv arm pxa trizepsiv
 
 wepep250_config        :       unconfig
        @$(MKCONFIG) $(@:_config=) arm pxa wepep250
index 53b6e0014e30c47264cdf107b3fa3c892acfeab7..8c1145629f130044b293c2beac12c72e4b5b2d3e 100644 (file)
@@ -44,6 +44,11 @@ extern struct serial_device serial_ffuart_device;
 extern struct serial_device serial_btuart_device;
 extern struct serial_device serial_stuart_device;
 
+#if CONFIG_POLARIS
+#define BOOT_CONSOLE   "serial_stuart"
+#else
+#define BOOT_CONSOLE   "serial_ffuart"
+#endif
 /* ------------------------------------------------------------------------- */
 
 /*
@@ -113,17 +118,14 @@ int board_late_init(void)
 #if defined(CONFIG_SERIAL_MULTI)
        char *console=getenv("boot_console");
 
-       if ((strcmp(console,"serial_btuart") == 0) ||
-               (strcmp(console,"serial_stuart") == 0) ||
-               (strcmp(console,"serial_ffuart") == 0)) {
-                       setenv("stdout",console);
-                       setenv("stdin", console);
-                       setenv("stderr",console);
-       } else {
-               setenv("stdout", "serial");
-               setenv("stdin", "serial");
-               setenv("stderr", "serial");
+       if ((console == NULL) || (strcmp(console,"serial_btuart") &&
+               strcmp(console,"serial_stuart") &&
+               strcmp(console,"serial_ffuart"))) {
+                       console = BOOT_CONSOLE;
        }
+       setenv("stdout",console);
+       setenv("stdin", console);
+       setenv("stderr",console);
 #endif
        return 0;
 }
index bfa7157214f2a12eeaf31105e8a6ed1c5c79f96e..fa5aae8a5c5c773f46650e61109d4d962c4da507 100644 (file)
 #define CONFIG_SYS_GRER1_VAL           0x00000000
 #define CONFIG_SYS_GRER2_VAL           0x00000000
 #define CONFIG_SYS_GRER3_VAL           0x00000000
-#define CONFIG_SYS_GFER0_VAL           0x00000000
+
 #define CONFIG_SYS_GFER1_VAL           0x00000000
-#define CONFIG_SYS_GFER2_VAL           0x00000000
 #define CONFIG_SYS_GFER3_VAL           0x00000020
 
+#if CONFIG_POLARIS
+#define CONFIG_SYS_GFER0_VAL           0x00000001
+#define CONFIG_SYS_GFER2_VAL           0x00200000
+#else
+#define CONFIG_SYS_GFER0_VAL           0x00000000
+#define CONFIG_SYS_GFER2_VAL           0x00000000
+#endif
 
 #define CONFIG_SYS_PSSR_VAL            0x20    /* CHECK */
 
 
 #define CONFIG_SYS_MSC0_VAL            0x4df84df0
 #define CONFIG_SYS_MSC1_VAL            0x7ff87ff4
+#if CONFIG_POLARIS
+#define CONFIG_SYS_MSC2_VAL            0xa2697ff8
+#else
 #define CONFIG_SYS_MSC2_VAL            0xa26936d4
+#endif
 #define CONFIG_SYS_MDCNFG_VAL          0x880009C9
 #define CONFIG_SYS_MDREFR_VAL          0x20ca201e
 #define CONFIG_SYS_MDMRS_VAL           0x00220022
 
 #define CONFIG_NET_MULTI               1
 #define CONFIG_DRIVER_DM9000           1
-#define CONFIG_DM9000_BASE     0x08000000
+
+#if CONFIG_POLARIS
+#define CONFIG_DM9000_BASE             0x0C800000
+#else
+#define CONFIG_DM9000_BASE             0x08000000
+#endif
+
 #define DM9000_IO                      CONFIG_DM9000_BASE
 #define DM9000_DATA                    (CONFIG_DM9000_BASE+0x8004)
 
 /* write flash less slowly */
 #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 1
 
+/* Unlock to be used with Intel chips */
+#define CONFIG_SYS_FLASH_PROTECTION    1
+
 /* Flash environment locations */
 #define CONFIG_ENV_IS_IN_FLASH 1
 #define CONFIG_ENV_ADDR                (PHYS_FLASH_1 + CONFIG_SYS_MONITOR_LEN) /* Addr of Environment Sector   */