agpgart.h
001:
002:
003:
004:
005:
006:
007:
008:
009:
010:
011:
012:
013:
014:
015:
016:
017:
018:
019:
020:
021:
022:
023:
024:
025:
026:
027: #ifndef _AGP_H
028: #define _AGP_H 1
029:
030: #define AGPIOC_BASE 'A'
031: #define AGPIOC_INFO _IOR (AGPIOC_BASE, 0, struct agp_info*)
032: #define AGPIOC_ACQUIRE _IO (AGPIOC_BASE, 1)
033: #define AGPIOC_RELEASE _IO (AGPIOC_BASE, 2)
034: #define AGPIOC_SETUP _IOW (AGPIOC_BASE, 3, struct agp_setup*)
035: #define AGPIOC_RESERVE _IOW (AGPIOC_BASE, 4, struct agp_region*)
036: #define AGPIOC_PROTECT _IOW (AGPIOC_BASE, 5, struct agp_region*)
037: #define AGPIOC_ALLOCATE _IOWR(AGPIOC_BASE, 6, struct agp_allocate*)
038: #define AGPIOC_DEALLOCATE _IOW (AGPIOC_BASE, 7, int)
039: #define AGPIOC_BIND _IOW (AGPIOC_BASE, 8, struct agp_bind*)
040: #define AGPIOC_UNBIND _IOW (AGPIOC_BASE, 9, struct agp_unbind*)
041: #define AGPIOC_CHIPSET_FLUSH _IO (AGPIOC_BASE, 10)
042:
043: #define AGP_DEVICE "/dev/agpgart"
044:
045: #ifndef TRUE
046: #define TRUE 1
047: #endif
048:
049: #ifndef FALSE
050: #define FALSE 0
051: #endif
052:
053: #include <linux/types.h>
054:
055: struct agp_version {
056: __u16 major;
057: __u16 minor;
058: };
059:
060: typedef struct _agp_info {
061: struct agp_version version;
062: __u32 bridge_id;
063: __u32 agp_mode;
064: unsigned long aper_base;
065: size_t aper_size;
066: size_t pg_total;
067: size_t pg_system;
068: size_t pg_used;
069: } agp_info;
070:
071: typedef struct _agp_setup {
072: __u32 agp_mode;
073: } agp_setup;
074:
075:
076:
077:
078: typedef struct _agp_segment {
079: __kernel_off_t pg_start;
080: __kernel_size_t pg_count;
081: int prot;
082: } agp_segment;
083:
084: typedef struct _agp_region {
085: __kernel_pid_t pid;
086: __kernel_size_t seg_count;
087: struct _agp_segment *seg_list;
088: } agp_region;
089:
090: typedef struct _agp_allocate {
091: int key;
092: __kernel_size_t pg_count;
093: __u32 type;
094: __u32 physical;
095:
096:
097:
098: } agp_allocate;
099:
100: typedef struct _agp_bind {
101: int key;
102: __kernel_off_t pg_start;
103: } agp_bind;
104:
105: typedef struct _agp_unbind {
106: int key;
107: __u32 priority;
108: } agp_unbind;
109:
110:
111: #endif
112:
© Andrew Scott 2006 -
2025,
All Rights Reserved