Index: src/southbridge/sis/sis966/sis966_aza.c
===================================================================
--- src/southbridge/sis/sis966/sis966_aza.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966_aza.c	(working copy)
@@ -328,6 +328,6 @@
 static const struct pci_driver azaaudio_driver __pci_driver = {
 	.ops	= &aza_audio_ops,
 	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_AZA,
+	.device	= PCI_DEVICE_ID_SIS_SIS966_HD_AUDIO,
 };

Index: src/southbridge/sis/sis966/sis966.c
===================================================================
--- src/southbridge/sis/sis966/sis966.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966.c	(working copy)
@@ -70,6 +70,10 @@
 	uint16_t vendorid;
 	uint16_t devfn;

+
+	//printk_debug("sis966_enable: ---------->\n");
+
+
 	struct southbridge_sis_sis966_config *conf;
 	conf = dev->chip_info;
 	int i;
@@ -85,9 +89,6 @@

 	devfn = (dev->path.u.pci.devfn) & ~7;
 	switch(deviceid) {
-		case PCI_DEVICE_ID_SIS_SIS966_HT:
-			return;
-			break;
 		case PCI_DEVICE_ID_SIS_SIS966_USB:
 			devfn -= (1<<3);
 			index = 8;
@@ -96,7 +97,7 @@
 			devfn -= (1<<3);
 			index = 20;
 			break;
-		case PCI_DEVICE_ID_SIS_SIS966_NIC1:
+		case PCI_DEVICE_ID_SIS_SIS966_NIC:
 			devfn -= (7<<3);
 			index = 10;
 			for(i=0;i<2;i++) {
@@ -107,7 +108,7 @@
 				break;
 			}
 			break;
-		case PCI_DEVICE_ID_SIS_SIS966_AZA:
+		case PCI_DEVICE_ID_SIS_SIS966_HD_AUDIO:
 			devfn -= (5<<3);
 			index = 11;
 			break;
@@ -115,7 +116,7 @@
 			devfn -= (3<<3);
 			index = 14;
 			break;
-		case PCI_DEVICE_ID_SIS_SIS966_SATA0:
+		case PCI_DEVICE_ID_SIS_SIS966_SATA:
 			devfn -= (4<<3);
 			index = 22;
 			i = (dev->path.u.pci.devfn) & 7;
@@ -123,33 +124,10 @@
 				index -= (i+3);
 			}
 			break;
-		case PCI_DEVICE_ID_SIS_SIS966_PCI:
-			devfn -= (5<<3);
-			index = 15;
+		case PCI_DEVICE_ID_SIS_SIS966_PCIE:
+			devfn -= (0x9<<3);  // to LPC
+			index2 = 9;
 			break;
-		case PCI_DEVICE_ID_SIS_SIS966_PCIE_B_C:
-			devfn -= (0xa<<3);  // to LPC
-			index2 = 8;
-			for(i=0;i<2;i++) {
-				lpc_dev = find_lpc_dev(dev, devfn - (i<<3));
-				if(!lpc_dev) continue;
-				index2 -= i;
-				devfn -= (i<<3);
-				break;
-			}
-			break;
-		case PCI_DEVICE_ID_SIS_SIS966_PCIE_D:
-			devfn -= (0xc<<3);  // to LPC
-			index2 = 6;
-			break;
-		case PCI_DEVICE_ID_SIS_SIS966_PCIE_E:
-			devfn -= (0xd<<3);  // to LPC
-			index2 = 5;
-			break;
-		case PCI_DEVICE_ID_SIS_SIS966_PCIE_F:
-			devfn -= (0xe<<3);  // to LPC
-			index2 = 4;
-			break;
 		default:
 			index = 0;
 	}
@@ -191,7 +169,6 @@
 		byte = pci_read_config8(lpc_dev, 0xdd);
 		byte |= ((1<<0)|(1<<3)); // expose the BAR and enable write
 		pci_write_config8(dev, 0xdd, byte);
-
 		return;

 	}
@@ -220,7 +197,7 @@

 	}

