Add Xilinx Spartan3 family FPGA support
Patch by Kurt Stremerch, 14 February 2005
diff --git a/common/xilinx.c b/common/xilinx.c
index b2e6169..40ce3bc 100644
--- a/common/xilinx.c
+++ b/common/xilinx.c
@@ -30,6 +30,7 @@
 #include <common.h>
 #include <virtex2.h>
 #include <spartan2.h>
+#include <spartan3.h>
 
 #if (CONFIG_FPGA & CFG_FPGA_XILINX)
 
@@ -67,6 +68,16 @@
 					__FUNCTION__);
 #endif
 			break;
+		case Xilinx_Spartan3:
+#if (CONFIG_FPGA & CFG_SPARTAN3)
+			PRINTF ("%s: Launching the Spartan-III Loader...\n",
+					__FUNCTION__);
+			ret_val = Spartan3_load (desc, buf, bsize);
+#else
+			printf ("%s: No support for Spartan-III devices.\n",
+					__FUNCTION__);
+#endif
+			break;
 		case Xilinx_Virtex2:
 #if (CONFIG_FPGA & CFG_VIRTEX2)
 			PRINTF ("%s: Launching the Virtex-II Loader...\n",
@@ -104,6 +115,16 @@
 					__FUNCTION__);
 #endif
 			break;
+		case Xilinx_Spartan3:
+#if (CONFIG_FPGA & CFG_SPARTAN3)
+			PRINTF ("%s: Launching the Spartan-III Reader...\n",
+					__FUNCTION__);
+			ret_val = Spartan3_dump (desc, buf, bsize);
+#else
+			printf ("%s: No support for Spartan-III devices.\n",
+					__FUNCTION__);
+#endif
+			break;
 		case Xilinx_Virtex2:
 #if (CONFIG_FPGA & CFG_VIRTEX2)
 			PRINTF ("%s: Launching the Virtex-II Reader...\n",
@@ -133,6 +154,9 @@
 		case Xilinx_Spartan2:
 			printf ("Spartan-II\n");
 			break;
+		case Xilinx_Spartan3:
+			printf ("Spartan-III\n");
+			break;
 		case Xilinx_Virtex2:
 			printf ("Virtex-II\n");
 			break;
@@ -182,6 +206,15 @@
 						__FUNCTION__);
 #endif
 				break;
+			case Xilinx_Spartan3:
+#if (CONFIG_FPGA & CFG_SPARTAN3)
+				Spartan3_info (desc);
+#else
+				/* just in case */
+				printf ("%s: No support for Spartan-III devices.\n",
+						__FUNCTION__);
+#endif
+				break;
 			case Xilinx_Virtex2:
 #if (CONFIG_FPGA & CFG_VIRTEX2)
 				Virtex2_info (desc);
@@ -223,6 +256,14 @@
 					__FUNCTION__);
 #endif
 			break;
+		case Xilinx_Spartan3:
+#if (CONFIG_FPGA & CFG_SPARTAN3)
+			ret_val = Spartan3_reloc (desc, reloc_offset);
+#else
+			printf ("%s: No support for Spartan-III devices.\n",
+					__FUNCTION__);
+#endif
+			break;
 		case Xilinx_Virtex2:
 #if (CONFIG_FPGA & CFG_VIRTEX2)
 			ret_val = Virtex2_reloc (desc, reloc_offset);