aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ssb
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2011-07-20 13:52:14 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-07-22 09:51:12 -0400
commita9770a815d280d6aa2da406e159eff92b880670e (patch)
tree2337d004f5c95677c1e925dfb3b73e939ecf0d19 /drivers/ssb
parent78c1ee7e61af4eb3f6c8a553ca56036e3734121f (diff)
ssb: return correct translation bit for 64-bit DMA
Remove b43's workarounds at the same time. Other users of ssb_dma_translation do not support any 64-bit DMA devices, so they are not affected. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/ssb')
-rw-r--r--drivers/ssb/main.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/ssb/main.c b/drivers/ssb/main.c
index 57b7b6460896..6ec6e099fe04 100644
--- a/drivers/ssb/main.c
+++ b/drivers/ssb/main.c
@@ -1266,7 +1266,10 @@ u32 ssb_dma_translation(struct ssb_device *dev)
1266 case SSB_BUSTYPE_SSB: 1266 case SSB_BUSTYPE_SSB:
1267 return 0; 1267 return 0;
1268 case SSB_BUSTYPE_PCI: 1268 case SSB_BUSTYPE_PCI:
1269 return SSB_PCI_DMA; 1269 if (ssb_read32(dev, SSB_TMSHIGH) & SSB_TMSHIGH_DMA64)
1270 return SSB_PCIE_DMA_H32;
1271 else
1272 return SSB_PCI_DMA;
1270 default: 1273 default:
1271 __ssb_dma_not_implemented(dev); 1274 __ssb_dma_not_implemented(dev);
1272 } 1275 }