diff --git a/arch/arm64/mm/dma-mapping.c b/arch/arm64/mm/dma-mapping.c index 8e8474935289..f011f4c2c968 100644 --- a/arch/arm64/mm/dma-mapping.c +++ b/arch/arm64/mm/dma-mapping.c @@ -67,11 +67,10 @@ void arch_setup_dma_ops(struct device *dev, u64 dma_base, u64 size, { int cls = cache_line_size_of_cpu(); - WARN_TAINT(!coherent && cls > ARCH_DMA_MINALIGN, - TAINT_CPU_OUT_OF_SPEC, - "%s %s: ARCH_DMA_MINALIGN smaller than CTR_EL0.CWG (%d < %d)", - dev_driver_string(dev), dev_name(dev), - ARCH_DMA_MINALIGN, cls); + if (!coherent && cls > ARCH_DMA_MINALIGN) + panic("%s %s: ARCH_DMA_MINALIGN smaller than CTR_EL0.CWG (%d < %d)", + dev_driver_string(dev), dev_name(dev), ARCH_DMA_MINALIGN, + cls); dev->dma_coherent = coherent; if (iommu) {