summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/linux/generic-2.6/patches-2.6.30/942-ssb_add_dma_dev.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.30/942-ssb_add_dma_dev.patch b/target/linux/generic-2.6/patches-2.6.30/942-ssb_add_dma_dev.patch
new file mode 100644
index 0000000000..6b57e876cf
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.30/942-ssb_add_dma_dev.patch
@@ -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;