Lines Matching refs:fb
40 static int virtio_gpu_dirty_update(struct virtio_gpu_framebuffer *fb, in virtio_gpu_dirty_update() argument
44 struct drm_device *dev = fb->base.dev; in virtio_gpu_dirty_update()
47 int bpp = fb->base.bits_per_pixel / 8; in virtio_gpu_dirty_update()
50 struct virtio_gpu_object *obj = gem_to_virtio_gpu_obj(fb->obj); in virtio_gpu_dirty_update()
53 (x + width > fb->base.width) || in virtio_gpu_dirty_update()
54 (y + height > fb->base.height)) { in virtio_gpu_dirty_update()
57 fb->base.width, fb->base.height); in virtio_gpu_dirty_update()
74 spin_lock_irqsave(&fb->dirty_lock, flags); in virtio_gpu_dirty_update()
76 if (fb->y1 < y) in virtio_gpu_dirty_update()
77 y = fb->y1; in virtio_gpu_dirty_update()
78 if (fb->y2 > y2) in virtio_gpu_dirty_update()
79 y2 = fb->y2; in virtio_gpu_dirty_update()
80 if (fb->x1 < x) in virtio_gpu_dirty_update()
81 x = fb->x1; in virtio_gpu_dirty_update()
82 if (fb->x2 > x2) in virtio_gpu_dirty_update()
83 x2 = fb->x2; in virtio_gpu_dirty_update()
86 fb->x1 = x; in virtio_gpu_dirty_update()
87 fb->x2 = x2; in virtio_gpu_dirty_update()
88 fb->y1 = y; in virtio_gpu_dirty_update()
89 fb->y2 = y2; in virtio_gpu_dirty_update()
90 spin_unlock_irqrestore(&fb->dirty_lock, flags); in virtio_gpu_dirty_update()
94 fb->x1 = fb->y1 = INT_MAX; in virtio_gpu_dirty_update()
95 fb->x2 = fb->y2 = 0; in virtio_gpu_dirty_update()
97 spin_unlock_irqrestore(&fb->dirty_lock, flags); in virtio_gpu_dirty_update()
104 offset = (y * fb->base.pitches[0]) + x * bpp; in virtio_gpu_dirty_update()
230 struct drm_framebuffer *fb; in virtio_gpufb_create() local
332 fb = &vfbdev->vgfb.base; in virtio_gpufb_create()
334 vfbdev->helper.fb = fb; in virtio_gpufb_create()
343 drm_fb_helper_fill_fix(info, fb->pitches[0], fb->depth); in virtio_gpufb_create()