Hi,
On Tuesday 16 October 2012 03:23 PM, Felipe Balbi wrote:
On Tue, Oct 16, 2012 at 02:15:56PM +0530, Vivek Gautam wrote:
This patch adds support to parse probe data for
dwc3-exynos driver using device tree.
Signed-off-by: Vivek Gautam <gautam.vivek@xxxxxxxxxxx>
---
drivers/usb/dwc3/dwc3-exynos.c | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
index ca65978..d11ef49 100644
--- a/drivers/usb/dwc3/dwc3-exynos.c
+++ b/drivers/usb/dwc3/dwc3-exynos.c
@@ -21,6 +21,7 @@
#include <linux/clk.h>
#include <linux/usb/otg.h>
#include <linux/usb/nop-usb-xceiv.h>
+#include <linux/of.h>
#include "core.h"
@@ -87,6 +88,8 @@ err1:
return ret;
}
+static u64 dwc3_exynos_dma_mask = DMA_BIT_MASK(32);
+
static int __devinit dwc3_exynos_probe(struct platform_device *pdev)
{
struct dwc3_exynos_data *pdata = pdev->dev.platform_data;
@@ -103,6 +106,14 @@ static int __devinit dwc3_exynos_probe(struct platform_device *pdev)
goto err0;
}
+ /*
+ * Right now device-tree probed devices don't get dma_mask set.
+ * Since shared usb code relies on it, set it here for now.
+ * Once we move to full device tree support this will vanish off.
+ */
+ if (!pdev->dev.dma_mask)
+ pdev->dev.dma_mask = &dwc3_exynos_dma_mask;
says who ?
$ git grep -e dma_mask drivers/of/
drivers/of/platform.c: dev->dev.dma_mask = &dev->archdata.dma_mask;
drivers/of/platform.c: dev->archdata.dma_mask = 0xffffffffUL;
drivers/of/platform.c: dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
drivers/of/platform.c: dev->dev.coherent_dma_mask = ~0;
drivers/of/platform.c: dev->dma_mask = ~0;
-ECONFUSED
dma_mask is set under some ifdef except for "dev->dma_mask = ~0;".
However I agree with you for coherent_dma_mask case.
Thanks
Kishon
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html