diff options
author | David Herrmann <dh.herrmann@gmail.com> | 2014-08-29 12:12:32 +0200 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2014-09-10 09:40:11 +0200 |
commit | cc5ea5947a52b98cd9a03d4011a5a12b4e5a99c4 (patch) | |
tree | 11a83a3663b99b96437e11d4bffd1ce240cfceb5 | |
parent | drm: drop unused "struct drm_waitlist" (diff) | |
download | linux-cc5ea5947a52b98cd9a03d4011a5a12b4e5a99c4.tar.xz linux-cc5ea5947a52b98cd9a03d4011a5a12b4e5a99c4.zip |
drm: move AGP definitions harder
Move drm_agp_head to drm_agpsupport.h and drm_agp_mem into drm_legacy.h.
Unfortunately, drivers still heavily access drm_agp_head so we cannot
move it to drm_legacy.h. However, at least it's no longer visible in
drmP.h now (it's directly included from it, though).
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/drm_agpsupport.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/drm_legacy.h | 15 | ||||
-rw-r--r-- | drivers/gpu/drm/drm_memory.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/drm_vm.c | 1 | ||||
-rw-r--r-- | include/drm/drmP.h | 30 | ||||
-rw-r--r-- | include/drm/drm_agpsupport.h | 13 |
6 files changed, 32 insertions, 29 deletions
diff --git a/drivers/gpu/drm/drm_agpsupport.c b/drivers/gpu/drm/drm_agpsupport.c index dde205cef384..4b2b4aa5033b 100644 --- a/drivers/gpu/drm/drm_agpsupport.c +++ b/drivers/gpu/drm/drm_agpsupport.c @@ -34,6 +34,7 @@ #include <drm/drmP.h> #include <linux/module.h> #include <linux/slab.h> +#include "drm_legacy.h" #if __OS_HAS_AGP diff --git a/drivers/gpu/drm/drm_legacy.h b/drivers/gpu/drm/drm_legacy.h index 47cb9de98fb9..f2d076823b2d 100644 --- a/drivers/gpu/drm/drm_legacy.h +++ b/drivers/gpu/drm/drm_legacy.h @@ -28,6 +28,9 @@ * should no longer be using. They cannot be removed as legacy * drivers use them, and removing them are API breaks. */ +#include <linux/list.h> + +struct agp_memory; struct drm_device; struct drm_file; @@ -68,4 +71,16 @@ int drm_legacy_freebufs(struct drm_device *d, void *v, struct drm_file *f); int drm_legacy_mapbufs(struct drm_device *d, void *v, struct drm_file *f); int drm_legacy_dma_ioctl(struct drm_device *d, void *v, struct drm_file *f); +/* + * AGP Support + */ + +struct drm_agp_mem { + unsigned long handle; + struct agp_memory *memory; + unsigned long bound; + int pages; + struct list_head head; +}; + #endif /* __DRM_LEGACY_H__ */ diff --git a/drivers/gpu/drm/drm_memory.c b/drivers/gpu/drm/drm_memory.c index 00c67c0f2381..7888dad5ab74 100644 --- a/drivers/gpu/drm/drm_memory.c +++ b/drivers/gpu/drm/drm_memory.c @@ -36,6 +36,7 @@ #include <linux/highmem.h> #include <linux/export.h> #include <drm/drmP.h> +#include "drm_legacy.h" #if __OS_HAS_AGP static void *agp_remap(unsigned long offset, unsigned long size, diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c index 352e3399d18f..be25174f10e4 100644 --- a/drivers/gpu/drm/drm_vm.c +++ b/drivers/gpu/drm/drm_vm.c @@ -40,6 +40,7 @@ #include <linux/efi.h> #include <linux/slab.h> #endif +#include "drm_legacy.h" struct drm_vma_entry { struct list_head head; diff --git a/include/drm/drmP.h b/include/drm/drmP.h index 0bf66f907f25..7a3c73c5375d 100644 --- a/include/drm/drmP.h +++ b/include/drm/drmP.h @@ -80,6 +80,7 @@ struct module; struct drm_file; struct drm_device; +struct drm_agp_head; struct device_node; struct videomode; @@ -440,35 +441,6 @@ struct drm_device_dma { }; /** - * AGP memory entry. Stored as a doubly linked list. - */ -struct drm_agp_mem { - unsigned long handle; /**< handle */ - struct agp_memory *memory; - unsigned long bound; /**< address */ - int pages; - struct list_head head; -}; - -/** - * AGP data. - * - * \sa drm_agp_init() and drm_device::agp. - */ -struct drm_agp_head { - struct agp_kern_info agp_info; /**< AGP device information */ - struct list_head memory; - unsigned long mode; /**< AGP mode */ - struct agp_bridge_data *bridge; - int enabled; /**< whether the AGP bus as been enabled */ - int acquired; /**< whether the AGP device has been acquired */ - unsigned long base; - int agp_mtrr; - int cant_use_aperture; - unsigned long page_mask; -}; - -/** * Scatter-gather memory. */ struct drm_sg_mem { diff --git a/include/drm/drm_agpsupport.h b/include/drm/drm_agpsupport.h index 86a02188074b..3bebeb4af864 100644 --- a/include/drm/drm_agpsupport.h +++ b/include/drm/drm_agpsupport.h @@ -8,6 +8,19 @@ #include <linux/agp_backend.h> #include <drm/drmP.h> +struct drm_agp_head { + struct agp_kern_info agp_info; + struct list_head memory; + unsigned long mode; + struct agp_bridge_data *bridge; + int enabled; + int acquired; + unsigned long base; + int agp_mtrr; + int cant_use_aperture; + unsigned long page_mask; +}; + #if __OS_HAS_AGP void drm_free_agp(struct agp_memory * handle, int pages); |