diff -Nur linux-2.4.22/arch/i386/config.in linux-2.4.22_geode/arch/i386/config.in
--- linux-2.4.22/arch/i386/config.in	Mon Aug 25 13:44:39 2003
+++ linux-2.4.22_geode/arch/i386/config.in	Tue Sep  2 09:08:15 2003
@@ -42,6 +42,7 @@
 	 Winchip-C6				CONFIG_MWINCHIPC6 \
 	 Winchip-2				CONFIG_MWINCHIP2 \
 	 Winchip-2A/Winchip-3			CONFIG_MWINCHIP3D \
+	 MediaGX/Geode                          CONFIG_MGEODE \
 	 CyrixIII/VIA-C3			CONFIG_MCYRIXIII \
 	 VIA-C3-2				CONFIG_MVIAC3_2" Pentium-Pro
 #
@@ -162,6 +163,14 @@
    define_bool CONFIG_X86_ALIGNMENT_16 y
    define_bool CONFIG_X86_USE_PPRO_CHECKSUM y
    define_bool CONFIG_X86_F00F_WORKS_OK y
+fi
+if [ "$CONFIG_MGEODE" = "y" ]; then
+   define_int  CONFIG_X86_L1_CACHE_SHIFT 5
+   define_bool CONFIG_X86_USE_STRING_486 y
+   define_bool CONFIG_X86_ALIGNMENT_16 y
+   define_bool CONFIG_X86_TSC y
+   define_bool CONFIG_X86_PPRO_FENCE y
+   define_bool CONFIG_X86_OOSTORE y
 fi
 if [ "$CONFIG_MCRUSOE" = "y" ]; then
    define_int  CONFIG_X86_L1_CACHE_SHIFT 5
diff -Nur linux-2.4.22/drivers/pci/pci.c linux-2.4.22_geode/drivers/pci/pci.c
--- linux-2.4.22/drivers/pci/pci.c	Fri Jun 13 16:51:35 2003
+++ linux-2.4.22_geode/drivers/pci/pci.c	Tue Sep  2 09:09:32 2003
@@ -1476,6 +1476,10 @@
 			continue;
 		if (pci_read_config_byte(temp, PCI_HEADER_TYPE, &hdr_type))
 			continue;
+/* #ifdef CONFIG_GEODE */
+		if (hdr_type & 0x7f > PCI_HEADER_TYPE_CARDBUS)
+			continue;
+/* #endif */
 		temp->hdr_type = hdr_type & 0x7f;
 
 		dev = pci_scan_device(temp);

