* Add support for SK98xx driver

* Add PCI support for SL8245 board

* Support IceCube board configurations with 1 x AMD AM29LV065 (8 MB)
  or 1 x AM29LV652 (two LV065 in one chip = 16 MB);
  Run IPB at 133 Mhz; adjust the MII clock frequency accordingly

* Set BRG_CLK on PM825/826 to 64MHz (VCO_OUT / 4, instead of 16  MHz)
  to allow for more accurate baudrate settings
  (error now 0.7% at 115 kbps, instead of 3.5% before)

* Patch by Andreas Mohr, 4 Sep 2003:
  Fix a lot of spelling errors
diff --git a/include/configs/IceCube.h b/include/configs/IceCube.h
index 352beae..44ea654 100644
--- a/include/configs/IceCube.h
+++ b/include/configs/IceCube.h
@@ -102,13 +102,20 @@
 /*
  * Flash configuration
  */
+#define CFG_FLASH_16M		1
+
+#if !defined(CFG_FLASH_16M) /* 8Mb chips support only */
 #define CFG_FLASH_BASE		0xff800000
 #define CFG_FLASH_SIZE		0x00800000
-
-/*
- * Flash organization
- */
 #define CFG_MAX_FLASH_BANKS	1	/* max num of memory banks      */
+#define CFG_ENV_ADDR		(CFG_FLASH_BASE + 0x740000)
+#else
+#define CFG_FLASH_BASE		0xff000000
+#define CFG_FLASH_SIZE		0x01000000
+#define CFG_ENV_ADDR		(CFG_FLASH_BASE + 0x740000 + 0x800000)
+#define CFG_MAX_FLASH_BANKS	2	/* max num of memory banks      */
+#endif
+
 #define CFG_MAX_FLASH_SECT	128	/* max num of sects on one chip */
 
 #define CFG_FLASH_ERASE_TOUT	240000	/* Flash Erase Timeout (in ms)  */
@@ -122,7 +129,6 @@
  */
 #define CFG_ENV_IS_IN_FLASH	1
 #define CFG_ENV_SIZE		0x10000
-#define CFG_ENV_ADDR		(CFG_FLASH_BASE + 0x740000)
 #define CFG_ENV_SECT_SIZE	0x10000
 #define CONFIG_ENV_OVERWRITE	1
 
diff --git a/include/configs/P3G4.h b/include/configs/P3G4.h
index d7bfe81..17774a3 100644
--- a/include/configs/P3G4.h
+++ b/include/configs/P3G4.h
@@ -84,10 +84,10 @@
 
 #undef	CONFIG_BOOTARGS
 #define CONFIG_BOOTCOMMAND						     \
-	"bootp && " 						     \
+	"bootp;" 						     \
 	"setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath " \
 	"ip=$ipaddr:$serverip:$gatewayip:" \
-	"$netmask:$hostname:eth0:none; && " \
+	"$netmask:$hostname:eth0:none;" \
 	"bootm"
 
 #define CONFIG_LOADS_ECHO	0	/* echo off for serial download	*/
diff --git a/include/configs/PM826.h b/include/configs/PM826.h
index 6668578..dc70515 100644
--- a/include/configs/PM826.h
+++ b/include/configs/PM826.h
@@ -411,7 +411,7 @@
  * SCCR - System Clock Control                                   9-8
  *-----------------------------------------------------------------------
  */
-#define CFG_SCCR        (SCCR_DFBRG01)
+#define CFG_SCCR        (SCCR_DFBRG00)
 
 /*-----------------------------------------------------------------------
  * RCCR - RISC Controller Configuration                         13-7
diff --git a/include/configs/SL8245.h b/include/configs/SL8245.h
index ec875f6..4b69456 100644
--- a/include/configs/SL8245.h
+++ b/include/configs/SL8245.h
@@ -51,7 +51,7 @@
 
 #define CONFIG_BOOTDELAY	5
 
-#define CONFIG_COMMANDS		( CONFIG_CMD_DFL & ~CFG_CMD_NET )
+#define CONFIG_COMMANDS		(CONFIG_CMD_DFL | CFG_CMD_PCI)
 
 /* this must be included AFTER the definition of CONFIG_COMMANDS (if any) 	*/
 
@@ -265,4 +265,17 @@
 #define BOOTFLAG_COLD		0x01	/* Normal Power-On: Boot from FLASH	*/
 #define BOOTFLAG_WARM		0x02	/* Software reboot			*/
 
+/*-----------------------------------------------------------------------
+ * PCI stuff
+ *-----------------------------------------------------------------------
+ */
+#define CONFIG_PCI
+#define CONFIG_PCI_PNP
+#undef  CONFIG_PCI_SCAN_SHOW
+
+
+#define CONFIG_SK98
+#define CONFIG_NET_MULTI
+
+
 #endif	/* __CONFIG_H */
diff --git a/include/mpc5xxx.h b/include/mpc5xxx.h
index 4218b05..02683e3 100644
--- a/include/mpc5xxx.h
+++ b/include/mpc5xxx.h
@@ -40,6 +40,15 @@
 /* Exception offsets (PowerPC standard) */
 #define EXC_OFF_SYS_RESET	0x0100
 
+/* useful macros for manipulating CSx_START/STOP */
+#if defined(CONFIG_MGT5100)
+#define START_REG(start)	((start) >> 15)
+#define STOP_REG(start, size)	(((start) + (size) - 1) >> 15)
+#elif defined(CONFIG_MPC5200)
+#define START_REG(start)	((start) >> 16)
+#define STOP_REG(start, size)	(((start) + (size) - 1) >> 16)
+#endif
+
 /* Internal memory map */
 
 #define MPC5XXX_CS0_START	(CFG_MBAR + 0x0004)
diff --git a/include/pci_ids.h b/include/pci_ids.h
index 2ea4894..df341ce 100644
--- a/include/pci_ids.h
+++ b/include/pci_ids.h
@@ -892,6 +892,7 @@
 #define PCI_DEVICE_ID_SYSKONNECT_FP	0x4000
 #define PCI_DEVICE_ID_SYSKONNECT_TR	0x4200
 #define PCI_DEVICE_ID_SYSKONNECT_GE	0x4300
+#define PCI_DEVICE_ID_SYSKONNECT_GE_SA	0x4320
 
 #define PCI_VENDOR_ID_VMIC		0x114a
 #define PCI_DEVICE_ID_VMIC_VME		0x7587