diff --git a/mmngr_drv/mmngr/mmngr-module/files/mmngr/drv/mmngr_drv.c b/mmngr_drv/mmngr/mmngr-module/files/mmngr/drv/mmngr_drv.c index 2a65f73..2925815 100644 --- a/mmngr_drv/mmngr/mmngr-module/files/mmngr/drv/mmngr_drv.c +++ b/mmngr_drv/mmngr/mmngr-module/files/mmngr/drv/mmngr_drv.c @@ -1749,17 +1749,25 @@ static int mm_probe(struct platform_device *pdev) if (p == NULL) return -1; - dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32)); - #ifdef IPMMU_MMU_SUPPORT if (!rcar_gen3_ipmmu) { pr_err("%s MMD ERROR\n", __func__); return -1; } - dma_set_mask_and_coherent(dev, DMA_BIT_MASK(40)); + ret = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(40)); + if (ret) { + pr_err("MMD mm_init ERROR unable to set DMA mode: %d.\n", ret); + return -1; + } ipmmu_mmu_startup(); ipmmu_mmu_initialize(); +#else + ret = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(32)); + if (ret) { + pr_err("MMD mm_init ERROR unable to set DMA mode: %d.\n", ret); + return -1; + } #endif misc_register(&misc);