diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-07-08 18:34:57 -0400 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-07-08 18:34:57 -0400 |
commit | 8c03c1fdb5ea35570064946557050c87ca30582a (patch) | |
tree | f515e9940aec52da09ac423dade3f71ef87e10e2 | |
parent | 9645838c57f6b40837fdce23ce7f9faefb3d9966 (diff) |
R6xx/R7xx: fix hangs on x2 cards with PM options
Changing the PCIE lanes on x2 cards results in a hang,
so for now, disable it.
Fixes fdo bug 22669
-rw-r--r-- | src/radeon_pm.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/radeon_pm.c b/src/radeon_pm.c index 131a9fd4..fe8f2143 100644 --- a/src/radeon_pm.c +++ b/src/radeon_pm.c @@ -38,6 +38,8 @@ #include "radeon_macros.h" #include "radeon_atombios.h" +#include "ati_pciids_gen.h" + /* 10 khz */ static uint32_t calc_eng_mem_clock(ScrnInfoPtr pScrn, uint32_t req_clock, @@ -629,6 +631,15 @@ RADEONSetPCIELanes(ScrnInfoPtr pScrn, int lanes) if (info->IsIGP) return; + /* don't change lanes on multi-gpu cards for now */ + if ((info->Chipset == PCI_CHIP_RV770_9441) || + (info->Chipset == PCI_CHIP_RV770_9443) || + (info->Chipset == PCI_CHIP_RV770_944B) || + (info->Chipset == PCI_CHIP_RV670_9506) || + (info->Chipset == PCI_CHIP_RV670_9509) || + (info->Chipset == PCI_CHIP_RV670_950F)) + return; + RADEONWaitForIdleMMIO(pScrn); switch (lanes) { |