@@ -128,6 +128,9 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
data->supports_runtime_pm = true;
}
+ if (of_device_is_compatible(np, "fsl,imx28-usb"))
+ pdata.flags |= CI_HDRC_IMX28_WRITE_FIX;
+
if (!pdev->dev.dma_mask)
pdev->dev.dma_mask = &pdev->dev.coherent_dma_mask;
if (!pdev->dev.coherent_dma_mask)
@@ -309,6 +312,7 @@ static const struct dev_pm_ops ci_hdrc_imx_pm_ops = {
};
static const struct of_device_id ci_hdrc_imx_dt_ids[] = {
{ .compatible = "fsl,imx27-usb", },
+ { .compatible = "fsl,imx28-usb", },
{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, ci_hdrc_imx_dt_ids);
Due to imx28 needs ARM swp instruction for writing, we set CI_HDRC_IMX28_WRITE_FIX for imx28. Signed-off-by: Peter Chen <peter.chen@freescale.com> --- drivers/usb/chipidea/ci_hdrc_imx.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)