console: rename dpy_gl_scanout to dpy_gl_scanout_texture
We'll add a variant which accepts dmabufs soon. Change the name so we can easily disturgish the two variants. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-id: 1487669841-13668-2-git-send-email-kraxel@redhat.com
This commit is contained in:
		
							parent
							
								
									3b1d816984
								
							
						
					
					
						commit
						f4c36bdab6
					
				| 
						 | 
				
			
			@ -177,16 +177,16 @@ static void virgl_cmd_set_scanout(VirtIOGPU *g,
 | 
			
		|||
        qemu_console_resize(g->scanout[ss.scanout_id].con,
 | 
			
		||||
                            ss.r.width, ss.r.height);
 | 
			
		||||
        virgl_renderer_force_ctx_0();
 | 
			
		||||
        dpy_gl_scanout(g->scanout[ss.scanout_id].con, info.tex_id,
 | 
			
		||||
                       info.flags & 1 /* FIXME: Y_0_TOP */,
 | 
			
		||||
                       info.width, info.height,
 | 
			
		||||
                       ss.r.x, ss.r.y, ss.r.width, ss.r.height);
 | 
			
		||||
        dpy_gl_scanout_texture(g->scanout[ss.scanout_id].con, info.tex_id,
 | 
			
		||||
                               info.flags & 1 /* FIXME: Y_0_TOP */,
 | 
			
		||||
                               info.width, info.height,
 | 
			
		||||
                               ss.r.x, ss.r.y, ss.r.width, ss.r.height);
 | 
			
		||||
    } else {
 | 
			
		||||
        if (ss.scanout_id != 0) {
 | 
			
		||||
            dpy_gfx_replace_surface(g->scanout[ss.scanout_id].con, NULL);
 | 
			
		||||
        }
 | 
			
		||||
        dpy_gl_scanout(g->scanout[ss.scanout_id].con, 0, false,
 | 
			
		||||
                       0, 0, 0, 0, 0, 0);
 | 
			
		||||
        dpy_gl_scanout_texture(g->scanout[ss.scanout_id].con, 0, false,
 | 
			
		||||
                               0, 0, 0, 0, 0, 0);
 | 
			
		||||
    }
 | 
			
		||||
    g->scanout[ss.scanout_id].resource_id = ss.resource_id;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -597,7 +597,7 @@ void virtio_gpu_virgl_reset(VirtIOGPU *g)
 | 
			
		|||
        if (i != 0) {
 | 
			
		||||
            dpy_gfx_replace_surface(g->scanout[i].con, NULL);
 | 
			
		||||
        }
 | 
			
		||||
        dpy_gl_scanout(g->scanout[i].con, 0, false, 0, 0, 0, 0, 0, 0);
 | 
			
		||||
        dpy_gl_scanout_texture(g->scanout[i].con, 0, false, 0, 0, 0, 0, 0, 0);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -215,10 +215,13 @@ typedef struct DisplayChangeListenerOps {
 | 
			
		|||
                                   QEMUGLContext ctx);
 | 
			
		||||
    QEMUGLContext (*dpy_gl_ctx_get_current)(DisplayChangeListener *dcl);
 | 
			
		||||
 | 
			
		||||
    void (*dpy_gl_scanout)(DisplayChangeListener *dcl,
 | 
			
		||||
                           uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                           uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                           uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
    void (*dpy_gl_scanout_texture)(DisplayChangeListener *dcl,
 | 
			
		||||
                                   uint32_t backing_id,
 | 
			
		||||
                                   bool backing_y_0_top,
 | 
			
		||||
                                   uint32_t backing_width,
 | 
			
		||||
                                   uint32_t backing_height,
 | 
			
		||||
                                   uint32_t x, uint32_t y,
 | 
			
		||||
                                   uint32_t w, uint32_t h);
 | 
			
		||||
    void (*dpy_gl_update)(DisplayChangeListener *dcl,
 | 
			
		||||
                          uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -284,10 +287,10 @@ bool dpy_cursor_define_supported(QemuConsole *con);
 | 
			
		|||
bool dpy_gfx_check_format(QemuConsole *con,
 | 
			
		||||
                          pixman_format_code_t format);
 | 
			
		||||
 | 
			
		||||
void dpy_gl_scanout(QemuConsole *con,
 | 
			
		||||
                    uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                    uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                    uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
void dpy_gl_scanout_texture(QemuConsole *con,
 | 
			
		||||
                            uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                            uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                            uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
void dpy_gl_update(QemuConsole *con,
 | 
			
		||||
                   uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -103,11 +103,13 @@ void gd_egl_switch(DisplayChangeListener *dcl,
 | 
			
		|||
                   DisplaySurface *surface);
 | 
			
		||||
QEMUGLContext gd_egl_create_context(DisplayChangeListener *dcl,
 | 
			
		||||
                                    QEMUGLParams *params);
 | 
			
		||||
void gd_egl_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                    uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                    uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                    uint32_t x, uint32_t y,
 | 
			
		||||
                    uint32_t w, uint32_t h);
 | 
			
		||||
void gd_egl_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                            uint32_t backing_id,
 | 
			
		||||
                            bool backing_y_0_top,
 | 
			
		||||
                            uint32_t backing_width,
 | 
			
		||||
                            uint32_t backing_height,
 | 
			
		||||
                            uint32_t x, uint32_t y,
 | 
			
		||||
                            uint32_t w, uint32_t h);
 | 
			
		||||
void gd_egl_scanout_flush(DisplayChangeListener *dcl,
 | 
			
		||||
                          uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
void gtk_egl_init(void);
 | 
			
		||||
| 
						 | 
				
			
			@ -126,11 +128,13 @@ QEMUGLContext gd_gl_area_create_context(DisplayChangeListener *dcl,
 | 
			
		|||
                                        QEMUGLParams *params);
 | 
			
		||||
void gd_gl_area_destroy_context(DisplayChangeListener *dcl,
 | 
			
		||||
                                QEMUGLContext ctx);
 | 
			
		||||
void gd_gl_area_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                        uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                        uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                        uint32_t x, uint32_t y,
 | 
			
		||||
                        uint32_t w, uint32_t h);
 | 
			
		||||
void gd_gl_area_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                                uint32_t backing_id,
 | 
			
		||||
                                bool backing_y_0_top,
 | 
			
		||||
                                uint32_t backing_width,
 | 
			
		||||
                                uint32_t backing_height,
 | 
			
		||||
                                uint32_t x, uint32_t y,
 | 
			
		||||
                                uint32_t w, uint32_t h);
 | 
			
		||||
void gd_gl_area_scanout_flush(DisplayChangeListener *dcl,
 | 
			
		||||
                              uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
void gtk_gl_area_init(void);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -62,11 +62,13 @@ int sdl2_gl_make_context_current(DisplayChangeListener *dcl,
 | 
			
		|||
                                 QEMUGLContext ctx);
 | 
			
		||||
QEMUGLContext sdl2_gl_get_current_context(DisplayChangeListener *dcl);
 | 
			
		||||
 | 
			
		||||
void sdl2_gl_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                     uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                     uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                     uint32_t x, uint32_t y,
 | 
			
		||||
                     uint32_t w, uint32_t h);
 | 
			
		||||
void sdl2_gl_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                             uint32_t backing_id,
 | 
			
		||||
                             bool backing_y_0_top,
 | 
			
		||||
                             uint32_t backing_width,
 | 
			
		||||
                             uint32_t backing_height,
 | 
			
		||||
                             uint32_t x, uint32_t y,
 | 
			
		||||
                             uint32_t w, uint32_t h);
 | 
			
		||||
void sdl2_gl_scanout_flush(DisplayChangeListener *dcl,
 | 
			
		||||
                           uint32_t x, uint32_t y, uint32_t w, uint32_t h);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										19
									
								
								ui/console.c
								
								
								
								
							
							
						
						
									
										19
									
								
								ui/console.c
								
								
								
								
							| 
						 | 
				
			
			@ -1735,16 +1735,19 @@ QEMUGLContext dpy_gl_ctx_get_current(QemuConsole *con)
 | 
			
		|||
    return con->gl->ops->dpy_gl_ctx_get_current(con->gl);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void dpy_gl_scanout(QemuConsole *con,
 | 
			
		||||
                    uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                    uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                    uint32_t x, uint32_t y, uint32_t width, uint32_t height)
 | 
			
		||||
void dpy_gl_scanout_texture(QemuConsole *con,
 | 
			
		||||
                            uint32_t backing_id,
 | 
			
		||||
                            bool backing_y_0_top,
 | 
			
		||||
                            uint32_t backing_width,
 | 
			
		||||
                            uint32_t backing_height,
 | 
			
		||||
                            uint32_t x, uint32_t y,
 | 
			
		||||
                            uint32_t width, uint32_t height)
 | 
			
		||||
{
 | 
			
		||||
    assert(con->gl);
 | 
			
		||||
    con->gl->ops->dpy_gl_scanout(con->gl, backing_id,
 | 
			
		||||
                                 backing_y_0_top,
 | 
			
		||||
                                 backing_width, backing_height,
 | 
			
		||||
                                 x, y, width, height);
 | 
			
		||||
    con->gl->ops->dpy_gl_scanout_texture(con->gl, backing_id,
 | 
			
		||||
                                         backing_y_0_top,
 | 
			
		||||
                                         backing_width, backing_height,
 | 
			
		||||
                                         x, y, width, height);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void dpy_gl_update(QemuConsole *con,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										10
									
								
								ui/gtk-egl.c
								
								
								
								
							
							
						
						
									
										10
									
								
								ui/gtk-egl.c
								
								
								
								
							| 
						 | 
				
			
			@ -170,11 +170,11 @@ QEMUGLContext gd_egl_create_context(DisplayChangeListener *dcl,
 | 
			
		|||
    return qemu_egl_create_context(dcl, params);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void gd_egl_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                    uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                    uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                    uint32_t x, uint32_t y,
 | 
			
		||||
                    uint32_t w, uint32_t h)
 | 
			
		||||
void gd_egl_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                            uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                            uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                            uint32_t x, uint32_t y,
 | 
			
		||||
                            uint32_t w, uint32_t h)
 | 
			
		||||
{
 | 
			
		||||
    VirtualConsole *vc = container_of(dcl, VirtualConsole, gfx.dcl);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -167,11 +167,13 @@ void gd_gl_area_destroy_context(DisplayChangeListener *dcl, QEMUGLContext ctx)
 | 
			
		|||
    /* FIXME */
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void gd_gl_area_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                        uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                        uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                        uint32_t x, uint32_t y,
 | 
			
		||||
                        uint32_t w, uint32_t h)
 | 
			
		||||
void gd_gl_area_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                                uint32_t backing_id,
 | 
			
		||||
                                bool backing_y_0_top,
 | 
			
		||||
                                uint32_t backing_width,
 | 
			
		||||
                                uint32_t backing_height,
 | 
			
		||||
                                uint32_t x, uint32_t y,
 | 
			
		||||
                                uint32_t w, uint32_t h)
 | 
			
		||||
{
 | 
			
		||||
    VirtualConsole *vc = container_of(dcl, VirtualConsole, gfx.dcl);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										4
									
								
								ui/gtk.c
								
								
								
								
							
							
						
						
									
										4
									
								
								ui/gtk.c
								
								
								
								
							| 
						 | 
				
			
			@ -669,7 +669,7 @@ static const DisplayChangeListenerOps dcl_gl_area_ops = {
 | 
			
		|||
    .dpy_gl_ctx_destroy      = gd_gl_area_destroy_context,
 | 
			
		||||
    .dpy_gl_ctx_make_current = gd_gl_area_make_current,
 | 
			
		||||
    .dpy_gl_ctx_get_current  = gd_gl_area_get_current_context,
 | 
			
		||||
    .dpy_gl_scanout          = gd_gl_area_scanout,
 | 
			
		||||
    .dpy_gl_scanout_texture  = gd_gl_area_scanout_texture,
 | 
			
		||||
    .dpy_gl_update           = gd_gl_area_scanout_flush,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -688,7 +688,7 @@ static const DisplayChangeListenerOps dcl_egl_ops = {
 | 
			
		|||
    .dpy_gl_ctx_destroy      = qemu_egl_destroy_context,
 | 
			
		||||
    .dpy_gl_ctx_make_current = gd_egl_make_current,
 | 
			
		||||
    .dpy_gl_ctx_get_current  = qemu_egl_get_current_context,
 | 
			
		||||
    .dpy_gl_scanout          = gd_egl_scanout,
 | 
			
		||||
    .dpy_gl_scanout_texture  = gd_egl_scanout_texture,
 | 
			
		||||
    .dpy_gl_update           = gd_egl_scanout_flush,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										12
									
								
								ui/sdl2-gl.c
								
								
								
								
							
							
						
						
									
										12
									
								
								ui/sdl2-gl.c
								
								
								
								
							| 
						 | 
				
			
			@ -184,11 +184,13 @@ QEMUGLContext sdl2_gl_get_current_context(DisplayChangeListener *dcl)
 | 
			
		|||
    return (QEMUGLContext)sdlctx;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void sdl2_gl_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                     uint32_t backing_id, bool backing_y_0_top,
 | 
			
		||||
                     uint32_t backing_width, uint32_t backing_height,
 | 
			
		||||
                     uint32_t x, uint32_t y,
 | 
			
		||||
                     uint32_t w, uint32_t h)
 | 
			
		||||
void sdl2_gl_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                             uint32_t backing_id,
 | 
			
		||||
                             bool backing_y_0_top,
 | 
			
		||||
                             uint32_t backing_width,
 | 
			
		||||
                             uint32_t backing_height,
 | 
			
		||||
                             uint32_t x, uint32_t y,
 | 
			
		||||
                             uint32_t w, uint32_t h)
 | 
			
		||||
{
 | 
			
		||||
    struct sdl2_console *scon = container_of(dcl, struct sdl2_console, dcl);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -733,7 +733,7 @@ static const DisplayChangeListenerOps dcl_gl_ops = {
 | 
			
		|||
    .dpy_gl_ctx_destroy      = sdl2_gl_destroy_context,
 | 
			
		||||
    .dpy_gl_ctx_make_current = sdl2_gl_make_context_current,
 | 
			
		||||
    .dpy_gl_ctx_get_current  = sdl2_gl_get_current_context,
 | 
			
		||||
    .dpy_gl_scanout          = sdl2_gl_scanout,
 | 
			
		||||
    .dpy_gl_scanout_texture  = sdl2_gl_scanout_texture,
 | 
			
		||||
    .dpy_gl_update           = sdl2_gl_scanout_flush,
 | 
			
		||||
};
 | 
			
		||||
#endif
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -928,13 +928,13 @@ static QEMUGLContext qemu_spice_gl_create_context(DisplayChangeListener *dcl,
 | 
			
		|||
    return qemu_egl_create_context(dcl, params);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void qemu_spice_gl_scanout(DisplayChangeListener *dcl,
 | 
			
		||||
                                  uint32_t tex_id,
 | 
			
		||||
                                  bool y_0_top,
 | 
			
		||||
                                  uint32_t backing_width,
 | 
			
		||||
                                  uint32_t backing_height,
 | 
			
		||||
                                  uint32_t x, uint32_t y,
 | 
			
		||||
                                  uint32_t w, uint32_t h)
 | 
			
		||||
static void qemu_spice_gl_scanout_texture(DisplayChangeListener *dcl,
 | 
			
		||||
                                          uint32_t tex_id,
 | 
			
		||||
                                          bool y_0_top,
 | 
			
		||||
                                          uint32_t backing_width,
 | 
			
		||||
                                          uint32_t backing_height,
 | 
			
		||||
                                          uint32_t x, uint32_t y,
 | 
			
		||||
                                          uint32_t w, uint32_t h)
 | 
			
		||||
{
 | 
			
		||||
    SimpleSpiceDisplay *ssd = container_of(dcl, SimpleSpiceDisplay, dcl);
 | 
			
		||||
    EGLint stride = 0, fourcc = 0;
 | 
			
		||||
| 
						 | 
				
			
			@ -993,7 +993,7 @@ static const DisplayChangeListenerOps display_listener_gl_ops = {
 | 
			
		|||
    .dpy_gl_ctx_make_current = qemu_egl_make_context_current,
 | 
			
		||||
    .dpy_gl_ctx_get_current  = qemu_egl_get_current_context,
 | 
			
		||||
 | 
			
		||||
    .dpy_gl_scanout          = qemu_spice_gl_scanout,
 | 
			
		||||
    .dpy_gl_scanout_texture  = qemu_spice_gl_scanout_texture,
 | 
			
		||||
    .dpy_gl_update           = qemu_spice_gl_update,
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue