mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-24 01:37:10 +02:00
[backfire] backport the ssb dma device change from trunk
git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@21802 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
072e160420
commit
f210f1fdc9
@ -0,0 +1,29 @@
|
||||
--- a/drivers/ssb/main.c
|
||||
+++ b/drivers/ssb/main.c
|
||||
@@ -465,6 +465,7 @@ static int ssb_devices_register(struct s
|
||||
#ifdef CONFIG_SSB_PCIHOST
|
||||
sdev->irq = bus->host_pci->irq;
|
||||
dev->parent = &bus->host_pci->dev;
|
||||
+ sdev->dma_dev = dev->parent;
|
||||
#endif
|
||||
break;
|
||||
case SSB_BUSTYPE_PCMCIA:
|
||||
@@ -475,6 +476,7 @@ static int ssb_devices_register(struct s
|
||||
break;
|
||||
case SSB_BUSTYPE_SSB:
|
||||
dev->dma_mask = &dev->coherent_dma_mask;
|
||||
+ sdev->dma_dev = dev;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
--- a/include/linux/ssb/ssb.h
|
||||
+++ b/include/linux/ssb/ssb.h
|
||||
@@ -167,7 +167,7 @@ struct ssb_device {
|
||||
* is an optimization. */
|
||||
const struct ssb_bus_ops *ops;
|
||||
|
||||
- struct device *dev;
|
||||
+ struct device *dev, *dma_dev;
|
||||
|
||||
struct ssb_bus *bus;
|
||||
struct ssb_device_id id;
|
@ -0,0 +1,52 @@
|
||||
From: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
|
||||
|
||||
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>
|
||||
---
|
||||
|
||||
drivers/ssb/main.c | 2 ++
|
||||
include/linux/ssb/ssb.h | 2 +-
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/drivers/ssb/main.c
|
||||
+++ b/drivers/ssb/main.c
|
||||
@@ -486,6 +486,7 @@ static int ssb_devices_register(struct s
|
||||
#ifdef CONFIG_SSB_PCIHOST
|
||||
sdev->irq = bus->host_pci->irq;
|
||||
dev->parent = &bus->host_pci->dev;
|
||||
+ sdev->dma_dev = dev->parent;
|
||||
#endif
|
||||
break;
|
||||
case SSB_BUSTYPE_PCMCIA:
|
||||
@@ -501,6 +502,7 @@ static int ssb_devices_register(struct s
|
||||
break;
|
||||
case SSB_BUSTYPE_SSB:
|
||||
dev->dma_mask = &dev->coherent_dma_mask;
|
||||
+ sdev->dma_dev = dev;
|
||||
break;
|
||||
}
|
||||
|
||||
--- a/include/linux/ssb/ssb.h
|
||||
+++ b/include/linux/ssb/ssb.h
|
||||
@@ -167,7 +167,7 @@ struct ssb_device {
|
||||
* is an optimization. */
|
||||
const struct ssb_bus_ops *ops;
|
||||
|
||||
- struct device *dev;
|
||||
+ struct device *dev, *dma_dev;
|
||||
|
||||
struct ssb_bus *bus;
|
||||
struct ssb_device_id id;
|
Loading…
Reference in New Issue
Block a user