Skip to content

Commit

Permalink
drm/ttm: Remove TTM_HAS_AGP
Browse files Browse the repository at this point in the history
It tries to do fancy things with excluding agp support if ttm is
built-in, but agp isn't. Instead just express this depency like drm
does and use CONFIG_AGP everywhere.

Also use the neat Makefile magic to make the entire ttm_agp_backend
file optional.

v2: Use IS_ENABLED(CONFIG_AGP) as suggested by Ville

v3: Review from Emil.

v4: Actually get it right as spotted by 0-day.

Cc: Emil Velikov <emil.l.velikov@gmail.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1459337046-25882-1-git-send-email-daniel.vetter@ffwll.ch
  • Loading branch information
Daniel Vetter committed Mar 30, 2016
1 parent 6753553 commit e6bf6e5
Show file tree
Hide file tree
Showing 5 changed files with 11 additions and 14 deletions.
3 changes: 2 additions & 1 deletion drivers/gpu/drm/ttm/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@
# Makefile for the drm device driver. This driver provides support for the

ccflags-y := -Iinclude/drm
ttm-y := ttm_agp_backend.o ttm_memory.o ttm_tt.o ttm_bo.o \
ttm-y := 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 ttm_page_alloc_dma.o
ttm-$(CONFIG_AGP) += ttm_agp_backend.o

obj-$(CONFIG_DRM_TTM) += ttm.o
3 changes: 0 additions & 3 deletions drivers/gpu/drm/ttm/ttm_agp_backend.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@
#include <drm/ttm/ttm_module.h>
#include <drm/ttm/ttm_bo_driver.h>
#include <drm/ttm/ttm_page_alloc.h>
#ifdef TTM_HAS_AGP
#include <drm/ttm/ttm_placement.h>
#include <linux/agp_backend.h>
#include <linux/module.h>
Expand Down Expand Up @@ -148,5 +147,3 @@ void ttm_agp_tt_unpopulate(struct ttm_tt *ttm)
ttm_pool_unpopulate(ttm);
}
EXPORT_SYMBOL(ttm_agp_tt_unpopulate);

#endif
8 changes: 4 additions & 4 deletions drivers/gpu/drm/ttm/ttm_page_alloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
#include <drm/ttm/ttm_bo_driver.h>
#include <drm/ttm/ttm_page_alloc.h>

#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
#include <asm/agp.h>
#endif

Expand Down Expand Up @@ -219,7 +219,7 @@ static struct ttm_pool_manager *_manager;
#ifndef CONFIG_X86
static int set_pages_array_wb(struct page **pages, int addrinarray)
{
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
int i;

for (i = 0; i < addrinarray; i++)
Expand All @@ -230,7 +230,7 @@ static int set_pages_array_wb(struct page **pages, int addrinarray)

static int set_pages_array_wc(struct page **pages, int addrinarray)
{
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
int i;

for (i = 0; i < addrinarray; i++)
Expand All @@ -241,7 +241,7 @@ static int set_pages_array_wc(struct page **pages, int addrinarray)

static int set_pages_array_uc(struct page **pages, int addrinarray)
{
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
int i;

for (i = 0; i < addrinarray; i++)
Expand Down
8 changes: 4 additions & 4 deletions drivers/gpu/drm/ttm/ttm_page_alloc_dma.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
#include <linux/kthread.h>
#include <drm/ttm/ttm_bo_driver.h>
#include <drm/ttm/ttm_page_alloc.h>
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
#include <asm/agp.h>
#endif

Expand Down Expand Up @@ -271,7 +271,7 @@ static struct kobj_type ttm_pool_kobj_type = {
#ifndef CONFIG_X86
static int set_pages_array_wb(struct page **pages, int addrinarray)
{
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
int i;

for (i = 0; i < addrinarray; i++)
Expand All @@ -282,7 +282,7 @@ static int set_pages_array_wb(struct page **pages, int addrinarray)

static int set_pages_array_wc(struct page **pages, int addrinarray)
{
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
int i;

for (i = 0; i < addrinarray; i++)
Expand All @@ -293,7 +293,7 @@ static int set_pages_array_wc(struct page **pages, int addrinarray)

static int set_pages_array_uc(struct page **pages, int addrinarray)
{
#ifdef TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
int i;

for (i = 0; i < addrinarray; i++)
Expand Down
3 changes: 1 addition & 2 deletions include/drm/ttm/ttm_bo_driver.h
Original file line number Diff line number Diff line change
Expand Up @@ -1030,8 +1030,7 @@ extern pgprot_t ttm_io_prot(uint32_t caching_flags, pgprot_t tmp);

extern const struct ttm_mem_type_manager_func ttm_bo_manager_func;

#if (defined(CONFIG_AGP) || (defined(CONFIG_AGP_MODULE) && defined(MODULE)))
#define TTM_HAS_AGP
#if IS_ENABLED(CONFIG_AGP)
#include <linux/agp_backend.h>

/**
Expand Down

0 comments on commit e6bf6e5

Please sign in to comment.