-
+	//printk_debug("sis966_enable: <----------\n");
 }

 struct chip_operations southbridge_sis_sis966_ops = {
Index: src/southbridge/sis/sis966/sis966_pcie.c
===================================================================
--- src/southbridge/sis/sis966/sis966_pcie.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966_pcie.c	(working copy)
@@ -61,26 +61,6 @@
 static const struct pci_driver pciebc_driver __pci_driver = {
 	.ops	= &pcie_ops,
 	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_PCIE_B_C,
+	.device	= PCI_DEVICE_ID_SIS_SIS966_PCIE,
 };
-static const struct pci_driver pciee_driver __pci_driver = {
-	.ops	= &pcie_ops,
-	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_PCIE_E,
-};
-static const struct pci_driver pciea_driver __pci_driver = {
-	.ops	= &pcie_ops,
-	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_PCIE_A,
-};
-static const struct pci_driver pcief_driver __pci_driver = {
-	.ops	= &pcie_ops,
-	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_PCIE_F,
-};
-static const struct pci_driver pcied_driver __pci_driver = {
-	.ops	= &pcie_ops,
-	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_PCIE_D,
-};

Index: src/southbridge/sis/sis966/sis966_early_smbus.c
===================================================================
--- src/southbridge/sis/sis966/sis966_early_smbus.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966_early_smbus.c	(working copy)
@@ -59,6 +59,7 @@
 {0xDF, 0x00, 0xAA},					//Reg 0xDF
 {0x00, 0x00, 0x00}					//End of table
 };
+
 static const uint8_t	SiS_NBPCIE_init[43][3]={
 {0x3D, 0x00, 0x00},					//Reg 0x3D
 {0x1C, 0xFE, 0x01},					//Reg 0x1C
@@ -80,7 +81,6 @@
 {0x5E, 0x00, 0x10},					//Reg 0x5E
 {0x34, 0x00, 0xD0},					//Reg 0x34
 {0xD0, 0x00, 0x01},					//Reg 0xD0
-
 {0x4F, 0x00, 0x80},					//Reg 0x4F
 {0xA1, 0x00, 0xF4},					//Reg 0xA1
 {0xA2, 0x7F, 0x00},					//Reg 0xA2
@@ -105,6 +105,7 @@
 {0x4F, 0x00, 0x00},					//Reg 0x4F
 {0x00, 0x00, 0x00}					//End of table
 };
+
 static const uint8_t	SiS_ACPI_init[10][3]={
 {0x1B, 0xBF, 0x40},					//Reg 0x1B
 {0x84, 0x00, 0x0E},					//Reg 0x84
@@ -117,6 +118,7 @@
 {0x6F, 0xFF, 0x14},					//Reg 0x6F
 {0x00, 0x00, 0x00}					//End of table
 };
+
 static const uint8_t	SiS_SBPCIE_init[13][3]={
 {0x48, 0x00 ,0x07},					//Reg 0x48
 {0x49, 0x00 ,0x06},					//Reg 0x49
@@ -133,8 +135,6 @@
 {0x00, 0x00, 0x00}					//End of table
 };

-
-
 static const uint8_t	SiS_NB_init[56][3]={
 {0x04, 0x00 ,0x07},					//Reg 0x04
 {0x05, 0x00 ,0x00},					//Reg 0x05 // alex
@@ -191,11 +191,9 @@
 {0x97, 0x00 ,0x00},					//Reg 0x97
 {0x98, 0x00 ,0x00},					//Reg 0x98
 {0x99, 0x00 ,0x00},					//Reg 0x99
-
 {0x00, 0x00, 0x00}					//End of table
 };

-
 static const uint8_t SiS_NBAGP_init[34][3]={
 {0xCF, 0xDF, 0x00},      //HT issue
 {0x06, 0xDF, 0x20},
@@ -230,8 +228,6 @@
 {0xBF, 0xF9, 0x06},
 {0xBA, 0x00, 0x61},
 {0xBD, 0x7F, 0x80},
-
-
 {0x00, 0x00, 0x00}     //End of table
 };

@@ -302,7 +298,7 @@
 {0x2E, 0x00, 0x83},
 {0x2F, 0x00, 0x11},
 {0x90, 0x00, 0x40},
-{0x91, 0x00, 0x00},	// set mode
+{0x91, 0x00, 0x00},         // set mode
 {0x50, 0x00, 0xA2},
 {0x52, 0x00, 0xA2},
 {0x55, 0x00, 0x96},
