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 v5.12 117 lines 3.1 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 31struct drm_agp_head *drm_agp_init(struct drm_device *dev); 32void drm_legacy_agp_clear(struct drm_device *dev); 33int drm_agp_acquire(struct drm_device *dev); 34int drm_agp_acquire_ioctl(struct drm_device *dev, void *data, 35 struct drm_file *file_priv); 36int drm_agp_release(struct drm_device *dev); 37int drm_agp_release_ioctl(struct drm_device *dev, void *data, 38 struct drm_file *file_priv); 39int drm_agp_enable(struct drm_device *dev, struct drm_agp_mode mode); 40int drm_agp_enable_ioctl(struct drm_device *dev, void *data, 41 struct drm_file *file_priv); 42int drm_agp_info(struct drm_device *dev, struct drm_agp_info *info); 43int drm_agp_info_ioctl(struct drm_device *dev, void *data, 44 struct drm_file *file_priv); 45int drm_agp_alloc(struct drm_device *dev, struct drm_agp_buffer *request); 46int drm_agp_alloc_ioctl(struct drm_device *dev, void *data, 47 struct drm_file *file_priv); 48int drm_agp_free(struct drm_device *dev, struct drm_agp_buffer *request); 49int drm_agp_free_ioctl(struct drm_device *dev, void *data, 50 struct drm_file *file_priv); 51int drm_agp_unbind(struct drm_device *dev, struct drm_agp_binding *request); 52int drm_agp_unbind_ioctl(struct drm_device *dev, void *data, 53 struct drm_file *file_priv); 54int drm_agp_bind(struct drm_device *dev, struct drm_agp_binding *request); 55int drm_agp_bind_ioctl(struct drm_device *dev, void *data, 56 struct drm_file *file_priv); 57 58#else /* CONFIG_AGP */ 59 60static inline struct drm_agp_head *drm_agp_init(struct drm_device *dev) 61{ 62 return NULL; 63} 64 65static inline void drm_legacy_agp_clear(struct drm_device *dev) 66{ 67} 68 69static inline int drm_agp_acquire(struct drm_device *dev) 70{ 71 return -ENODEV; 72} 73 74static inline int drm_agp_release(struct drm_device *dev) 75{ 76 return -ENODEV; 77} 78 79static inline int drm_agp_enable(struct drm_device *dev, 80 struct drm_agp_mode mode) 81{ 82 return -ENODEV; 83} 84 85static inline int drm_agp_info(struct drm_device *dev, 86 struct drm_agp_info *info) 87{ 88 return -ENODEV; 89} 90 91static inline int drm_agp_alloc(struct drm_device *dev, 92 struct drm_agp_buffer *request) 93{ 94 return -ENODEV; 95} 96 97static inline int drm_agp_free(struct drm_device *dev, 98 struct drm_agp_buffer *request) 99{ 100 return -ENODEV; 101} 102 103static inline int drm_agp_unbind(struct drm_device *dev, 104 struct drm_agp_binding *request) 105{ 106 return -ENODEV; 107} 108 109static inline int drm_agp_bind(struct drm_device *dev, 110 struct drm_agp_binding *request) 111{ 112 return -ENODEV; 113} 114 115#endif /* CONFIG_AGP */ 116 117#endif /* _DRM_AGPSUPPORT_H_ */