[U-Boot] [PATCH] xscale: add support for the polaris board

Stefano Babic sbabic at denx.de
Wed Jun 24 10:45:26 CEST 2009


The Polaris board is based on the TrizepsIV module of
Keith & Koep (http://www.keith-koep.com).

Signed-off-by: Stefano Babic <sbabic at denx.de>
---
 MAINTAINERS                 |    4 ++++
 Makefile                    |    7 ++++++-
 board/trizepsiv/conxs.c     |   27 +++++++++++++++------------
 include/configs/trizepsiv.h |   28 +++++++++++++++++++++++-----
 4 files changed, 48 insertions(+), 18 deletions(-)

diff --git a/MAINTAINERS b/MAINTAINERS
index 9379c7e..97476e9 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -500,6 +500,10 @@ Rowel Atienza <rowel at diwalabs.com>
 
 	armadillo	ARM720T
 
+Stefano Babic <sbabic at denx.de>
+
+	trizepsiv	xscale
+
 Dirk Behme <dirk.behme at gmail.com>
 
 	omap3_beagle	ARM CORTEX-A8 (OMAP3530 SoC)
diff --git a/Makefile b/Makefile
index acec1a0..3a77988 100644
--- a/Makefile
+++ b/Makefile
@@ -3082,8 +3082,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
diff --git a/board/trizepsiv/conxs.c b/board/trizepsiv/conxs.c
index 5c0eb41..8c11456 100644
--- a/board/trizepsiv/conxs.c
+++ b/board/trizepsiv/conxs.c
@@ -44,13 +44,18 @@ 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
 /* ------------------------------------------------------------------------- */
 
 /*
  * Miscelaneous platform dependent initialisations
  */
 
-void usb_board_init(void)
+int usb_board_init(void)
 {
 	UHCHR = (UHCHR | UHCHR_PCPL | UHCHR_PSPL) &
 		~(UHCHR_SSEP0 | UHCHR_SSEP1 | UHCHR_SSEP2 | UHCHR_SSE);
@@ -71,6 +76,8 @@ void usb_board_init(void)
 
 	/* Set port power control mask bits, only 3 ports. */
 	UHCRHDB |= (0x7<<17);
+
+	return 0;
 }
 
 void usb_board_init_fail(void)
@@ -89,7 +96,6 @@ void usb_board_stop(void)
 
 	CKEN &= ~CKEN10_USBHOST;
 
-	puts("Called USB STOP\n");
 	return;
 }
 
@@ -112,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;
 }
diff --git a/include/configs/trizepsiv.h b/include/configs/trizepsiv.h
index bfa7157..170d080 100644
--- a/include/configs/trizepsiv.h
+++ b/include/configs/trizepsiv.h
@@ -93,7 +93,6 @@
 #undef CONFIG_SHOW_BOOT_PROGRESS
 
 #define CONFIG_BOOTDELAY	3
-#define CONFIG_SERVERIP		192.168.1.99
 #define CONFIG_BOOTCOMMAND	"run boot_flash"
 #define CONFIG_BOOTARGS		"console=ttyS0,38400 ramdisk_size=12288"\
 				" rw root=/dev/ram initrd=0xa0800000,5m"
@@ -239,11 +238,17 @@
 #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 */
 
@@ -259,7 +264,11 @@
 
 #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
@@ -278,9 +287,15 @@
 #define CONFIG_SYS_MCIO0_VAL		0x00008407
 #define CONFIG_SYS_MCIO1_VAL		0x0000c108
 
-#define CONFIG_NET_MULTI		1
+#define CONFIG_NET_MULTI		0
 #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)
 
@@ -312,6 +327,9 @@
 /* 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	*/
-- 
1.6.0.4



More information about the U-Boot mailing list