[SRU][Zesty][PATCH 0/1] Fix for LP#

Daniel Axtens daniel.axtens at canonical.com
Thu Jun 29 03:40:59 UTC 2017


SRU Justification

[Impact]
Xorg autodetection does not work on HiSilicon D05 boards.

[Fix]
The HiSilicon D05 board has some PCI bridges (PCI ID 19e5:1610) that
are not spec-compliant: they do not set the VGA Enable bit when a VGA
card is behind the bridge. This stops vgaarb setting the device as a
boot vga device, breaking Xorg auto-detection. [0]

Despite this, the hibmc VGA card (PCI ID 19e5:1711) is known to work
when behind these bridges.

Provide a quirk so that this combination of bridge and card works.

[Testcase]
On an affected board, run:
# find /sys/devices -name boot_vga -exec cat \{\} \;

This should print 0 without this patch and 1 with this patch.

[Regression Potential]
There is a risk with overriding the VGA arbiter that adding additional
VGA cards to the board may go wrong somehow. The fixup specifically
tests for the bridge and card on the board, so regressions should be
limited to that combination of bridge and card.

[Notes]
HiSilicon is hoping to have the 16.04.3 HWE kernel support their
board, hence the submission of this patch before it has been accepted
upstream. The patch has been submitted upstream and I will continue to
work with upstream to land it.[1]

[0] https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1691991 - this
bug tracked debugging of a segfault and then this issue. Comments 25
(https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1691991/comments/25)
and 31 onwards detail this issue.

[1] https://patchwork.ozlabs.org/patch/778054/

Daniel Axtens (1):
  UBUNTU: SAUCE: PCI: Support hibmc VGA cards behind a misbehaving
    HiSilicon bridge

 drivers/pci/quirks.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

-- 
2.11.0





More information about the kernel-team mailing list