[PATCH] drivers: usb: dwc3 : Configure DMA properties and ops from DT

From: Rajesh Bhagat
Date: Tue May 03 2016 - 23:58:13 EST


On certain platforms (e.g. ARM64) the dma_ops needs to be explicitly set
to be able to do DMA allocations, so use the of_dma_configure() helper
to populate the dma properties and assign an appropriate dma_ops.

Signed-off-by: Rajesh Bhagat <rajesh.bhagat@xxxxxxx>
Reviewed-by: Yang-Leo Li <leoyang.li@xxxxxxx>
---
drivers/usb/dwc3/host.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c
index c679f63..4d5b783 100644
--- a/drivers/usb/dwc3/host.c
+++ b/drivers/usb/dwc3/host.c
@@ -17,6 +17,7 @@

#include <linux/platform_device.h>
#include <linux/usb/xhci_pdriver.h>
+#include <linux/of_device.h>

#include "core.h"

@@ -32,6 +33,9 @@ int dwc3_host_init(struct dwc3 *dwc)
return -ENOMEM;
}

+ if (IS_ENABLED(CONFIG_OF) && dwc->dev->of_node)
+ of_dma_configure(&xhci->dev, dwc->dev->of_node);
+
dma_set_coherent_mask(&xhci->dev, dwc->dev->coherent_dma_mask);

xhci->dev.parent = dwc->dev;
--
2.6.2.198.g614a2ac