@@ -317,7 +313,7 @@
 {0x85, 0x00, 0xB3},
 {0x86, 0x00, 0x72},
 {0x87, 0x00, 0x40},
-{0x88, 0x00, 0xDE},      // after set mode
+{0x88, 0x00, 0xDE},         // after set mode
 {0x89, 0x00, 0xB3},
 {0x8A, 0x00, 0x72},
 {0x8B, 0x00, 0x40},
@@ -341,7 +337,6 @@
 {0x00, 0x00, 0x00}					//End of table
 };

-
 /*       In => Share Memory size
                             => 00h :    0MBytes
                             => 02h :   32MBytes
@@ -421,7 +416,7 @@
 	GUI_En = temp8 & 0x10;
 	pci_write_config8(dev, 0x4C, temp8 & (!0x10));

-	dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_SIS, 0x0004), 0);
+	dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS761_PCIE), 0);
 	i=0;
 	while(SiS_NBPCIE_init[i][0] != 0)
 	{				temp8 = pci_read_config8(dev, SiS_NBPCIE_init[i][0]);
@@ -513,7 +508,7 @@

 // ========================== Misc =============================
        printk_debug("Init Misc -------->\n");
-	dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS966_ISA), 0);
+	dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS966_LPC), 0);
 	// PCI Device Enable
 	pci_write_config8(dev, 0x7C, 0x03);  // bit0=0 : enable audio controller(), bit1=1 : disable modem
 	pci_write_config8(dev, 0x76, pci_read_config8(dev, 0x76)|0x30);  // SM bus enable, PCIEXP Controller 1 and 2 disable
@@ -523,7 +518,7 @@
 	outb(temp8, 0x878);  // ACPI select AC97 or HDA controller
 	printk_debug("Audio select %x\n",inb(0x878));

-	dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS966_SATA0), 0);
+	dev = pci_locate_device(PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS966_SATA), 0);
 	if(!dev){
 		print_debug("SiS 1183 does not exist !!");
 	}
Index: src/southbridge/sis/sis966/sis966_sata.c
===================================================================
--- src/southbridge/sis/sis966/sis966_sata.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966_sata.c	(working copy)
@@ -193,5 +193,5 @@
 static const struct pci_driver sata0_driver __pci_driver = {
 	.ops	= &sata_ops,
 	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_SATA0,
+	.device	= PCI_DEVICE_ID_SIS_SIS966_SATA,
 };
Index: src/southbridge/sis/sis966/Config.lb
===================================================================
--- src/southbridge/sis/sis966/Config.lb	(revision 2954)
+++ src/southbridge/sis/sis966/Config.lb	(working copy)
@@ -22,15 +22,12 @@
 config chip.h
 driver sis761.o
 driver sis966.o
-driver sis966_usb.o
 driver sis966_lpc.o
-driver sis966_smbus.o
 driver sis966_ide.o
-driver sis966_sata.o
+driver sis966_usb.o
 driver sis966_usb2.o
-driver sis966_aza.o
 driver sis966_nic.o
-driver sis966_pci.o
+driver sis966_sata.o
 driver sis966_pcie.o
-driver sis966_ht.o
+driver sis966_aza.o
 object sis966_reset.o
Index: src/southbridge/sis/sis966/sis966_early_ctrl.c
===================================================================
--- src/southbridge/sis/sis966/sis966_early_ctrl.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966_early_ctrl.c	(working copy)
@@ -25,7 +25,7 @@

 	/* Find the device. */
 	dev = pci_locate_device_on_bus(
-		PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS966_HT),
+		PCI_ID(PCI_VENDOR_ID_SIS, PCI_DEVICE_ID_SIS_SIS761),
 		bus);

 	return (dev>>15) & 0x1f;
Index: src/southbridge/sis/sis966/sis966_nic.c
===================================================================
--- src/southbridge/sis/sis966/sis966_nic.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis966_nic.c	(working copy)
@@ -365,5 +365,5 @@
 static const struct pci_driver nic_driver __pci_driver = {
 	.ops	= &nic_ops,
 	.vendor	= PCI_VENDOR_ID_SIS,
-	.device	= PCI_DEVICE_ID_SIS_SIS966_NIC1,
+	.device	= PCI_DEVICE_ID_SIS_SIS966_NIC,
 };
