Re: [v5,6/6] usb: dwc3: Do not set dma coherent mask

From: Alexander Sverdlin
Date: Tue Dec 13 2016 - 15:47:43 EST


Hi!

On 17/11/16 12:43, Sriram Dash wrote:
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> The dma mask is correctly set up by the DT probe function, no
> need to override it any more.
>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> Signed-off-by: Sriram Dash <sriram.dash@xxxxxxx>

Successfully tested on arm64/axxia with DWC3 USB host, XHCIs properly inherit
DMA configuration. Therefore:

Tested-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>

> ---
> Changes in v5:
> - No update
>
> Changes in v4:
> - No update
>
> Changes in v3:
> - No update
>
> Changes in v2:
> - club the cleanup for dma coherent mask for device
>
> drivers/usb/dwc3/dwc3-exynos.c | 10 ----------
> drivers/usb/dwc3/dwc3-st.c | 1 -
> 2 files changed, 11 deletions(-)
>
> diff --git a/drivers/usb/dwc3/dwc3-exynos.c b/drivers/usb/dwc3/dwc3-exynos.c
> index 2f1fb7e..e27899b 100644
> --- a/drivers/usb/dwc3/dwc3-exynos.c
> +++ b/drivers/usb/dwc3/dwc3-exynos.c
> @@ -20,7 +20,6 @@
> #include <linux/kernel.h>
> #include <linux/slab.h>
> #include <linux/platform_device.h>
> -#include <linux/dma-mapping.h>
> #include <linux/clk.h>
> #include <linux/usb/otg.h>
> #include <linux/usb/usb_phy_generic.h>
> @@ -117,15 +116,6 @@ static int dwc3_exynos_probe(struct platform_device *pdev)
> if (!exynos)
> return -ENOMEM;
>
> - /*
> - * 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.
> - */
> - ret = dma_coerce_mask_and_coherent(dev, DMA_BIT_MASK(32));
> - if (ret)
> - return ret;
> -
> platform_set_drvdata(pdev, exynos);
>
> exynos->dev = dev;
> diff --git a/drivers/usb/dwc3/dwc3-st.c b/drivers/usb/dwc3/dwc3-st.c
> index 89a2f71..4d7439c 100644
> --- a/drivers/usb/dwc3/dwc3-st.c
> +++ b/drivers/usb/dwc3/dwc3-st.c
> @@ -218,7 +218,6 @@ static int st_dwc3_probe(struct platform_device *pdev)
> if (IS_ERR(regmap))
> return PTR_ERR(regmap);
>
> - dma_set_coherent_mask(dev, dev->coherent_dma_mask);
> dwc3_data->dev = dev;
> dwc3_data->regmap = regmap;
>
>

--
Best regards,
Alexander Sverdlin.