diff options
author | 2016-01-01 15:28:26 +0000 | |
---|---|---|
committer | 2016-01-01 15:28:26 +0000 | |
commit | ec031e48ec36c2c110a8f72ecfb561678131a8e2 (patch) | |
tree | 0193721a49038179f36998ea10c693d22b23dcb8 | |
parent | doas.conf lives in /etc. from Amit Kulkarni (diff) | |
download | wireguard-openbsd-ec031e48ec36c2c110a8f72ecfb561678131a8e2.tar.xz wireguard-openbsd-ec031e48ec36c2c110a8f72ecfb561678131a8e2.zip |
Reimplement vga_put() such that it compiles on i386 as well.
-rw-r--r-- | sys/dev/pci/drm/drm_linux.c | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/sys/dev/pci/drm/drm_linux.c b/sys/dev/pci/drm/drm_linux.c index 51f25d68dc3..68a42ca7345 100644 --- a/sys/dev/pci/drm/drm_linux.c +++ b/sys/dev/pci/drm/drm_linux.c @@ -1,4 +1,4 @@ -/* $OpenBSD: drm_linux.c,v 1.6 2015/12/31 13:01:00 kettenis Exp $ */ +/* $OpenBSD: drm_linux.c,v 1.7 2016/01/01 15:28:26 kettenis Exp $ */ /* * Copyright (c) 2013 Jonathan Gray <jsg@openbsd.org> * @@ -247,24 +247,6 @@ vga_disable_bridge(struct pci_attach_args *pa) return 1; } -int -vga_enable_bridge(struct pci_attach_args *pa) -{ - pcireg_t bc; - - if (!vga_bridge_disabled) - return 0; - - if (pa->pa_tag != vga_bridge_tag) - return 0; - - bc = pci_conf_read(pa->pa_pc, pa->pa_tag, PPB_REG_BRIDGECONTROL); - bc |= PPB_BC_VGA_ENABLE; - pci_conf_write(pa->pa_pc, pa->pa_tag, PPB_REG_BRIDGECONTROL, bc); - - return 1; -} - void vga_get_uninterruptible(struct pci_dev *pdev, int rsrc) { @@ -275,8 +257,16 @@ vga_get_uninterruptible(struct pci_dev *pdev, int rsrc) void vga_put(struct pci_dev *pdev, int rsrc) { - KASSERT(pdev->pci->sc_bridgetag == NULL); - pci_enumerate_bus(pdev->pci, vga_enable_bridge, NULL); + pcireg_t bc; + + if (!vga_bridge_disabled) + return; + + bc = pci_conf_read(pdev->pc, vga_bridge_tag, PPB_REG_BRIDGECONTROL); + bc |= PPB_BC_VGA_ENABLE; + pci_conf_write(pdev->pc, vga_bridge_tag, PPB_REG_BRIDGECONTROL, bc); + + vga_bridge_disabled = 0; } #endif |