diff -u xserver-xorg-video-intel-2.9.0/debian/changelog xserver-xorg-video-intel-2.9.0/debian/changelog --- xserver-xorg-video-intel-2.9.0/debian/changelog +++ xserver-xorg-video-intel-2.9.0/debian/changelog @@ -1,3 +1,13 @@ +xserver-xorg-video-intel (2:2.9.0-1ubuntu2.2) karmic-proposed; urgency=low + + * Add 102_b43_pciid_update.patch. Fixes detection of a new b43 + chipset revision that is being shipped. Without this the drivers + will not attempt to load even though this chipset is the same as + the previous b43 ones. Backport of upstream commit 55b5fe8880. + (LP: #640214) + + -- Robert Hooker Thu, 16 Sep 2010 18:52:24 -0400 + xserver-xorg-video-intel (2:2.9.0-1ubuntu2.1) karmic-proposed; urgency=low * Add 101_uxa_free_scratchpixmapheader.patch. Fixes a problem with diff -u xserver-xorg-video-intel-2.9.0/debian/patches/series xserver-xorg-video-intel-2.9.0/debian/patches/series --- xserver-xorg-video-intel-2.9.0/debian/patches/series +++ xserver-xorg-video-intel-2.9.0/debian/patches/series @@ -2,0 +3 @@ +102_b43_pciid_update.patch only in patch2: unchanged: --- xserver-xorg-video-intel-2.9.0.orig/debian/patches/102_b43_pciid_update.patch +++ xserver-xorg-video-intel-2.9.0/debian/patches/102_b43_pciid_update.patch @@ -0,0 +1,81 @@ +diff --git a/src/common.h b/src/common.h +index 79c656a..6717a1a 100644 +--- a/src/common.h ++++ b/src/common.h +@@ -315,6 +315,11 @@ extern int I810_DEBUG; + #define PCI_CHIP_B43_G_BRIDGE 0x2E40 + #endif + ++#ifndef PCI_CHIP_B43_G1 ++#define PCI_CHIP_B43_G1 0x2E92 ++#define PCI_CHIP_B43_G1_BRIDGE 0x2E90 ++#endif ++ + #ifndef PCI_CHIP_IGDNG_D_G + #define PCI_CHIP_IGDNG_D_G 0x0042 + #define PCI_CHIP_IGDNG_D_G_BRIDGE 0x0040 +@@ -351,7 +356,7 @@ extern int I810_DEBUG; + #define IS_IGDG(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_IGD_G) + #define IS_IGD(pI810) (IS_IGDG(pI810) || IS_IGDGM(pI810)) + #define IS_GM45(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_GM45_GM) +-#define IS_G4X(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_IGD_E_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_Q45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G41_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_B43_G || IS_GM45(pI810)) ++#define IS_G4X(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_IGD_E_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_Q45_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_G41_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_B43_G || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_B43_G1 || IS_GM45(pI810)) + #define IS_I965GM(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_GM || DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_GME) + #define IS_965_Q(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_I965_Q) + #define IS_IGDNG_D(pI810) (DEVICE_ID(pI810->PciInfo) == PCI_CHIP_IGDNG_D_G) +diff --git a/src/i810_driver.c b/src/i810_driver.c +index bb3bad8..6133cfe 100644 +--- a/src/i810_driver.c ++++ b/src/i810_driver.c +@@ -138,6 +138,7 @@ static const struct pci_id_match intel_device_match[] = { + INTEL_DEVICE_MATCH (PCI_CHIP_Q45_G, 0 ), + INTEL_DEVICE_MATCH (PCI_CHIP_G41_G, 0 ), + INTEL_DEVICE_MATCH (PCI_CHIP_B43_G, 0 ), ++ INTEL_DEVICE_MATCH (PCI_CHIP_B43_G1, 0 ), + INTEL_DEVICE_MATCH (PCI_CHIP_IGDNG_D_G, 0 ), + INTEL_DEVICE_MATCH (PCI_CHIP_IGDNG_M_G, 0 ), + { 0, 0, 0 }, +@@ -192,6 +193,7 @@ static SymTabRec I810Chipsets[] = { + {PCI_CHIP_Q45_G, "Q45/Q43"}, + {PCI_CHIP_G41_G, "G41"}, + {PCI_CHIP_B43_G, "B43"}, ++ {PCI_CHIP_B43_G1, "B43"}, + {PCI_CHIP_IGDNG_D_G, "Clarkdale"}, + {PCI_CHIP_IGDNG_M_G, "Arrandale"}, + {-1, NULL} +@@ -231,6 +233,7 @@ static PciChipsets I810PciChipsets[] = { + {PCI_CHIP_Q45_G, PCI_CHIP_Q45_G, NULL}, + {PCI_CHIP_G41_G, PCI_CHIP_G41_G, NULL}, + {PCI_CHIP_B43_G, PCI_CHIP_B43_G, NULL}, ++ {PCI_CHIP_B43_G1, PCI_CHIP_B43_G1, NULL}, + {PCI_CHIP_IGDNG_D_G, PCI_CHIP_IGDNG_D_G, NULL}, + {PCI_CHIP_IGDNG_M_G, PCI_CHIP_IGDNG_M_G, NULL}, + {-1, -1, NULL } +diff --git a/src/i830_driver.c b/src/i830_driver.c +index 316a1fa..c675381 100644 +--- a/src/i830_driver.c ++++ b/src/i830_driver.c +@@ -117,6 +117,7 @@ static SymTabRec I830Chipsets[] = { + {PCI_CHIP_Q45_G, "Q45/Q43"}, + {PCI_CHIP_G41_G, "G41"}, + {PCI_CHIP_B43_G, "B43"}, ++ {PCI_CHIP_B43_G1, "B43"}, + {PCI_CHIP_IGDNG_D_G, "Clarkdale"}, + {PCI_CHIP_IGDNG_M_G, "Arrandale"}, + {-1, NULL} +@@ -150,6 +151,7 @@ static PciChipsets I830PciChipsets[] = { + {PCI_CHIP_Q45_G, PCI_CHIP_Q45_G, NULL}, + {PCI_CHIP_G41_G, PCI_CHIP_G41_G, NULL}, + {PCI_CHIP_B43_G, PCI_CHIP_B43_G, NULL}, ++ {PCI_CHIP_B43_G1, PCI_CHIP_B43_G1, NULL}, + {PCI_CHIP_IGDNG_D_G, PCI_CHIP_IGDNG_D_G, NULL}, + {PCI_CHIP_IGDNG_M_G, PCI_CHIP_IGDNG_M_G, NULL}, + {-1, -1, NULL} +@@ -1099,6 +1101,7 @@ i830_detect_chipset(ScrnInfoPtr pScrn) + chipname = "G41"; + break; + case PCI_CHIP_B43_G: ++ case PCI_CHIP_B43_G1: + chipname = "B43"; + break; + case PCI_CHIP_IGDNG_D_G: