ssb: Fix usage of struct device used for DMAing
authorMichael Buesch <mb@bu3sch.de>
Fri, 11 Apr 2008 09:59:00 +0000 (11:59 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 15 Apr 2008 19:04:35 +0000 (15:04 -0400)
commit4ac58469f13028e1eb97f8bc7b0fca5072591d8d
treec955e1b753e1f86c570d2d6f5f6095d1182d5c35
parent2d4543fdb487b1301ae48703dea3e66ead2d3c75
ssb: Fix usage of struct device used for DMAing

This fixes DMA on architectures where DMA is nontrivial, like PPC64.
We must use the host-device's (PCI) struct device for any DMA
operation instead of the SSB device. For this we add a new
struct device pointer to the SSB device structure that will always
point to the right device for DMAing.

Without this patch b43 and b44 drivers won't work on complex-DMA
architectures, that for example need dev->archdata for DMA operations.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/b44.c
drivers/net/wireless/b43/dma.c
drivers/ssb/main.c
include/linux/ssb/ssb.h