In some cases we got the device without dma_mask configured. We have to apply the default value to avoid crashes during memory mapping.
Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com> --- drivers/dma/dw_dmac.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/dma/dw_dmac.c b/drivers/dma/dw_dmac.c index e8d0679..a572a1e 100644 --- a/drivers/dma/dw_dmac.c +++ b/drivers/dma/dw_dmac.c @@ -1673,6 +1673,12 @@ static int dw_probe(struct platform_device *pdev) if (IS_ERR(regs)) return PTR_ERR(regs); + /* Apply default dma_mask if needed */ + if (!pdev->dev.dma_mask) { + pdev->dev.dma_mask = &pdev->dev.coherent_dma_mask; + pdev->dev.coherent_dma_mask = DMA_BIT_MASK(32); + } + dw_params = dma_read_byaddr(regs, DW_PARAMS); autocfg = dw_params >> DW_PARAMS_EN & 0x1; -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/