mach64_drv.h (145132) | mach64_drv.h (152909) |
---|---|
1/* mach64_drv.h -- Private header for mach64 driver -*- linux-c -*- 2 * Created: Fri Nov 24 22:07:58 2000 by gareth@valinux.com | 1/* mach64_drv.h -- Private header for mach64 driver -*- linux-c -*- 2 * Created: Fri Nov 24 22:07:58 2000 by gareth@valinux.com |
3 * | 3 */ 4/*- |
4 * Copyright 2000 Gareth Hughes 5 * Copyright 2002 Frank C. Earl 6 * Copyright 2002-2003 Leif Delgass 7 * All Rights Reserved. 8 * 9 * Permission is hereby granted, free of charge, to any person obtaining a 10 * copy of this software and associated documentation files (the "Software"), 11 * to deal in the Software without restriction, including without limitation --- 12 unchanged lines hidden (view full) --- 24 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 25 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 26 * 27 * Authors: 28 * Gareth Hughes <gareth@valinux.com> 29 * Frank C. Earl <fearl@airmail.net> 30 * Leif Delgass <ldelgass@retinalburn.net> 31 * Jos���Fonseca <j_r_fonseca@yahoo.co.uk> | 5 * Copyright 2000 Gareth Hughes 6 * Copyright 2002 Frank C. Earl 7 * Copyright 2002-2003 Leif Delgass 8 * All Rights Reserved. 9 * 10 * Permission is hereby granted, free of charge, to any person obtaining a 11 * copy of this software and associated documentation files (the "Software"), 12 * to deal in the Software without restriction, including without limitation --- 12 unchanged lines hidden (view full) --- 25 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 26 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 27 * 28 * Authors: 29 * Gareth Hughes <gareth@valinux.com> 30 * Frank C. Earl <fearl@airmail.net> 31 * Leif Delgass <ldelgass@retinalburn.net> 32 * Jos���Fonseca <j_r_fonseca@yahoo.co.uk> |
32 * 33 * $FreeBSD: head/sys/dev/drm/mach64_drv.h 145132 2005-04-16 03:44:47Z anholt $ | |
34 */ 35 | 33 */ 34 |
35#include <sys/cdefs.h> 36__FBSDID("$FreeBSD: head/sys/dev/drm/mach64_drv.h 152909 2005-11-28 23:13:57Z anholt $"); 37 |
|
36#ifndef __MACH64_DRV_H__ 37#define __MACH64_DRV_H__ 38 39/* General customization: 40 */ 41 42#define DRIVER_AUTHOR "Gareth Hughes, Leif Delgass, Jos�� Fonseca" 43 --- 13 unchanged lines hidden (view full) --- 57typedef struct drm_mach64_freelist { 58 struct list_head list; /* List pointers for free_list, placeholders, or pending list */ 59 drm_buf_t *buf; /* Pointer to the buffer */ 60 int discard; /* This flag is set when we're done (re)using a buffer */ 61 u32 ring_ofs; /* dword offset in ring of last descriptor for this buffer */ 62} drm_mach64_freelist_t; 63 64typedef struct drm_mach64_descriptor_ring { | 38#ifndef __MACH64_DRV_H__ 39#define __MACH64_DRV_H__ 40 41/* General customization: 42 */ 43 44#define DRIVER_AUTHOR "Gareth Hughes, Leif Delgass, Jos�� Fonseca" 45 --- 13 unchanged lines hidden (view full) --- 59typedef struct drm_mach64_freelist { 60 struct list_head list; /* List pointers for free_list, placeholders, or pending list */ 61 drm_buf_t *buf; /* Pointer to the buffer */ 62 int discard; /* This flag is set when we're done (re)using a buffer */ 63 u32 ring_ofs; /* dword offset in ring of last descriptor for this buffer */ 64} drm_mach64_freelist_t; 65 66typedef struct drm_mach64_descriptor_ring { |
65 dma_addr_t handle; /* handle (bus address) of ring returned by pci_alloc_consistent() */ | 67 drm_dma_handle_t *dmah; /* Handle to pci dma memory */ |
66 void *start; /* write pointer (cpu address) to start of descriptor ring */ 67 u32 start_addr; /* bus address of beginning of descriptor ring */ 68 int size; /* size of ring in bytes */ 69 70 u32 head_addr; /* bus address of descriptor ring head */ 71 u32 head; /* dword offset of descriptor ring head */ 72 u32 tail; /* dword offset of descriptor ring tail */ 73 u32 tail_mask; /* mask used to wrap ring */ --- 31 unchanged lines hidden (view full) --- 105 drm_local_map_t *sarea; 106 drm_local_map_t *fb; 107 drm_local_map_t *mmio; 108 drm_local_map_t *ring_map; 109 drm_local_map_t *dev_buffers; /* this is a pointer to a structure in dev */ 110 drm_local_map_t *agp_textures; 111} drm_mach64_private_t; 112 | 68 void *start; /* write pointer (cpu address) to start of descriptor ring */ 69 u32 start_addr; /* bus address of beginning of descriptor ring */ 70 int size; /* size of ring in bytes */ 71 72 u32 head_addr; /* bus address of descriptor ring head */ 73 u32 head; /* dword offset of descriptor ring head */ 74 u32 tail; /* dword offset of descriptor ring tail */ 75 u32 tail_mask; /* mask used to wrap ring */ --- 31 unchanged lines hidden (view full) --- 107 drm_local_map_t *sarea; 108 drm_local_map_t *fb; 109 drm_local_map_t *mmio; 110 drm_local_map_t *ring_map; 111 drm_local_map_t *dev_buffers; /* this is a pointer to a structure in dev */ 112 drm_local_map_t *agp_textures; 113} drm_mach64_private_t; 114 |
115extern drm_ioctl_desc_t mach64_ioctls[]; 116extern int mach64_max_ioctl; 117 |
|
113 /* mach64_dma.c */ 114extern int mach64_dma_init(DRM_IOCTL_ARGS); 115extern int mach64_dma_idle(DRM_IOCTL_ARGS); 116extern int mach64_dma_flush(DRM_IOCTL_ARGS); 117extern int mach64_engine_reset(DRM_IOCTL_ARGS); 118extern int mach64_dma_buffers(DRM_IOCTL_ARGS); | 118 /* mach64_dma.c */ 119extern int mach64_dma_init(DRM_IOCTL_ARGS); 120extern int mach64_dma_idle(DRM_IOCTL_ARGS); 121extern int mach64_dma_flush(DRM_IOCTL_ARGS); 122extern int mach64_engine_reset(DRM_IOCTL_ARGS); 123extern int mach64_dma_buffers(DRM_IOCTL_ARGS); |
119extern void mach64_driver_pretakedown(drm_device_t * dev); | 124extern void mach64_driver_lastclose(drm_device_t * dev); |
120 121extern int mach64_init_freelist(drm_device_t * dev); 122extern void mach64_destroy_freelist(drm_device_t * dev); 123extern drm_buf_t *mach64_freelist_get(drm_mach64_private_t * dev_priv); 124 125extern int mach64_do_wait_for_fifo(drm_mach64_private_t * dev_priv, 126 int entries); 127extern int mach64_do_wait_for_idle(drm_mach64_private_t * dev_priv); --- 918 unchanged lines hidden --- | 125 126extern int mach64_init_freelist(drm_device_t * dev); 127extern void mach64_destroy_freelist(drm_device_t * dev); 128extern drm_buf_t *mach64_freelist_get(drm_mach64_private_t * dev_priv); 129 130extern int mach64_do_wait_for_fifo(drm_mach64_private_t * dev_priv, 131 int entries); 132extern int mach64_do_wait_for_idle(drm_mach64_private_t * dev_priv); --- 918 unchanged lines hidden --- |