Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v4.20-rc2 149 lines 3.9 kB view raw
1/* SPDX-License-Identifier: GPL-2.0 */ 2#ifndef _DRM_AGPSUPPORT_H_ 3#define _DRM_AGPSUPPORT_H_ 4 5#include <linux/agp_backend.h> 6#include <linux/kernel.h> 7#include <linux/list.h> 8#include <linux/mm.h> 9#include <linux/mutex.h> 10#include <linux/types.h> 11#include <uapi/drm/drm.h> 12 13struct drm_device; 14struct drm_file; 15 16struct drm_agp_head { 17 struct agp_kern_info agp_info; 18 struct list_head memory; 19 unsigned long mode; 20 struct agp_bridge_data *bridge; 21 int enabled; 22 int acquired; 23 unsigned long base; 24 int agp_mtrr; 25 int cant_use_aperture; 26 unsigned long page_mask; 27}; 28 29#if IS_ENABLED(CONFIG_AGP) 30 31void drm_free_agp(struct agp_memory * handle, int pages); 32int drm_bind_agp(struct agp_memory * handle, unsigned int start); 33int drm_unbind_agp(struct agp_memory * handle); 34struct agp_memory *drm_agp_bind_pages(struct drm_device *dev, 35 struct page **pages, 36 unsigned long num_pages, 37 uint32_t gtt_offset, 38 uint32_t type); 39 40struct drm_agp_head *drm_agp_init(struct drm_device *dev); 41void drm_legacy_agp_clear(struct drm_device *dev); 42int drm_agp_acquire(struct drm_device *dev); 43int drm_agp_acquire_ioctl(struct drm_device *dev, void *data, 44 struct drm_file *file_priv); 45int drm_agp_release(struct drm_device *dev); 46int drm_agp_release_ioctl(struct drm_device *dev, void *data, 47 struct drm_file *file_priv); 48int drm_agp_enable(struct drm_device *dev, struct drm_agp_mode mode); 49int drm_agp_enable_ioctl(struct drm_device *dev, void *data, 50 struct drm_file *file_priv); 51int drm_agp_info(struct drm_device *dev, struct drm_agp_info *info); 52int drm_agp_info_ioctl(struct drm_device *dev, void *data, 53 struct drm_file *file_priv); 54int drm_agp_alloc(struct drm_device *dev, struct drm_agp_buffer *request); 55int drm_agp_alloc_ioctl(struct drm_device *dev, void *data, 56 struct drm_file *file_priv); 57int drm_agp_free(struct drm_device *dev, struct drm_agp_buffer *request); 58int drm_agp_free_ioctl(struct drm_device *dev, void *data, 59 struct drm_file *file_priv); 60int drm_agp_unbind(struct drm_device *dev, struct drm_agp_binding *request); 61int drm_agp_unbind_ioctl(struct drm_device *dev, void *data, 62 struct drm_file *file_priv); 63int drm_agp_bind(struct drm_device *dev, struct drm_agp_binding *request); 64int drm_agp_bind_ioctl(struct drm_device *dev, void *data, 65 struct drm_file *file_priv); 66 67#else /* CONFIG_AGP */ 68 69static inline void drm_free_agp(struct agp_memory * handle, int pages) 70{ 71} 72 73static inline int drm_bind_agp(struct agp_memory * handle, unsigned int start) 74{ 75 return -ENODEV; 76} 77 78static inline int drm_unbind_agp(struct agp_memory * handle) 79{ 80 return -ENODEV; 81} 82 83static inline struct agp_memory *drm_agp_bind_pages(struct drm_device *dev, 84 struct page **pages, 85 unsigned long num_pages, 86 uint32_t gtt_offset, 87 uint32_t type) 88{ 89 return NULL; 90} 91 92static inline struct drm_agp_head *drm_agp_init(struct drm_device *dev) 93{ 94 return NULL; 95} 96 97static inline void drm_legacy_agp_clear(struct drm_device *dev) 98{ 99} 100 101static inline int drm_agp_acquire(struct drm_device *dev) 102{ 103 return -ENODEV; 104} 105 106static inline int drm_agp_release(struct drm_device *dev) 107{ 108 return -ENODEV; 109} 110 111static inline int drm_agp_enable(struct drm_device *dev, 112 struct drm_agp_mode mode) 113{ 114 return -ENODEV; 115} 116 117static inline int drm_agp_info(struct drm_device *dev, 118 struct drm_agp_info *info) 119{ 120 return -ENODEV; 121} 122 123static inline int drm_agp_alloc(struct drm_device *dev, 124 struct drm_agp_buffer *request) 125{ 126 return -ENODEV; 127} 128 129static inline int drm_agp_free(struct drm_device *dev, 130 struct drm_agp_buffer *request) 131{ 132 return -ENODEV; 133} 134 135static inline int drm_agp_unbind(struct drm_device *dev, 136 struct drm_agp_binding *request) 137{ 138 return -ENODEV; 139} 140 141static inline int drm_agp_bind(struct drm_device *dev, 142 struct drm_agp_binding *request) 143{ 144 return -ENODEV; 145} 146 147#endif /* CONFIG_AGP */ 148 149#endif /* _DRM_AGPSUPPORT_H_ */