[PATCH] drm/ttm: fix populate_and_map() functions once more
Alex Deucher
alexdeucher at gmail.com
Mon Nov 27 22:56:19 UTC 2017
On Mon, Nov 27, 2017 at 7:21 AM, Christian König
<ckoenig.leichtzumerken at gmail.com> wrote:
> This reverts "drm/ttm: Fix configuration error around populate_and_map()
> functions".
>
> This fix has gone into the wrong direction. Those helpers should be
> available even when neither CONFIG_INTEL_IOMMU nor CONFIG_SWIOTLB are
> set.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
Acked-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> drivers/gpu/drm/ttm/ttm_page_alloc.c | 2 --
> include/drm/ttm/ttm_page_alloc.h | 32 ++++++++++----------------------
> 2 files changed, 10 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc.c b/drivers/gpu/drm/ttm/ttm_page_alloc.c
> index 1543532b8740..c82d94cbbabc 100644
> --- a/drivers/gpu/drm/ttm/ttm_page_alloc.c
> +++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c
> @@ -1096,7 +1096,6 @@ void ttm_pool_unpopulate(struct ttm_tt *ttm)
> }
> EXPORT_SYMBOL(ttm_pool_unpopulate);
>
> -#if defined(CONFIG_SWIOTLB) || defined(CONFIG_INTEL_IOMMU)
> int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt)
> {
> unsigned i, j;
> @@ -1167,7 +1166,6 @@ void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt)
> ttm_pool_unpopulate(&tt->ttm);
> }
> EXPORT_SYMBOL(ttm_unmap_and_unpopulate_pages);
> -#endif
>
> int ttm_page_alloc_debugfs(struct seq_file *m, void *data)
> {
> diff --git a/include/drm/ttm/ttm_page_alloc.h b/include/drm/ttm/ttm_page_alloc.h
> index 38a2b4770c35..593811362a91 100644
> --- a/include/drm/ttm/ttm_page_alloc.h
> +++ b/include/drm/ttm/ttm_page_alloc.h
> @@ -59,11 +59,20 @@ int ttm_pool_populate(struct ttm_tt *ttm);
> void ttm_pool_unpopulate(struct ttm_tt *ttm);
>
> /**
> + * Populates and DMA maps pages to fullfil a ttm_dma_populate() request
> + */
> +int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt);
> +
> +/**
> + * Unpopulates and DMA unmaps pages as part of a
> + * ttm_dma_unpopulate() request */
> +void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt);
> +
> +/**
> * Output the state of pools to debugfs file
> */
> int ttm_page_alloc_debugfs(struct seq_file *m, void *data);
>
> -
> #if defined(CONFIG_SWIOTLB) || defined(CONFIG_INTEL_IOMMU)
> /**
> * Initialize pool allocator.
> @@ -83,17 +92,6 @@ int ttm_dma_page_alloc_debugfs(struct seq_file *m, void *data);
> int ttm_dma_populate(struct ttm_dma_tt *ttm_dma, struct device *dev);
> void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma, struct device *dev);
>
> -
> -/**
> - * Populates and DMA maps pages to fullfil a ttm_dma_populate() request
> - */
> -int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt);
> -
> -/**
> - * Unpopulates and DMA unmaps pages as part of a
> - * ttm_dma_unpopulate() request */
> -void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt);
> -
> #else
> static inline int ttm_dma_page_alloc_init(struct ttm_mem_global *glob,
> unsigned max_pages)
> @@ -116,16 +114,6 @@ static inline void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma,
> struct device *dev)
> {
> }
> -
> -static inline int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt)
> -{
> - return -ENOMEM;
> -}
> -
> -static inline void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt)
> -{
> -}
> -
> #endif
>
> #endif
> --
> 2.11.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
More information about the dri-devel
mailing list