RE: [PATCH] drm/exynos: Add fallback option to get non physically contiguous memory for gem_dumb_create

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



One more thing, changed the subject to "Consider fallback option to
allocation fail". The subject is too long :)

Thanks,
Inki Dae


> -----Original Message-----
> From: linux-samsung-soc-owner@xxxxxxxxxxxxxxx [mailto:linux-samsung-soc-
> owner@xxxxxxxxxxxxxxx] On Behalf Of Vikas Sajjan
> Sent: Tuesday, August 27, 2013 12:05 PM
> To: Inki Dae
> Cc: DRI mailing list; kgene.kim; Sylwester Nawrocki; Rob Clark; Tomasz
> Figa; Laurent Pinchart; Patch Tracking; linaro-dev@xxxxxxxxxxxxxxxx; sunil
> joshi; linux-samsung-soc@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH] drm/exynos: Add fallback option to get non physically
> contiguous memory for gem_dumb_create
> 
> Thanks.
> 
> On 27 August 2013 08:14, Inki Dae <inki.dae@xxxxxxxxxxx> wrote:
> > Applied.
> >
> > Thanks,
> > Inki Dae
> >
> >> -----Original Message-----
> >> From: Vikas Sajjan [mailto:vikas.sajjan@xxxxxxxxxx]
> >> Sent: Friday, August 23, 2013 3:35 PM
> >> To: dri-devel@xxxxxxxxxxxxxxxxxxxxx; inki.dae@xxxxxxxxxxx
> >> Cc: kgene.kim@xxxxxxxxxxx; s.nawrocki@xxxxxxxxxxx; robdclark@xxxxxxxxx;
> >> tomasz.figa@xxxxxxxxx; laurent.pinchart@xxxxxxxxxxxxxxxx;
> >> patches@xxxxxxxxxx; linaro-dev@xxxxxxxxxxxxxxxx
> >> Subject: [PATCH] drm/exynos: Add fallback option to get non physically
> >> contiguous memory for gem_dumb_create
> >>
> >> 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
> >
> 
> 
> 
> --
> Thanks and Regards
>  Vikas Sajjan
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-
> soc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux