xserver-xorg-video-mga: Changes to 'debian-unstable'
debian/changelog | 8 ++++++
debian/patches/03_kms-g200.diff | 52 ++++++++++++++++++++++++++++++++++++++++
debian/patches/series | 1
3 files changed, 61 insertions(+)
New commits:
commit f59674c5d8b4223ac9ff360dab81c92f4626a967
Author: Julien Cristau <jcristau@debian.org>
Date: Sat Jan 12 16:04:00 2013 +0100
Upload to unstable
diff --git a/debian/changelog b/debian/changelog
index c3b60de..edbb559 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,10 @@
-xserver-xorg-video-mga (1:1.5.0-3) UNRELEASED; urgency=low
+xserver-xorg-video-mga (1:1.5.0-3) unstable; urgency=medium
* Restrict the kernel driver matching to G200 server chips. They're the
ones using the mgag200 kms driver, other chips could be using matroxfb
which is compatible with xf86-video-mga (closes: 697532).
- -- Julien Cristau <jcristau@debian.org> Sat, 12 Jan 2013 15:51:21 +0100
+ -- Julien Cristau <jcristau@debian.org> Sat, 12 Jan 2013 16:03:52 +0100
xserver-xorg-video-mga (1:1.5.0-2) unstable; urgency=low
commit e14cf80d26aa1f5f4de6e04677eac664be0713ab
Author: Julien Cristau <jcristau@debian.org>
Date: Sat Jan 12 15:53:33 2013 +0100
Restrict the kernel driver matching to G200 server chips.
They're the ones using the mgag200 kms driver, other chips could be
using matroxfb which is compatible with xf86-video-mga (closes: 697532).
diff --git a/debian/changelog b/debian/changelog
index c599f7b..c3b60de 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xserver-xorg-video-mga (1:1.5.0-3) UNRELEASED; urgency=low
+
+ * Restrict the kernel driver matching to G200 server chips. They're the
+ ones using the mgag200 kms driver, other chips could be using matroxfb
+ which is compatible with xf86-video-mga (closes: 697532).
+
+ -- Julien Cristau <jcristau@debian.org> Sat, 12 Jan 2013 15:51:21 +0100
+
xserver-xorg-video-mga (1:1.5.0-2) unstable; urgency=low
* mga: don't bind to device if there is a kernel driver, to avoid conflicts
diff --git a/debian/patches/03_kms-g200.diff b/debian/patches/03_kms-g200.diff
new file mode 100644
index 0000000..f916808
--- /dev/null
+++ b/debian/patches/03_kms-g200.diff
@@ -0,0 +1,52 @@
+From 450449c89c0f680cf27940051821891ff97c9b0b Mon Sep 17 00:00:00 2001
+From: Julien Cristau <jcristau@debian.org>
+Date: Mon, 7 Jan 2013 23:04:36 +0100
+Subject: [PATCH mga] Restrict kernel driver matching to g200 server chips
+
+Otherwise we might catch devices handled by matroxfb, not the mgag200
+kms driver.
+
+Debian bug#697532
+
+Reported-by: olafBuddenhagen@gmx.net
+Signed-off-by: Julien Cristau <jcristau@debian.org>
+---
+ src/mga_driver.c | 22 ++++++++++++++++------
+ 1 file changed, 16 insertions(+), 6 deletions(-)
+
+diff --git a/src/mga_driver.c b/src/mga_driver.c
+index 8c4bb9c..5cce7ac 100644
+--- a/src/mga_driver.c
++++ b/src/mga_driver.c
+@@ -676,12 +676,22 @@ MGAPciProbe(DriverPtr drv, int entity_num, struct pci_device * dev,
+ #endif
+
+ if (pci_device_has_kernel_driver(dev)) {
+- xf86DrvMsg(0, X_ERROR,
+- "mga: The PCI device 0x%x at %2.2d@%2.2d:%2.2d:%1.1d has a kernel module claiming it.\n",
+- dev->device_id, dev->bus, dev->domain, dev->dev, dev->func);
+- xf86DrvMsg(0, X_ERROR,
+- "mga: This driver cannot operate until it has been unloaded.\n");
+- return FALSE;
++ /* If it's a G200 server chip, it's probably on KMS, so bail; if not,
++ * it might be using matroxfb, which is ok. */
++ switch (dev->device_id) {
++ case PCI_CHIP_MGAG200_SE_A_PCI:
++ case PCI_CHIP_MGAG200_SE_B_PCI:
++ case PCI_CHIP_MGAG200_EV_PCI:
++ case PCI_CHIP_MGAG200_ER_PCI:
++ case PCI_CHIP_MGAG200_WINBOND_PCI:
++ case PCI_CHIP_MGAG200_EH_PCI:
++ xf86DrvMsg(0, X_ERROR,
++ "mga: The PCI device 0x%x at %2.2d@%2.2d:%2.2d:%1.1d has a kernel module claiming it.\n",
++ dev->device_id, dev->bus, dev->domain, dev->dev, dev->func);
++ xf86DrvMsg(0, X_ERROR,
++ "mga: This driver cannot operate until it has been unloaded.\n");
++ return FALSE;
++ }
+ }
+
+ /* Allocate a ScrnInfoRec and claim the slot */
+--
+1.7.10.4
+
diff --git a/debian/patches/series b/debian/patches/series
index 7b69d6a..e4ade36 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
01_no_nonfree.diff
02_tentatively_unbreak_dual_head.diff
+03_kms-g200.diff
Reply to: