Merge branch 'drm-patches' of master.kernel.org:/pub/scm/linux/kernel/git/airlied...
[powerpc.git] / drivers / char / drm / drmP.h
index 01e1f25..6dcdceb 100644 (file)
@@ -431,7 +431,8 @@ typedef struct drm_device_dma {
        enum {
                _DRM_DMA_USE_AGP = 0x01,
                _DRM_DMA_USE_SG = 0x02,
-               _DRM_DMA_USE_FB = 0x04
+               _DRM_DMA_USE_FB = 0x04,
+               _DRM_DMA_USE_PCI_RO = 0x08
        } flags;
 
 } drm_device_dma_t;
@@ -560,8 +561,7 @@ struct drm_driver {
        int (*context_dtor) (struct drm_device * dev, int context);
        int (*kernel_context_switch) (struct drm_device * dev, int old,
                                      int new);
-       void (*kernel_context_switch_unlock) (struct drm_device * dev,
-                                             drm_lock_t *lock);
+       void (*kernel_context_switch_unlock) (struct drm_device * dev);
        int (*vblank_wait) (struct drm_device * dev, unsigned int *sequence);
        int (*vblank_wait2) (struct drm_device * dev, unsigned int *sequence);
        int (*dri_library_name) (struct drm_device *dev, char *buf);
@@ -715,6 +715,8 @@ typedef struct drm_device {
        drm_vbl_sig_t vbl_sigs;         /**< signal list to send on VBLANK */
        drm_vbl_sig_t vbl_sigs2;        /**< signals to send on secondary VBLANK */
        unsigned int vbl_pending;
+       spinlock_t tasklet_lock;        /**< For drm_locked_tasklet */
+       void (*locked_tasklet_func)(struct drm_device *dev);
 
        /*@} */
        cycles_t ctx_start;
@@ -966,6 +968,7 @@ extern int drm_wait_vblank(struct inode *inode, struct file *filp,
                           unsigned int cmd, unsigned long arg);
 extern int drm_vblank_wait(drm_device_t * dev, unsigned int *vbl_seq);
 extern void drm_vbl_send_signals(drm_device_t * dev);
+extern void drm_locked_tasklet(drm_device_t *dev, void(*func)(drm_device_t*));
 
                                /* AGP/GART support (drm_agpsupport.h) */
 extern drm_agp_head_t *drm_agp_init(drm_device_t * dev);
@@ -1139,9 +1142,5 @@ extern void *drm_calloc(size_t nmemb, size_t size, int area);
 extern unsigned long drm_core_get_map_ofs(drm_map_t * map);
 extern unsigned long drm_core_get_reg_ofs(struct drm_device *dev);
 
-#ifndef pci_pretty_name
-#define pci_pretty_name(dev) ""
-#endif
-
 #endif                         /* __KERNEL__ */
 #endif