Index: src/southbridge/sis/sis966/sis761.c
===================================================================
--- src/southbridge/sis/sis966/sis761.c	(revision 2954)
+++ src/southbridge/sis/sis966/sis761.c	(working copy)
@@ -73,36 +73,26 @@
 	return result;
 }

-
-
 static void sis761_read_resources(device_t dev)
 {
 	/* Read the generic PCI resources */
-	printk_debug("sis761_read_resources\n");
+	printk_debug("sis761_read_resources ------->\n");
 	pci_dev_read_resources(dev);

 	/* If we are not the first processor don't allocate the gart apeture */
 	if (dev->path.u.pci.devfn != PCI_DEVFN(0x0, 0)) {
+		printk_debug("sis761_not_the_first_processor !!!\n");
 		return;
 	}

-
+	printk_debug("sis761_read_resources <-------\n");
 	return;

 }

-static void set_agp_aperture(device_t dev)
-{
-
-	return;
-
-}
-
 static void sis761_set_resources(device_t dev)
 {
-        printk_debug("sis761_set_resources ------->\n");
-	/* Set the gart apeture */
-//	set_agp_aperture(dev);
+	printk_debug("sis761_set_resources ------->\n");

 	/* Set the generic PCI resources */
 	pci_dev_set_resources(dev);
@@ -124,7 +114,6 @@
 	outb(inb(0x856) | 0x40, 0x856);	 // Auto-Reset Function

 	printk_debug("sis761_init: <----------\n");
-	printk_debug("done.\n");
 }


Index: src/include/device/pci_ids.h
===================================================================
--- src/include/device/pci_ids.h	(revision 2954)
+++ src/include/device/pci_ids.h	(working copy)
@@ -2429,30 +2429,61 @@

 #define PCI_VENDOR_ID_SIS		0x1039
 #define PCI_DEVICE_ID_SIS_AGP 		0x0002
+
+/* SiS 761GX NORTH BRIDGE */
 #define PCI_DEVICE_ID_SIS_SIS761	0x0761
-#define PCI_DEVICE_ID_SIS_SIS966_SB	0x0966
-#define PCI_DEVICE_ID_SIS_SIS966_ISA	0x0966
-#define PCI_DEVICE_ID_SIS_SIS966_LPC	0x0966
-#define PCI_DEVICE_ID_SIS_SIS966_SM2	0x0368
-#define PCI_DEVICE_ID_SIS_SIS966_HT	0x0369
-#define PCI_DEVICE_ID_SIS_SIS966_PCI	0x0370
-#define PCI_DEVICE_ID_SIS_SIS966_SMB	0x25a4
-#define PCI_DEVICE_ID_SIS_SIS966_PCIE_A_B 0x000A
-#define PCI_DEVICE_ID_SIS_SIS966_PCIE_B_C 0x1002
-#define PCI_DEVICE_ID_SIS_SIS966_PCIE_E	0x1003
-#define PCI_DEVICE_ID_SIS_SIS966_PCIE_A	0x1004
-#define PCI_DEVICE_ID_SIS_SIS966_PCIE_F	0x1005
-#define PCI_DEVICE_ID_SIS_SIS966_PCIE_D	0x1006
-#define PCI_DEVICE_ID_SIS_SIS966_AC97_AUDIO 0x7012
-#define PCI_DEVICE_ID_SIS_SIS966_AC97_MODEM 0x7013
-#define PCI_DEVICE_ID_SIS_SIS966_IDE	0x5513
-#define PCI_DEVICE_ID_SIS_SIS966_SATA0	0x1183
-#define PCI_DEVICE_ID_SIS_SIS966_NIC0	0x0190
-#define PCI_DEVICE_ID_SIS_SIS966_NIC1	0x0191
-#define PCI_DEVICE_ID_SIS_SIS966_AZA	0x7502
-#define PCI_DEVICE_ID_SIS_SIS966_USB	0x7001
-#define PCI_DEVICE_ID_SIS_SIS966_USB2	0x7002
+#define PCI_DEVICE_ID_SIS_SIS761_PCIE	0x0004

+/* SiS 964(L) SOUTH BRIDGE */
+#define PCI_DEVICE_ID_SIS_SIS964_LPC	0x0964	/* D2F0 */
+#define PCI_DEVICE_ID_SIS_SIS964_IDE	0x5513	/* D2F5 */
+#define PCI_DEVICE_ID_SIS_SIS964_AC97_MODEM 0x7013	/* D2F6 */
+#define PCI_DEVICE_ID_SIS_SIS964_AC97_AUDIO 0x7012	/* D2F7 */
+#define PCI_DEVICE_ID_SIS_SIS964_USB	0x7001	/* D3F0,D3F1 */
+#define PCI_DEVICE_ID_SIS_SIS964_USB2	0x7002	/* D3F3 */
+#define PCI_DEVICE_ID_SIS_SIS964_NIC	0x0900	/* D4F0 */
+#define PCI_DEVICE_ID_SIS_SIS964_SATA	0x0181	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS964_SATA_RAID	0x0180	/* D5F0 */
+
+/* SiS 965(L) SOUTH BRIDGE */
+#define PCI_DEVICE_ID_SIS_SIS965_LPC	0x0965	/* D2F0 */
+#define PCI_DEVICE_ID_SIS_SIS965_IDE	0x5513	/* D2F5 */
+#define PCI_DEVICE_ID_SIS_SIS965_AC97_MODEM 0x7013	/* D2F6 */
+#define PCI_DEVICE_ID_SIS_SIS965_AC97_AUDIO 0x7012	/* D2F7 */
+#define PCI_DEVICE_ID_SIS_SIS965_USB	0x7001	/* D3F0,D3F1 */
+#define PCI_DEVICE_ID_SIS_SIS965_USB2	0x7002	/* D3F3 */
+#define PCI_DEVICE_ID_SIS_SIS965L_NIC	0x0190	/* D4F0 */
+#define PCI_DEVICE_ID_SIS_SIS965_NIC	0x0191	/* D4F0 */
+#define PCI_DEVICE_ID_SIS_SIS965_SATA	0x0183	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS965_SATA_RAID	0x0182	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS965_PCIE	0x000a  /* D6F0,D7F0 */
+
+/* SiS 966(L) SOUTH BRIDGE */
+#define PCI_DEVICE_ID_SIS_SIS966_LPC	0x0966	/* D2F0 */
+#define PCI_DEVICE_ID_SIS_SIS966_IDE	0x5513	/* D2F5 */
+#define PCI_DEVICE_ID_SIS_SIS966_AC97_MODEM 0x7013	/* D2F6 */
+#define PCI_DEVICE_ID_SIS_SIS966_AC97_AUDIO 0x7012	/* D2F7 */
+#define PCI_DEVICE_ID_SIS_SIS966_USB	0x7001	/* D3F0,D3F1 */
+#define PCI_DEVICE_ID_SIS_SIS966_USB2	0x7002	/* D3F3 */
+#define PCI_DEVICE_ID_SIS_SIS966L_NIC	0x0190	/* D4F0 */
+#define PCI_DEVICE_ID_SIS_SIS966_NIC	0x0191	/* D4F0 */
+#define PCI_DEVICE_ID_SIS_SIS966_SATA	0x1183	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS966_SATA_RAID	0x1182	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS966_PCIE	0x000a  /* D6F0,D7F0 */
+#define PCI_DEVICE_ID_SIS_SIS966_HD_AUDIO	0x7502	/* DfF0 */
+
+/* SiS 968 SOUTH BRIDGE */
+#define PCI_DEVICE_ID_SIS_SIS968_LPC	0x0968	/* D2F0 */
+#define PCI_DEVICE_ID_SIS_SIS968_IDE	0x5513	/* D2F5 */
+#define PCI_DEVICE_ID_SIS_SIS968_USB	0x7001	/* D3F0,D3F1 */
+#define PCI_DEVICE_ID_SIS_SIS968_USB2	0x7002	/* D3F3 */
+#define PCI_DEVICE_ID_SIS_SIS968_NIC	0x0191	/* D4F0 */
+#define PCI_DEVICE_ID_SIS_SIS968_SATA	0x1183	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS968_SATA_RAID	0x1184	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS968_SATA_AHCI	0x1185	/* D5F0 */
+#define PCI_DEVICE_ID_SIS_SIS968_PCIE	0x000a  /* D6F0,D7F0 */
+#define PCI_DEVICE_ID_SIS_SIS968_HD_AUDIO	0x7502	/* DfF0 */
+
 /* OLD USAGE FOR LINUXBIOS */
 #define PCI_VENDOR_ID_ACER              0x10b9
 #define PCI_DEVICE_ID_ACER_M1535D         0x1533
