search for: num_clips

Displaying 20 results from an estimated 46 matches for "num_clips".

2019 Jun 11
1
[PATCH] drm/virtio: drop framebuffer dirty tracking code
...4,10 +251,6 @@ int virtio_gpu_mode_dumb_mmap(struct drm_file *file_priv, struct drm_device *dev, uint32_t handle, uint64_t *offset_p); -/* virtio_fb */ -int virtio_gpu_surface_dirty(struct virtio_gpu_framebuffer *qfb, - struct drm_clip_rect *clips, - unsigned int num_clips); /* virtio vg */ int virtio_gpu_alloc_vbufs(struct virtio_gpu_device *vgdev); void virtio_gpu_free_vbufs(struct virtio_gpu_device *vgdev); diff --git a/drivers/gpu/drm/virtio/virtgpu_display.c b/drivers/gpu/drm/virtio/virtgpu_display.c index 86843a4d6102..ba16e8cb7124 100644 --- a/drivers/gpu/d...
2019 Apr 03
2
[PATCH] drm/cirrus: rewrite and modernize driver.
...rrus_fb_dirty(struct drm_framebuffer *fb, > > + struct drm_file *file_priv, > > + unsigned int flags, unsigned int color, > > + struct drm_clip_rect *clips, > > + unsigned int num_clips) > > +{ > > + struct cirrus_device *cirrus = fb->dev->dev_private; > > + > > + if (cirrus->pipe.plane.state->fb != fb) > > + return 0; > > + > > + if (num_clips) > > + cirrus_fb_blit_clips(fb,...
2019 Apr 03
2
[PATCH] drm/cirrus: rewrite and modernize driver.
...rrus_fb_dirty(struct drm_framebuffer *fb, > > + struct drm_file *file_priv, > > + unsigned int flags, unsigned int color, > > + struct drm_clip_rect *clips, > > + unsigned int num_clips) > > +{ > > + struct cirrus_device *cirrus = fb->dev->dev_private; > > + > > + if (cirrus->pipe.plane.state->fb != fb) > > + return 0; > > + > > + if (num_clips) > > + cirrus_fb_blit_clips(fb,...
2018 Nov 28
0
[PATCH 5/6] drm/qxl: cover all crtcs in shadow bo.
...+ struct qxl_head *dumb_heads; struct qxl_memslot *mem_slots; uint8_t n_mem_slots; @@ -447,7 +449,8 @@ void qxl_draw_dirty_fb(struct qxl_device *qdev, struct qxl_bo *bo, unsigned int flags, unsigned int color, struct drm_clip_rect *clips, - unsigned int num_clips, int inc); + unsigned int num_clips, int inc, + uint32_t dumb_shadow_offset); void qxl_draw_fill(struct qxl_draw_fill *qxl_draw_fill_rec); diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c index 472df00c02..a6110ec5ba 100644 --- a/drivers/gpu/dr...
2018 Dec 12
0
[PATCH v2 14/18] drm/qxl: cover all crtcs in shadow bo.
...xl_head *dumb_heads; struct qxl_memslot main_slot; struct qxl_memslot surfaces_slot; @@ -437,7 +439,8 @@ void qxl_draw_dirty_fb(struct qxl_device *qdev, struct qxl_bo *bo, unsigned int flags, unsigned int color, struct drm_clip_rect *clips, - unsigned int num_clips, int inc); + unsigned int num_clips, int inc, + uint32_t dumb_shadow_offset); void qxl_draw_fill(struct qxl_draw_fill *qxl_draw_fill_rec); diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c index 204ae46c62..fc88826b69 100644 --- a/drivers/gpu/dr...
2019 Apr 03
0
[PATCH] drm/cirrus: rewrite and modernize driver.
...y(struct drm_framebuffer *fb, >>> + struct drm_file *file_priv, >>> + unsigned int flags, unsigned int color, >>> + struct drm_clip_rect *clips, >>> + unsigned int num_clips) >>> +{ >>> + struct cirrus_device *cirrus = fb->dev->dev_private; >>> + >>> + if (cirrus->pipe.plane.state->fb != fb) >>> + return 0; >>> + >>> + if (num_clips) >>> + c...
2017 Nov 08
2
[PATCH] drm/virtio: add create_handle support.
.../virtio/virtgpu_display.c index b6d52055a11f..274b4206ca96 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -71,7 +71,19 @@ virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); } +static int +virtio_gpu_framebuffer_create_handle(struct drm_framebuffer *fb, + struct drm_file *file_priv, + unsigned int *handle) +{ + struct virtio_gpu_framebuffer *virtio_gpu_fb = + to_virtio_gpu_framebuffer(fb); + + return drm_gem_handle_create(file_priv, virtio_gpu_fb-...
2017 Nov 08
2
[PATCH] drm/virtio: add create_handle support.
.../virtio/virtgpu_display.c index b6d52055a11f..274b4206ca96 100644 --- a/drivers/gpu/drm/virtio/virtgpu_display.c +++ b/drivers/gpu/drm/virtio/virtgpu_display.c @@ -71,7 +71,19 @@ virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); } +static int +virtio_gpu_framebuffer_create_handle(struct drm_framebuffer *fb, + struct drm_file *file_priv, + unsigned int *handle) +{ + struct virtio_gpu_framebuffer *virtio_gpu_fb = + to_virtio_gpu_framebuffer(fb); + + return drm_gem_handle_create(file_priv, virtio_gpu_fb-...
2018 Mar 22
1
[PATCH 00/23] drm: Eliminate plane->fb/crtc usage for atomic drivers
On Thu, Mar 22, 2018 at 05:51:35PM +0100, Noralf Tr?nnes wrote: > tinydrm is also using plane->fb: > > $ grep -r "plane\.fb" drivers/gpu/drm/tinydrm/ > drivers/gpu/drm/tinydrm/repaper.c:????? if (tdev->pipe.plane.fb != fb) > drivers/gpu/drm/tinydrm/mipi-dbi.c:???? if (tdev->pipe.plane.fb != fb) > drivers/gpu/drm/tinydrm/mipi-dbi.c:???? struct drm_framebuffer
2020 Aug 17
0
[PATCH] drm/qxl: Fix build errors
...SET_LOCK_ALL_END(dev, ctx, ret); > if (!drm_helper_hpd_irq_event(dev)) { > /* notify that the monitor configuration changed, to > adjust at the arbitrary resolution */ > @@ -431,7 +432,7 @@ static int qxl_framebuffer_surface_dirty(struct drm_framebuffer *fb, > clips, num_clips, inc, 0); > > out_lock_end: > - DRM_MODESET_LOCK_ALL_END(ctx, ret); > + DRM_MODESET_LOCK_ALL_END(fb->dev, ctx, ret); > > return 0; > } > -- > Sean Paul, Software Engineer, Google / Chromium OS > > _______________________________________________ > dri...
2017 Nov 13
0
[PATCH] drm/virtio: add create_handle support.
...index b6d52055a11f..274b4206ca96 100644 > --- a/drivers/gpu/drm/virtio/virtgpu_display.c > +++ b/drivers/gpu/drm/virtio/virtgpu_display.c > @@ -71,7 +71,19 @@ virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, > return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); > } > > +static int > +virtio_gpu_framebuffer_create_handle(struct drm_framebuffer *fb, > + struct drm_file *file_priv, > + unsigned int *handle) > +{ > + struct virtio_gpu_framebuffer *virtio_gpu...
2018 Sep 11
0
[PATCH] qxl: refactor to use drm_fb_helper_fbdev_setup
...d not be necessary to have a special dirty() callback for fbdev. 134 */ 135 static int qxlfb_framebuffer_dirty(struct drm_framebuffer *fb, 136 struct drm_file *file_priv, 137 unsigned flags, unsigned color, 138 struct drm_clip_rect *clips, 139 unsigned num_clips) 140 { 141 struct qxl_device *qdev = fb->dev->dev_private; 142 struct fb_info *info = qdev->fb_helper.fbdev; 143 struct qxl_fb_image qxl_fb_image; 144 struct fb_image *image = &qxl_fb_image.fb_image; 145 146 /* TODO: hard coding 32 bpp */ 147 int stride =...
2019 Apr 03
5
[PATCH] drm/cirrus: rewrite and modernize driver.
...; + + WREG_HDR(hdr); + /* cirrus_crtc_do_set_base(crtc, old_fb, x, y, 0); */ + + /* Unblank (needed on S3 resume, vgabios doesn't do it then) */ + outb(0x20, 0x3c0); + return 0; +} + +static int cirrus_fb_blit_clips(struct drm_framebuffer *fb, + struct drm_clip_rect *clips, + unsigned int num_clips) +{ + struct cirrus_device *cirrus = fb->dev->dev_private; + unsigned i, y, xoff, xlen, src, dst; + void *vmap; + + vmap = drm_gem_shmem_vmap(fb->obj[0]); + if (!vmap) + return -ENOMEM; + + for (i = 0; i < num_clips; i++) { + xoff = clips[i].x1 * cirrus->bpp / 8; + xlen = (clips[i...
2019 Apr 03
5
[PATCH] drm/cirrus: rewrite and modernize driver.
...; + + WREG_HDR(hdr); + /* cirrus_crtc_do_set_base(crtc, old_fb, x, y, 0); */ + + /* Unblank (needed on S3 resume, vgabios doesn't do it then) */ + outb(0x20, 0x3c0); + return 0; +} + +static int cirrus_fb_blit_clips(struct drm_framebuffer *fb, + struct drm_clip_rect *clips, + unsigned int num_clips) +{ + struct cirrus_device *cirrus = fb->dev->dev_private; + unsigned i, y, xoff, xlen, src, dst; + void *vmap; + + vmap = drm_gem_shmem_vmap(fb->obj[0]); + if (!vmap) + return -ENOMEM; + + for (i = 0; i < num_clips; i++) { + xoff = clips[i].x1 * cirrus->bpp / 8; + xlen = (clips[i...
2018 Dec 12
0
[PATCH v2 18/18] drm/qxl: remove dead qxl fbdev emulation code
..._opaque_fb(const struct qxl_fb_image *qxl_fb_image, - int stride /* filled in if 0 */); - void qxl_draw_dirty_fb(struct qxl_device *qdev, struct drm_framebuffer *fb, struct qxl_bo *bo, @@ -443,13 +432,6 @@ void qxl_draw_dirty_fb(struct qxl_device *qdev, unsigned int num_clips, int inc, uint32_t dumb_shadow_offset); -void qxl_draw_fill(struct qxl_draw_fill *qxl_draw_fill_rec); - -void qxl_draw_copyarea(struct qxl_device *qdev, - u32 width, u32 height, - u32 sx, u32 sy, - u32 dx, u32 dy); - void qxl_release_free(struct qxl_device *qdev...
2015 Mar 24
10
[PATCH] Add virtio gpu driver.
...virtio_gpu_fb->obj); + drm_framebuffer_cleanup(fb); + kfree(virtio_gpu_fb); +} + +static int +virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, + struct drm_file *file_priv, + unsigned flags, unsigned color, + struct drm_clip_rect *clips, + unsigned num_clips) +{ + struct virtio_gpu_framebuffer *virtio_gpu_fb + = to_virtio_gpu_framebuffer(fb); + + return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); +} + +static const struct drm_framebuffer_funcs virtio_gpu_fb_funcs = { + .destroy = virtio_gpu_user_framebuffer_destroy, + .dirty = virtio_gp...
2015 Mar 24
10
[PATCH] Add virtio gpu driver.
...virtio_gpu_fb->obj); + drm_framebuffer_cleanup(fb); + kfree(virtio_gpu_fb); +} + +static int +virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, + struct drm_file *file_priv, + unsigned flags, unsigned color, + struct drm_clip_rect *clips, + unsigned num_clips) +{ + struct virtio_gpu_framebuffer *virtio_gpu_fb + = to_virtio_gpu_framebuffer(fb); + + return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); +} + +static const struct drm_framebuffer_funcs virtio_gpu_fb_funcs = { + .destroy = virtio_gpu_user_framebuffer_destroy, + .dirty = virtio_gp...
2015 Mar 24
0
[PATCH] Add virtio gpu driver.
...anup(fb); > + kfree(virtio_gpu_fb); > +} > + > +static int > +virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, > + struct drm_file *file_priv, > + unsigned flags, unsigned color, > + struct drm_clip_rect *clips, > + unsigned num_clips) > +{ > + struct virtio_gpu_framebuffer *virtio_gpu_fb > + = to_virtio_gpu_framebuffer(fb); > + > + return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); > +} > + > +static const struct drm_framebuffer_funcs virtio_gpu_fb_funcs = { > + .destroy = virtio_gpu_u...
2015 Mar 24
0
[PATCH] Add virtio gpu driver.
...anup(fb); > + kfree(virtio_gpu_fb); > +} > + > +static int > +virtio_gpu_framebuffer_surface_dirty(struct drm_framebuffer *fb, > + struct drm_file *file_priv, > + unsigned flags, unsigned color, > + struct drm_clip_rect *clips, > + unsigned num_clips) > +{ > + struct virtio_gpu_framebuffer *virtio_gpu_fb > + = to_virtio_gpu_framebuffer(fb); > + > + return virtio_gpu_surface_dirty(virtio_gpu_fb, clips, num_clips); > +} > + > +static const struct drm_framebuffer_funcs virtio_gpu_fb_funcs = { > + .destroy = virtio_gpu_u...
2019 Apr 03
0
[PATCH] drm/cirrus: rewrite and modernize driver.
...n S3 resume, vgabios doesn't do it then) */ > + outb(0x20, 0x3c0); > + return 0; > +} > + > +static int cirrus_fb_blit_clips(struct drm_framebuffer *fb, > + struct drm_clip_rect *clips, > + unsigned int num_clips) > +{ > + struct cirrus_device *cirrus = fb->dev->dev_private; > + unsigned i, y, xoff, xlen, src, dst; > + void *vmap; > + > + vmap = drm_gem_shmem_vmap(fb->obj[0]); > + if (!vmap) > + return -ENOMEM; > + > +...