mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
drm/nouveau/nouveau: Disable AGP for SiS 761
SiS 761 chipset does not support AGP cards but has AGP capability (for the onboard video). At least PC Chips A31G board using this chipset has an AGP-like AGPro slot that's wired to the PCI bus. Enabling AGP will fail (GPU lockup and software fbcon, X11 hangs). Add support for matching just the host bridge in nvkm_device_agp_quirks and add entry for SiS 761 with mode 0 (AGP disabled). Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
5102ec3e99
commit
953132b56a
1 changed files with 6 additions and 2 deletions
|
@ -35,6 +35,8 @@ static const struct nvkm_device_agp_quirk
|
|||
nvkm_device_agp_quirks[] = {
|
||||
/* VIA Apollo PRO133x / GeForce FX 5600 Ultra - fdo#20341 */
|
||||
{ PCI_VENDOR_ID_VIA, 0x0691, PCI_VENDOR_ID_NVIDIA, 0x0311, 2 },
|
||||
/* SiS 761 does not support AGP cards, use PCI mode */
|
||||
{ PCI_VENDOR_ID_SI, 0x0761, PCI_ANY_ID, PCI_ANY_ID, 0 },
|
||||
{},
|
||||
};
|
||||
|
||||
|
@ -137,8 +139,10 @@ nvkm_agp_ctor(struct nvkm_pci *pci)
|
|||
while (quirk->hostbridge_vendor) {
|
||||
if (info.device->vendor == quirk->hostbridge_vendor &&
|
||||
info.device->device == quirk->hostbridge_device &&
|
||||
pci->pdev->vendor == quirk->chip_vendor &&
|
||||
pci->pdev->device == quirk->chip_device) {
|
||||
(quirk->chip_vendor == (u16)PCI_ANY_ID ||
|
||||
pci->pdev->vendor == quirk->chip_vendor) &&
|
||||
(quirk->chip_device == (u16)PCI_ANY_ID ||
|
||||
pci->pdev->device == quirk->chip_device)) {
|
||||
nvkm_info(subdev, "forcing default agp mode to %dX, "
|
||||
"use NvAGP=<mode> to override\n",
|
||||
quirk->mode);
|
||||
|
|
Loading…
Reference in a new issue