summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authordumbbell <dumbbell@FreeBSD.org>2013-12-11 23:15:19 +0000
committerdumbbell <dumbbell@FreeBSD.org>2013-12-11 23:15:19 +0000
commit89f39922eeb419af3bbb369e1a9d8f5fd4a8ead2 (patch)
treec05dd5b98552047014c971f956f2112983e94bbf /sys
parent91ba4c72da3601dc554ecaee0588fd32c38b1723 (diff)
downloadFreeBSD-src-89f39922eeb419af3bbb369e1a9d8f5fd4a8ead2.zip
FreeBSD-src-89f39922eeb419af3bbb369e1a9d8f5fd4a8ead2.tar.gz
MFC r258930:
drm: Read PCIER_LINK_CAP/PCIER_LINK_CAP2 from the PCI bridge Before this fix, capabilities were read from vgapci and were incorrect.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/drm2/drm_pci.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/drm2/drm_pci.c b/sys/dev/drm2/drm_pci.c
index ab45278..ac9d4e6 100644
--- a/sys/dev/drm2/drm_pci.c
+++ b/sys/dev/drm2/drm_pci.c
@@ -134,7 +134,11 @@ int drm_pcie_get_speed_cap_mask(struct drm_device *dev, u32 *mask)
if (!drm_device_is_pcie(dev))
return -EINVAL;
- root = device_get_parent(dev->device);
+ root =
+ device_get_parent( /* pcib */
+ device_get_parent( /* `-- pci */
+ device_get_parent( /* `-- vgapci */
+ dev->device))); /* `-- drmn */
pos = 0;
pci_find_cap(root, PCIY_EXPRESS, &pos);
OpenPOWER on IntegriCloud