--- linux-2.2.14/include/linux/pci.h.810	Wed Jan 19 15:37:21 2000
+++ linux-2.2.14/include/linux/pci.h	Wed Jan 19 17:04:34 2000
@@ -272,6 +272,7 @@
 #define PCI_CLASS_SERIAL_SSA		0x0c02
 #define PCI_CLASS_SERIAL_USB		0x0c03
 #define PCI_CLASS_SERIAL_FIBER		0x0c04
+#define PCI_CLASS_SERIAL_SMBUS		0x0c05
 
 #define PCI_CLASS_HOT_SWAP_CONTROLLER	0xff00
 
@@ -1102,6 +1104,20 @@
 #define PCI_DEVICE_ID_INTEL_82380FB	0x124b
 #define PCI_DEVICE_ID_INTEL_82439	0x1250
 #define PCI_DEVICE_ID_INTEL_MEGARAID	0x1960
+#define PCI_DEVICE_ID_INTEL_82801AA_0	0x2410
+#define PCI_DEVICE_ID_INTEL_82801AA_1	0x2411
+#define PCI_DEVICE_ID_INTEL_82801AA_2	0x2412
+#define PCI_DEVICE_ID_INTEL_82801AA_3	0x2413
+#define PCI_DEVICE_ID_INTEL_82801AA_5	0x2415
+#define PCI_DEVICE_ID_INTEL_82801AA_6	0x2416
+#define PCI_DEVICE_ID_INTEL_82801AA_8	0x2418
+#define PCI_DEVICE_ID_INTEL_82801AB_0	0x2420
+#define PCI_DEVICE_ID_INTEL_82801AB_1	0x2421
+#define PCI_DEVICE_ID_INTEL_82801AB_2	0x2422
+#define PCI_DEVICE_ID_INTEL_82801AB_3	0x2423
+#define PCI_DEVICE_ID_INTEL_82801AB_5	0x2425
+#define PCI_DEVICE_ID_INTEL_82801AB_6	0x2426
+#define PCI_DEVICE_ID_INTEL_82801AB_8	0x2428
 #define PCI_DEVICE_ID_INTEL_82371SB_0	0x7000
 #define PCI_DEVICE_ID_INTEL_82371SB_1	0x7010
 #define PCI_DEVICE_ID_INTEL_82371SB_2	0x7020
@@ -1111,6 +1127,12 @@
 #define PCI_DEVICE_ID_INTEL_82371AB	0x7111
 #define PCI_DEVICE_ID_INTEL_82371AB_2	0x7112
 #define PCI_DEVICE_ID_INTEL_82371AB_3	0x7113
+#define PCI_DEVICE_ID_INTEL_82810_MC1	0x7120
+#define PCI_DEVICE_ID_INTEL_82810_IG1	0x7121
+#define PCI_DEVICE_ID_INTEL_82810_MC3	0x7122
+#define PCI_DEVICE_ID_INTEL_82810_IG3	0x7123
+#define PCI_DEVICE_ID_INTEL_82810E_MC	0x7124
+#define PCI_DEVICE_ID_INTEL_82810E_IG	0x7125
 #define PCI_DEVICE_ID_INTEL_82443LX_0	0x7180
 #define PCI_DEVICE_ID_INTEL_82443LX_1	0x7181
 #define PCI_DEVICE_ID_INTEL_82443BX_0	0x7190
--- linux-2.2.14/drivers/block/ide-pci.c.810	Wed Jan 19 15:46:38 2000
+++ linux-2.2.14/drivers/block/ide-pci.c	Wed Jan 19 16:16:30 2000
@@ -29,6 +29,8 @@
 #define DEVID_PIIXb	((ide_pci_devid_t){PCI_VENDOR_ID_INTEL,   PCI_DEVICE_ID_INTEL_82371FB_1})
 #define DEVID_PIIX3	((ide_pci_devid_t){PCI_VENDOR_ID_INTEL,   PCI_DEVICE_ID_INTEL_82371SB_1})
 #define DEVID_PIIX4	((ide_pci_devid_t){PCI_VENDOR_ID_INTEL,   PCI_DEVICE_ID_INTEL_82371AB})
+#define DEVID_PIIX4U	((ide_pci_devid_t){PCI_VENDOR_ID_INTEL,   PCI_DEVICE_ID_INTEL_82801AA_1})
+#define DEVID_PIIX4E	((ide_pci_devid_t){PCI_VENDOR_ID_INTEL,   PCI_DEVICE_ID_INTEL_82801AB_1})
 #define DEVID_VP_IDE	((ide_pci_devid_t){PCI_VENDOR_ID_VIA,     PCI_DEVICE_ID_VIA_82C586_1})
 #define DEVID_PDC20246	((ide_pci_devid_t){PCI_VENDOR_ID_PROMISE, PCI_DEVICE_ID_PROMISE_20246})
 #define DEVID_RZ1000	((ide_pci_devid_t){PCI_VENDOR_ID_PCTECH,  PCI_DEVICE_ID_PCTECH_RZ1000})
@@ -124,6 +126,8 @@ static ide_pci_device_t ide_pci_chipsets
 	{DEVID_PIIXb,	"PIIX",		NULL,		{{0x41,0x80,0x80}, {0x43,0x80,0x80}}, 	ON_BOARD,	0 },
 	{DEVID_PIIX3,	"PIIX3",	NULL,		{{0x41,0x80,0x80}, {0x43,0x80,0x80}}, 	ON_BOARD,	0 },
 	{DEVID_PIIX4,	"PIIX4",	NULL,		{{0x41,0x80,0x80}, {0x43,0x80,0x80}}, 	ON_BOARD,	0 },
+	{DEVID_PIIX4E,	"PIIX4E",	NULL,		{{0x41,0x80,0x80}, {0x43,0x80,0x80}}, 	ON_BOARD,	0 },
+	{DEVID_PIIX4U,	"PIIX4U",	NULL,		{{0x41,0x80,0x80}, {0x43,0x80,0x80}}, 	ON_BOARD,	0 },
 	{DEVID_VP_IDE,	"VP_IDE",	INIT_VIA82C586,	{{0x40,0x02,0x02}, {0x40,0x01,0x01}}, 	ON_BOARD,	0 },
 	{DEVID_PDC20246,"PDC20246",	NULL,		{{0x50,0x02,0x02}, {0x50,0x04,0x04}}, 	OFF_BOARD,	16 },
 	{DEVID_RZ1000,	"RZ1000",	INIT_RZ1000,	{{0x00,0x00,0x00}, {0x00,0x00,0x00}}, 	ON_BOARD,	0 },
