aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/vmwgfx/vmwgfx_drv.h')
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_drv.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
index 429f917b60bf..9d55fa8cd0fe 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
@@ -39,9 +39,9 @@
39#include "ttm/ttm_execbuf_util.h" 39#include "ttm/ttm_execbuf_util.h"
40#include "ttm/ttm_module.h" 40#include "ttm/ttm_module.h"
41 41
42#define VMWGFX_DRIVER_DATE "20100209" 42#define VMWGFX_DRIVER_DATE "20100927"
43#define VMWGFX_DRIVER_MAJOR 1 43#define VMWGFX_DRIVER_MAJOR 1
44#define VMWGFX_DRIVER_MINOR 2 44#define VMWGFX_DRIVER_MINOR 4
45#define VMWGFX_DRIVER_PATCHLEVEL 0 45#define VMWGFX_DRIVER_PATCHLEVEL 0
46#define VMWGFX_FILE_PAGE_OFFSET 0x00100000 46#define VMWGFX_FILE_PAGE_OFFSET 0x00100000
47#define VMWGFX_FIFO_STATIC_SIZE (1024*1024) 47#define VMWGFX_FIFO_STATIC_SIZE (1024*1024)
@@ -151,6 +151,8 @@ struct vmw_overlay;
151 151
152struct vmw_master { 152struct vmw_master {
153 struct ttm_lock lock; 153 struct ttm_lock lock;
154 struct mutex fb_surf_mutex;
155 struct list_head fb_surf;
154}; 156};
155 157
156struct vmw_vga_topology_state { 158struct vmw_vga_topology_state {
@@ -277,6 +279,7 @@ struct vmw_private {
277 279
278 bool stealth; 280 bool stealth;
279 bool is_opened; 281 bool is_opened;
282 bool enable_fb;
280 283
281 /** 284 /**
282 * Master management. 285 * Master management.
@@ -285,6 +288,10 @@ struct vmw_private {
285 struct vmw_master *active_master; 288 struct vmw_master *active_master;
286 struct vmw_master fbdev_master; 289 struct vmw_master fbdev_master;
287 struct notifier_block pm_nb; 290 struct notifier_block pm_nb;
291 bool suspended;
292
293 struct mutex release_mutex;
294 uint32_t num_3d_resources;
288}; 295};
289 296
290static inline struct vmw_private *vmw_priv(struct drm_device *dev) 297static inline struct vmw_private *vmw_priv(struct drm_device *dev)
@@ -319,6 +326,9 @@ static inline uint32_t vmw_read(struct vmw_private *dev_priv,
319 return val; 326 return val;
320} 327}
321 328
329int vmw_3d_resource_inc(struct vmw_private *dev_priv);
330void vmw_3d_resource_dec(struct vmw_private *dev_priv);
331
322/** 332/**
323 * GMR utilities - vmwgfx_gmr.c 333 * GMR utilities - vmwgfx_gmr.c
324 */ 334 */
@@ -511,6 +521,11 @@ void vmw_kms_write_svga(struct vmw_private *vmw_priv,
511 unsigned bbp, unsigned depth); 521 unsigned bbp, unsigned depth);
512int vmw_kms_update_layout_ioctl(struct drm_device *dev, void *data, 522int vmw_kms_update_layout_ioctl(struct drm_device *dev, void *data,
513 struct drm_file *file_priv); 523 struct drm_file *file_priv);
524void vmw_kms_idle_workqueues(struct vmw_master *vmaster);
525bool vmw_kms_validate_mode_vram(struct vmw_private *dev_priv,
526 uint32_t pitch,
527 uint32_t height);
528u32 vmw_get_vblank_counter(struct drm_device *dev, int crtc);
514 529
515/** 530/**
516 * Overlay control - vmwgfx_overlay.c 531 * Overlay control - vmwgfx_overlay.c