Index: src/mainboard/gigabyte/ga_2761gxdk/Config.lb
===================================================================
--- src/mainboard/gigabyte/ga_2761gxdk/Config.lb	(revision 2954)
+++ src/mainboard/gigabyte/ga_2761gxdk/Config.lb	(working copy)
@@ -295,9 +295,9 @@
                                         device pci 3.1 on end # USB (SiS7001,USB1.1)
                                         device pci 3.3 on end # USB (SiS7002,USB2.0)
                                         device pci 4.0 on end # NIC (SiS191)
-                                        device pci 5.0 on end # SATA (SiS1183,IDE Mode)
-                                        device pci 6.0 off end # PCI-E (SiS000A)
-                                        device pci 7.0 off end # PCI-E (SiS000A)
+                                        device pci 5.0 on end # SATA (SiS1183,Native Mode)
+                                        device pci 6.0 on end # PCI-e x1
+                                        device pci 7.0 on end # PCI-e x1
                                         device pci a.0 off end
                                         device pci b.0 off end
                                         device pci c.0 off end
@@ -323,13 +323,13 @@
 #       chip drivers/generic/debug
 #               device pnp 0.0 off end # chip name
 #               device pnp 0.1 on end # pci_regs_all
-#               device pnp 0.2 on end # mem
+#               device pnp 0.2 off end # mem
 #               device pnp 0.3 off end # cpuid
-#               device pnp 0.4 on end # smbus_regs_all
+#               device pnp 0.4 off end # smbus_regs_all
 #               device pnp 0.5 off end # dual core msr
 #               device pnp 0.6 off end # cache size
 #               device pnp 0.7 off end # tsc
-#               device pnp 0.8 off  end # io
+#               device pnp 0.8 off end # io
 #               device pnp 0.9 off end # io
 #       end
 end #root_complex
Index: src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c
===================================================================
--- src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c	(revision 2954)
+++ src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c	(working copy)
@@ -89,7 +89,7 @@
 	pirq->exclusive_irqs = 0;

 	pirq->rtr_vendor = PCI_VENDOR_ID_SIS;
-	pirq->rtr_device = PCI_DEVICE_ID_SIS_SIS966_PCI;
+	pirq->rtr_device = PCI_DEVICE_ID_SIS_SIS966_LPC;

 	pirq->miniport_data = 0;

@@ -102,6 +102,7 @@
                 device_t dev;
                 dev = dev_find_slot(0, PCI_DEVFN(2,0));
                 if (dev) {
+
                         /* initialize PCI interupts - these assignments depend
                         on the PCB routing of PINTA-D

@@ -140,16 +141,16 @@
                 pci_write_config8(dev, 0x3C, 0x0A);
                 dev = dev_find_slot(0, PCI_DEVFN(4,0));   // 191 (LAN)
                 pci_write_config8(dev, 0x3C, 0x05);
-                dev = dev_find_slot(0, PCI_DEVFN(5,0));    // 1183 (SATA)
+                dev = dev_find_slot(0, PCI_DEVFN(5,0));   // 1183 (SATA)
                 pci_write_config8(dev, 0x3C, 0x0B);
+                dev = dev_find_slot(0, PCI_DEVFN(6,0));   // PCI-E
+                pci_write_config8(dev, 0x3C, 0x0A);
+                dev = dev_find_slot(0, PCI_DEVFN(7,0));   // PCI-E
+                pci_write_config8(dev, 0x3C, 0x0A);

                 /*
                  * Non-layout for GA-2761GX
                  *
-                dev = dev_find_slot(0, PCI_DEVFN(6,0));   // PCI-E
-                pci_write_config8(dev, 0x3C, 0x0A);
-                dev = dev_find_slot(0, PCI_DEVFN(7,0));   // PCI-E
-                pci_write_config8(dev, 0x3C, 0x0A);
                 dev = dev_find_slot(0, PCI_DEVFN(15,0));  // Azalia
                 pci_write_config8(dev, 0x3C, 0x05);
                 */
