aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>2010-06-03 22:37:27 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-06-04 16:00:41 -0400
commit14f92952bf74a365ca7f9dfbec158e7c933ea723 (patch)
tree2b20d91f7c37ecdb6d13034366ddecb8526c31c1
parent2e724443f328cca90aa3b62d65852a5d7f5223f7 (diff)
ssb: add dma_dev to ssb_device structure
Add dma_dev, a pointer to struct device, to struct ssb_device. We pass it to the generic DMA API with SSB_BUSTYPE_PCI and SSB_BUSTYPE_SSB. ssb_devices_register() sets up it properly. This is preparation for replacing the ssb bus specific DMA API (ssb_dma_*) with the generic DMA API. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> Acked-by: Michael Buesch <mb@bu3sch.de> Cc: Gary Zambrano <zambrano@broadcom.com> Cc: Stefano Brivio <stefano.brivio@polimi.it> Cc: Larry Finger <Larry.Finger@lwfinger.net> Cc: John W. Linville <linville@tuxdriver.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/ssb/main.c2
-rw-r--r--include/linux/ssb/ssb.h2
2 files changed, 3 insertions, 1 deletions
diff --git a/drivers/ssb/main.c b/drivers/ssb/main.c
index 51275aac5b34..a732b396e602 100644
--- a/drivers/ssb/main.c
+++ b/drivers/ssb/main.c
@@ -486,6 +486,7 @@ static int ssb_devices_register(struct ssb_bus *bus)
486#ifdef CONFIG_SSB_PCIHOST 486#ifdef CONFIG_SSB_PCIHOST
487 sdev->irq = bus->host_pci->irq; 487 sdev->irq = bus->host_pci->irq;
488 dev->parent = &bus->host_pci->dev; 488 dev->parent = &bus->host_pci->dev;
489 sdev->dma_dev = dev->parent;
489#endif 490#endif
490 break; 491 break;
491 case SSB_BUSTYPE_PCMCIA: 492 case SSB_BUSTYPE_PCMCIA:
@@ -501,6 +502,7 @@ static int ssb_devices_register(struct ssb_bus *bus)
501 break; 502 break;
502 case SSB_BUSTYPE_SSB: 503 case SSB_BUSTYPE_SSB:
503 dev->dma_mask = &dev->coherent_dma_mask; 504 dev->dma_mask = &dev->coherent_dma_mask;
505 sdev->dma_dev = dev;
504 break; 506 break;
505 } 507 }
506 508
diff --git a/include/linux/ssb/ssb.h b/include/linux/ssb/ssb.h
index a2608bff9c78..0d5f04316b35 100644
--- a/include/linux/ssb/ssb.h
+++ b/include/linux/ssb/ssb.h
@@ -167,7 +167,7 @@ struct ssb_device {
167 * is an optimization. */ 167 * is an optimization. */
168 const struct ssb_bus_ops *ops; 168 const struct ssb_bus_ops *ops;
169 169
170 struct device *dev; 170 struct device *dev, *dma_dev;
171 171
172 struct ssb_bus *bus; 172 struct ssb_bus *bus;
173 struct ssb_device_id id; 173 struct ssb_device_id id;