drm: omapdrm: dss: Set the DMA coherent mask
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Fri, 13 Oct 2017 14:59:01 +0000 (17:59 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Tue, 19 Dec 2017 08:32:00 +0000 (10:32 +0200)
When merging the omapdrm and omapdss drivers the omapdrm virtual
platform device will disappear, and the omapdss platform device will be
used for DMA memory allocation. To prepare for that, set the DMA
coherent mask for the device.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/gpu/drm/omapdrm/dss/dss.c

index d1755f12236ba1d43f0b2266c58182993730908a..6ce26a4b93b3078e4477fc3c8ab8810d8c174057 100644 (file)
@@ -23,6 +23,7 @@
 #define DSS_SUBSYS_NAME "DSS"
 
 #include <linux/debugfs.h>
+#include <linux/dma-mapping.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/io.h>
@@ -1441,6 +1442,12 @@ static int dss_probe(struct platform_device *pdev)
 
        dss.pdev = pdev;
 
+       r = dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
+       if (r) {
+               dev_err(&pdev->dev, "Failed to set the DMA mask\n");
+               return r;
+       }
+
        /*
         * The various OMAP3-based SoCs can't be told apart using the compatible
         * string, use SoC device matching.