--- linux-2.2.14/drivers/block/ide-dma.c.810	Wed Jan 19 17:30:23 2000
+++ linux-2.2.14/drivers/block/ide-dma.c	Wed Jan 19 17:40:54 2000
@@ -270,6 +270,10 @@ static int config_drive_for_dma (ide_dri
 		/* Consult the list of known "bad" drives */
 		if (check_drive_lists(drive, BAD_DMA_DRIVE))
 			return hwif->dmaproc(ide_dma_off, drive);
+		/* Enable DMA on any drive that has UltraDMA (mode 3/4) enabled */
+		if (id->field_valid & 4)
+			if  ((id->dma_ultra & (id->dma_ultra >> 11) & 3))
+				return hwif->dmaproc(ide_dma_on, drive);
 		/* Enable DMA on any drive that has UltraDMA (mode 0/1/2) enabled */
 		if (id->field_valid & 4)	/* UltraDMA */
 			if  ((id->dma_ultra & (id->dma_ultra >> 8) & 7))
--- linux-2.2.14/drivers/pci/oldproc.c.810	Wed Jan 19 15:51:57 2000
+++ linux-2.2.14/drivers/pci/oldproc.c	Wed Jan 19 17:04:36 2000
@@ -533,6 +533,20 @@ struct pci_dev_info dev_info[] = {
 	DEVICE( INTEL,		INTEL_82380FB,	"82380FB Mobile"),
 	DEVICE( INTEL,		INTEL_82439,	"82439HX Triton II"),
 	DEVICE(	INTEL,		INTEL_MEGARAID,	"OEM MegaRAID Controller"),
+	DEVICE( INTEL,		INTEL_82801AA_0,"82801AA PIIX4U ISA"),
+	DEVICE( INTEL,		INTEL_82801AA_1,"82801AA PIIX4U IDE"),
+	DEVICE( INTEL,		INTEL_82801AA_2,"82801AA PIIX4U USB"),
+	DEVICE( INTEL,		INTEL_82801AA_3,"82801AA PIIX4U ACPI"),
+	DEVICE( INTEL,		INTEL_82801AA_5,"82801AA PIIX4U Audio"),
+	DEVICE( INTEL,		INTEL_82801AA_6,"82801AA PIIX4U Modem"),
+	DEVICE( INTEL,		INTEL_82801AA_8,"82801AA PIIX4U Hub to PCI"),
+	DEVICE( INTEL,		INTEL_82801AB_0,"82801AB PIIX4E ISA"),
+	DEVICE( INTEL,		INTEL_82801AB_1,"82801AB PIIX4E IDE"),
+	DEVICE( INTEL,		INTEL_82801AB_2,"82801AB PIIX4E USB"),
+	DEVICE( INTEL,		INTEL_82801AB_3,"82801AB PIIX4E ACPI"),
+	DEVICE( INTEL,		INTEL_82801AB_5,"82801AB PIIX4E Audio"),
+	DEVICE( INTEL,		INTEL_82801AB_6,"82801AB PIIX4E Modem"),
+	DEVICE( INTEL,		INTEL_82801AB_8,"82801AB PIIX4E Hub to PCI"),
 	DEVICE(	INTEL,		INTEL_82371SB_0,"82371SB PIIX3 ISA"),
 	DEVICE(	INTEL,		INTEL_82371SB_1,"82371SB PIIX3 IDE"),
 	DEVICE( INTEL,		INTEL_82371SB_2,"82371SB PIIX3 USB"),
@@ -542,6 +556,12 @@ struct pci_dev_info dev_info[] = {
 	DEVICE( INTEL,		INTEL_82371AB,	"82371AB PIIX4 IDE"),
 	DEVICE( INTEL,		INTEL_82371AB_2,"82371AB PIIX4 USB"),
 	DEVICE( INTEL,		INTEL_82371AB_3,"82371AB PIIX4 ACPI"),
+ 	DEVICE( INTEL,		INTEL_82810_MC1,"82810 Memory Controller"),
+ 	DEVICE( INTEL,		INTEL_82810_IG1,"82810 Graphics Controller"),
+ 	DEVICE( INTEL,		INTEL_82810_MC3,"82810 Memory Controller"),
+ 	DEVICE( INTEL,		INTEL_82810_IG3,"82810 Graphics Controller"),
+ 	DEVICE( INTEL,		INTEL_82810E_MC,"82810E Memory Controller"),
+ 	DEVICE( INTEL,		INTEL_82810E_IG,"82810E Graphics Controller"),
 	DEVICE( INTEL,		INTEL_82443LX_0,"440LX - 82443LX PAC Host"),
 	DEVICE( INTEL,		INTEL_82443LX_1,"440LX - 82443LX PAC AGP"),
 	DEVICE( INTEL,		INTEL_82443BX_0,"440BX - 82443BX Host"),
@@ -710,6 +730,7 @@ static const char *pci_strclass (unsigne
 	      case PCI_CLASS_SERIAL_SSA:		return "SSA";
 	      case PCI_CLASS_SERIAL_USB:		return "USB Controller";
 	      case PCI_CLASS_SERIAL_FIBER:		return "Fiber Channel";
+	      case PCI_CLASS_SERIAL_SMBUS:		return "SM Bus";
 
 	      case PCI_CLASS_HOT_SWAP_CONTROLLER:	return "Hot Swap Controller";
 
