Re: drm/exynos: when to call dma_map_sg() on a GEM object?

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

 



On 10/31/2015 05:44 AM, Tobias Jakobi wrote:
> Hey there,
> 
> this question arose during some discussion with someone concerning the
> Exynos mixer and G2D.
> 
> The question is the following. Consider the Exynos mixer when run under
> the IOMMU (that's sysmmu_tv IIRC). What exactly does setup the IOMMU
> mapping so that the mixer can scanout the framebuffer?
> 

IOMMU mapping is in dma_alloc_attrs(). Already IOMMU was integrated in
the DMA mapping API on ARM arch.

> There is exynos_gem_map_sgt_with_dma() in the Exynos GEM code, but it's
> currently exclusively used for the G2D and only when dealing with
> userptr (and not GEM) there.
> 
> I was looking at exynos_drm_alloc_buf() since this called when
> allocating a BO to be used as scanout.
> 
> I see dma_alloc_attrs() being called, which also sets the DMA address
> that is later used in the mixer code. But DMA_ATTR_NO_KERNEL_MAPPING is
> passed, so no mapping is done at this point.
> 

Did you read Documentation/DMA-attributes.txt document?
DMA_ATTR_NO_KERNEL_MAPPING is just to avoid creating a kernel virtual
mapping for the allocated buffer on ARM arch.

> Is the mapping done somewhere else, or is it simply not necessary here?
> 

What is the mapping you mean? As you know, the DMA address of the
memory gets from dma_alloc_attrs() and it can be used by device. There
is no reason to use dma_map_*().

Thanks.
--
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



[Index of Archives]     [Linux SoC Development]     [Linux Rockchip Development]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Linux SCSI]     [Yosemite News]

  Powered by Linux