On Mon, Nov 04, 2013 at 05:57:38AM -0800, Thomas Hellstrom wrote: > Used by the vmwgfx driver That looks OK to me. And baremetal should not be affected as the Intel VT-d driver turns of the SWIOTLB driver - so it will still use the classic ttm pool code. Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> > > Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx> > Reviewed-by: Jakob Bornecrantz <jakob@xxxxxxxxxx> > --- > drivers/gpu/drm/ttm/Makefile | 6 +----- > drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 3 +++ > include/drm/ttm/ttm_page_alloc.h | 11 ++++++++++- > 3 files changed, 14 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/ttm/Makefile b/drivers/gpu/drm/ttm/Makefile > index b2b33dd..b433b9f 100644 > --- a/drivers/gpu/drm/ttm/Makefile > +++ b/drivers/gpu/drm/ttm/Makefile > @@ -5,10 +5,6 @@ ccflags-y := -Iinclude/drm > ttm-y := ttm_agp_backend.o ttm_memory.o ttm_tt.o ttm_bo.o \ > ttm_bo_util.o ttm_bo_vm.o ttm_module.o \ > ttm_object.o ttm_lock.o ttm_execbuf_util.o ttm_page_alloc.o \ > - ttm_bo_manager.o > - > -ifeq ($(CONFIG_SWIOTLB),y) > -ttm-y += ttm_page_alloc_dma.o > -endif > + ttm_bo_manager.o ttm_page_alloc_dma.o > > obj-$(CONFIG_DRM_TTM) += ttm.o > diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c > index 7957bee..fb8259f 100644 > --- a/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c > +++ b/drivers/gpu/drm/ttm/ttm_page_alloc_dma.c > @@ -33,6 +33,7 @@ > * when freed). > */ > > +#if defined(CONFIG_SWIOTLB) || defined(CONFIG_INTEL_IOMMU) > #define pr_fmt(fmt) "[TTM] " fmt > > #include <linux/dma-mapping.h> > @@ -1142,3 +1143,5 @@ int ttm_dma_page_alloc_debugfs(struct seq_file *m, void *data) > return 0; > } > EXPORT_SYMBOL_GPL(ttm_dma_page_alloc_debugfs); > + > +#endif > diff --git a/include/drm/ttm/ttm_page_alloc.h b/include/drm/ttm/ttm_page_alloc.h > index 706b962..d1f61bf 100644 > --- a/include/drm/ttm/ttm_page_alloc.h > +++ b/include/drm/ttm/ttm_page_alloc.h > @@ -62,7 +62,7 @@ extern void ttm_pool_unpopulate(struct ttm_tt *ttm); > extern int ttm_page_alloc_debugfs(struct seq_file *m, void *data); > > > -#ifdef CONFIG_SWIOTLB > +#if defined(CONFIG_SWIOTLB) || defined(CONFIG_INTEL_IOMMU) > /** > * Initialize pool allocator. > */ > @@ -94,6 +94,15 @@ static inline int ttm_dma_page_alloc_debugfs(struct seq_file *m, void *data) > { > return 0; > } > +static inline int ttm_dma_populate(struct ttm_dma_tt *ttm_dma, > + struct device *dev) > +{ > + return -ENOMEM; > +} > +static inline void ttm_dma_unpopulate(struct ttm_dma_tt *ttm_dma, > + struct device *dev) > +{ > +} > #endif > > #endif > -- > 1.7.10.4 ------------------------------------------------------------------------------ November Webinars for C, C++, Fortran Developers Accelerate application performance with scalable programming models. Explore techniques for threading, error checking, porting, and tuning. Get the most from the latest Intel processors and coprocessors. See abstracts and register http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk -- _______________________________________________ Dri-devel mailing list Dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel