diff options
Diffstat (limited to 'shared/via_drv.h')
-rw-r--r-- | shared/via_drv.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/shared/via_drv.h b/shared/via_drv.h index 9677b7f3..582eb6de 100644 --- a/shared/via_drv.h +++ b/shared/via_drv.h @@ -27,6 +27,11 @@ #include "via_drm.h" +typedef struct drm_via_ring_buffer { + drm_map_t map; + char * virtual_start; +} drm_via_ring_buffer_t; + typedef struct drm_via_private { drm_via_sarea_t *sarea_priv; drm_map_t *sarea; @@ -34,6 +39,13 @@ typedef struct drm_via_private { drm_map_t *mmio; unsigned long agpAddr; wait_queue_head_t decoder_queue[VIA_NR_XVMC_LOCKS]; + char * dma_ptr; + unsigned int dma_low; + unsigned int dma_high; + unsigned int dma_offset; + uint32_t * last_pause_ptr; + volatile uint32_t * hw_addr_ptr; + drm_via_ring_buffer_t ring; } drm_via_private_t; @@ -53,4 +65,6 @@ extern int via_do_cleanup_map(drm_device_t *dev); extern int via_map_init(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg); +extern int via_dma_cleanup(drm_device_t *dev); + #endif |