adding linux-samsung-soc mailing list and Dave Airlie. On Fri, Aug 23, 2013 at 12:05 PM, Vikas Sajjan <vikas.sajjan@xxxxxxxxxx> wrote: > To address the case where physically contiguous memory MAY NOT be a mandatory > requirement for framebuffer for the application calling exynos_drm_gem_dumb_create, > the patch adds a feature to get non physically contiguous memory for framebuffer, > if physically contiguous memory allocation fails and if IOMMU is supported. > > Signed-off-by: Vikas Sajjan <vikas.sajjan@xxxxxxxxxx> > Signed-off-by: Arun Kumar <arun.kk@xxxxxxxxxxx> > --- > drivers/gpu/drm/exynos/exynos_drm_gem.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c b/drivers/gpu/drm/exynos/exynos_drm_gem.c > index 2eabe1a..66d1b40 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_gem.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c > @@ -17,6 +17,7 @@ > #include "exynos_drm_drv.h" > #include "exynos_drm_gem.h" > #include "exynos_drm_buf.h" > +#include "exynos_drm_iommu.h" > > static unsigned int convert_to_vm_err_msg(int msg) > { > @@ -666,6 +667,18 @@ int exynos_drm_gem_dumb_create(struct drm_file *file_priv, > > exynos_gem_obj = exynos_drm_gem_create(dev, EXYNOS_BO_CONTIG | > EXYNOS_BO_WC, args->size); > + /* > + * If physically contiguous memory allocation fails and if IOMMU is > + * supported then try to get buffer from non physically contiguous > + * memory area. > + */ > + if (IS_ERR(exynos_gem_obj) && is_drm_iommu_supported(dev)) { > + dev_warn(dev->dev, "contiguous FB allocation failed, falling back to non-contiguous\n"); > + exynos_gem_obj = exynos_drm_gem_create(dev, > + EXYNOS_BO_NONCONTIG | EXYNOS_BO_WC, > + args->size); > + } > + > if (IS_ERR(exynos_gem_obj)) > return PTR_ERR(exynos_gem_obj); > > -- > 1.7.9.5 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel