FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Ubuntu > Ubuntu Kernel Team

 
 
LinkBack Thread Tools
 
Old 09-28-2010, 11:27 AM
Ike Panhc
 
Default UBUNTU: SAUCE: drm/i915, agp/intel: Add second set of PCI-IDs for B43

We find there is another device id set for B43 chipset. After adding the device
id 4E90/4E92 beside 4E40/4E42, the machine works fine with the same
modification in xserver-xorg-video-intel.

After reporting to freedesktop bugzilla[1], Chris Wilson said the patch is
queued for adding this id set and the patch is accepted in mainline kernel[2].

Upstream codes has been modified for more easy maintaining. Cherry-pick from
upstream will cause line missing and conflicts. So I make the backport patches
for Karmic kernel.

BugLink: http://launchpad.net/bugs/640214

[1] https://bugs.freedesktop.org/show_bug.cgi?id=30221
[2] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=41a51428916ab04587bacee2dda61c4 a0c4fc02f

Signed-off-by: Ike Panhc <ike.pan@canonical.com>
---
drivers/char/agp/intel-agp.c | 8 ++++++++
drivers/gpu/drm/i915/i915_drv.h | 2 ++
include/drm/drm_pciids.h | 1 +
3 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/drivers/char/agp/intel-agp.c b/drivers/char/agp/intel-agp.c
index f150be9..2c09d4c 100644
--- a/drivers/char/agp/intel-agp.c
+++ b/drivers/char/agp/intel-agp.c
@@ -38,6 +38,8 @@
#define PCI_DEVICE_ID_INTEL_Q33_IG 0x29D2
#define PCI_DEVICE_ID_INTEL_B43_HB 0x2E40
#define PCI_DEVICE_ID_INTEL_B43_IG 0x2E42
+#define PCI_DEVICE_ID_INTEL_B43_1_HB 0x2E90
+#define PCI_DEVICE_ID_INTEL_B43_1_IG 0x2E92
#define PCI_DEVICE_ID_INTEL_GM45_HB 0x2A40
#define PCI_DEVICE_ID_INTEL_GM45_IG 0x2A42
#define PCI_DEVICE_ID_INTEL_IGD_E_HB 0x2E00
@@ -85,6 +87,7 @@
agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_GM45_HB ||
agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_G41_HB ||
agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_B43_HB ||
+ agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_B43_1_HB ||
agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_D_HB ||
agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_M_HB ||
agp_bridge->dev->device == PCI_DEVICE_ID_INTEL_IGDNG_MA_HB ||
@@ -1238,6 +1242,7 @@ static void intel_i965_get_gtt_range(int *gtt_offset, int *gtt_size)
case PCI_DEVICE_ID_INTEL_G45_HB:
case PCI_DEVICE_ID_INTEL_G41_HB:
case PCI_DEVICE_ID_INTEL_B43_HB:
+ case PCI_DEVICE_ID_INTEL_B43_1_HB:
case PCI_DEVICE_ID_INTEL_IGDNG_D_HB:
case PCI_DEVICE_ID_INTEL_IGDNG_M_HB:
case PCI_DEVICE_ID_INTEL_IGDNG_MA_HB:
@@ -2217,6 +2222,8 @@ static const struct intel_driver_description {
"G45/G43", NULL, &intel_i965_driver },
{ PCI_DEVICE_ID_INTEL_B43_HB, PCI_DEVICE_ID_INTEL_B43_IG, 0,
"B43", NULL, &intel_i965_driver },
+ { PCI_DEVICE_ID_INTEL_B43_1_HB, PCI_DEVICE_ID_INTEL_B43_1_IG, 0,
+ "B43", NULL, &intel_i965_driver },
{ PCI_DEVICE_ID_INTEL_G41_HB, PCI_DEVICE_ID_INTEL_G41_IG, 0,
"G41", NULL, &intel_i965_driver },
{ PCI_DEVICE_ID_INTEL_IGDNG_D_HB, PCI_DEVICE_ID_INTEL_IGDNG_D_IG, 0,
@@ -2420,6 +2427,7 @@ static struct pci_device_id agp_intel_pci_table[] = {
ID(PCI_DEVICE_ID_INTEL_G45_HB),
ID(PCI_DEVICE_ID_INTEL_G41_HB),
ID(PCI_DEVICE_ID_INTEL_B43_HB),
+ ID(PCI_DEVICE_ID_INTEL_B43_1_HB),
ID(PCI_DEVICE_ID_INTEL_IGDNG_D_HB),
ID(PCI_DEVICE_ID_INTEL_IGDNG_M_HB),
ID(PCI_DEVICE_ID_INTEL_IGDNG_MA_HB),
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 9919f9f..a62afae 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -907,6 +907,7 @@ extern int i915_wait_ring(struct drm_device * dev, int n, const char *caller);
(dev)->pci_device == 0x2E22 ||
(dev)->pci_device == 0x2E32 ||
(dev)->pci_device == 0x2E42 ||
+ (dev)->pci_device == 0x2E92 ||
(dev)->pci_device == 0x0042 ||
(dev)->pci_device == 0x0046)

@@ -920,6 +921,7 @@ extern int i915_wait_ring(struct drm_device * dev, int n, const char *caller);
(dev)->pci_device == 0x2E22 ||
(dev)->pci_device == 0x2E32 ||
(dev)->pci_device == 0x2E42 ||
+ (dev)->pci_device == 0x2E92 ||
IS_GM45(dev))

#define IS_IGDG(dev) ((dev)->pci_device == 0xa001)
diff --git a/include/drm/drm_pciids.h b/include/drm/drm_pciids.h
index 3f6e545..eddcf57 100644
--- a/include/drm/drm_pciids.h
+++ b/include/drm/drm_pciids.h
@@ -553,6 +553,7 @@
{0x8086, 0x2e22, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
{0x8086, 0x2e32, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
{0x8086, 0x2e42, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
+ {0x8086, 0x2e92, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
{0x8086, 0xa001, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
{0x8086, 0xa011, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
{0x8086, 0x35e8, PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_DISPLAY_VGA << 8, 0xffff00, 0},
--
1.7.1


--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
 
Old 10-04-2010, 08:48 AM
Ike Panhc
 
Default UBUNTU: SAUCE: drm/i915, agp/intel: Add second set of PCI-IDs for B43

There is report[1] that says graphic of some Intel B43 chipset is not working.
It is because they are using another PCI id set. The following two patches is
for adding the second id set into Karmic kernel.

[1] http://launchpad.net/bugs/640214

These patches are available in the git repository at:
git://kernel.ubuntu.com/ikepanhc/public.git lp640214karmic

Ike Panhc (2):
UBUNTU: SAUCE: agp/intel: Add second set of PCI-IDs for B43
UBUNTU: SAUCE: drm/i915: Add second set of PCI-IDs for B43

drivers/char/agp/intel-agp.c | 7 +++++++
drivers/gpu/drm/i915/i915_drv.h | 2 ++
include/drm/drm_pciids.h | 1 +
3 files changed, 10 insertions(+), 0 deletions(-)


--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
 

Thread Tools




All times are GMT. The time now is 02:30 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org