> + > + if (priv->dma_cap.addr64) { > + ret = dma_set_mask_and_coherent(device, > + DMA_BIT_MASK(priv->dma_cap.addr64)); > + if (!ret) > + dev_info(priv->device, "Using %d bits DMA width\n", > + priv->dma_cap.addr64); > + }
Hi Jose If dma_set_mask_and_coherent() fails, i think you are supposed to fall back to 32 bits. So you might want to clear priv->dma_cap.addr64. But don't trust my, i could be wrong. Andrew