Home
last modified time | relevance | path

Searched full:scanout (Results 1 – 25 of 145) sorted by relevance

123456

/openbmc/qemu/docs/interop/
H A Dvhost-user-gpu.rst20 work by setting a scanout/display configuration, before sending flush
65 | scanout-id | x | y |
68 :scanout-id: ``u32``, the scanout where the cursor is located
89 | scanout-id | w | h |
92 :scanout-id: ``u32``, the scanout configuration to set
94 :w/h: ``u32``, the scanout width/height size
100 | scanout-id | x | y | w | h | data |
103 :scanout-id: ``u32``, the scanout content to update
113 | scanout-id | x | y | w | h | fdw | fwh | stride | flags | fourcc |
116 :scanout-id: ``u32``, the scanout configuration to set
[all …]
/openbmc/qemu/hw/display/
H A Dvirtio-gpu.c87 s = &g->parent_obj.scanout[cursor->pos.scanout_id]; in update_cursor()
218 if (get_edid.scanout >= b->conf.max_outputs) { in virtio_gpu_get_edid()
223 trace_virtio_gpu_cmd_get_edid(get_edid.scanout); in virtio_gpu_get_edid()
226 virtio_gpu_base_generate_edid(VIRTIO_GPU_BASE(g), get_edid.scanout, &edid); in virtio_gpu_get_edid()
367 struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; in virtio_gpu_disable_scanout() local
370 if (scanout->resource_id == 0) { in virtio_gpu_disable_scanout()
374 res = virtio_gpu_find_resource(g, scanout->resource_id); in virtio_gpu_disable_scanout()
379 dpy_gfx_replace_surface(scanout->con, NULL); in virtio_gpu_disable_scanout()
380 scanout->resource_id = 0; in virtio_gpu_disable_scanout()
381 scanout->ds = NULL; in virtio_gpu_disable_scanout()
[all …]
H A Dvirtio-gpu-base.c31 g->scanout[i].resource_id = 0; in virtio_gpu_base_reset()
32 g->scanout[i].width = 0; in virtio_gpu_base_reset()
33 g->scanout[i].height = 0; in virtio_gpu_base_reset()
34 g->scanout[i].x = 0; in virtio_gpu_base_reset()
35 g->scanout[i].y = 0; in virtio_gpu_base_reset()
36 g->scanout[i].ds = NULL; in virtio_gpu_base_reset()
56 virtio_gpu_base_generate_edid(VirtIOGPUBase *g, int scanout, in virtio_gpu_base_generate_edid() argument
60 .width_mm = g->req_state[scanout].width_mm, in virtio_gpu_base_generate_edid()
61 .height_mm = g->req_state[scanout].height_mm, in virtio_gpu_base_generate_edid()
62 .prefx = g->req_state[scanout].width, in virtio_gpu_base_generate_edid()
[all …]
H A Dvirtio-gpu-udmabuf.c162 struct virtio_gpu_scanout *scanout; in virtio_gpu_free_dmabuf() local
164 scanout = &g->parent_obj.scanout[dmabuf->scanout_id]; in virtio_gpu_free_dmabuf()
165 dpy_gl_release_dmabuf(scanout->con, dmabuf->buf); in virtio_gpu_free_dmabuf()
201 struct virtio_gpu_scanout *scanout = &g->parent_obj.scanout[scanout_id]; in virtio_gpu_update_dmabuf() local
217 qemu_console_resize(scanout->con, width, height); in virtio_gpu_update_dmabuf()
218 dpy_gl_scanout_dmabuf(scanout->con, new_primary->buf); in virtio_gpu_update_dmabuf()
H A Dvhost-user-gpu.c99 VhostUserGpuScanout scanout; member
130 s = &g->parent_obj.scanout[pos->scanout_id]; in vhost_user_gpu_handle_cursor()
218 error_report("invalid scanout: %d", m->scanout_id); in vhost_user_gpu_handle_display()
229 VhostUserGpuScanout *m = &msg->payload.scanout; in vhost_user_gpu_handle_display()
236 s = &g->parent_obj.scanout[m->scanout_id]; in vhost_user_gpu_handle_display()
256 error_report("invalid scanout: %d", m->scanout_id); in vhost_user_gpu_handle_display()
264 con = g->parent_obj.scanout[m->scanout_id].con; in vhost_user_gpu_handle_display()
299 !g->parent_obj.scanout[m->scanout_id].con) { in vhost_user_gpu_handle_display()
300 error_report("invalid scanout update: %d", m->scanout_id); in vhost_user_gpu_handle_display()
305 con = g->parent_obj.scanout[m->scanout_id].con; in vhost_user_gpu_handle_display()
[all …]
H A Dvirtio-gpu-virgl.c374 if (!g->parent_obj.scanout[idx].con) { in virtio_gpu_rect_update()
378 dpy_gl_update(g->parent_obj.scanout[idx].con, x, y, width, height); in virtio_gpu_rect_update()
392 if (g->parent_obj.scanout[i].resource_id != rf.resource_id) { in virgl_cmd_resource_flush()
410 qemu_log_mask(LOG_GUEST_ERROR, "%s: illegal scanout id specified %d", in virgl_cmd_set_scanout()
438 qemu_console_resize(g->parent_obj.scanout[ss.scanout_id].con, in virgl_cmd_set_scanout()
442 g->parent_obj.scanout[ss.scanout_id].con, info.tex_id, in virgl_cmd_set_scanout()
449 g->parent_obj.scanout[ss.scanout_id].con, NULL); in virgl_cmd_set_scanout()
450 dpy_gl_scanout_disable(g->parent_obj.scanout[ss.scanout_id].con); in virgl_cmd_set_scanout()
452 g->parent_obj.scanout[ss.scanout_id].resource_id = ss.resource_id; in virgl_cmd_set_scanout()
816 qemu_log_mask(LOG_GUEST_ERROR, "%s: illegal scanout id specified %d", in virgl_cmd_set_scanout_blob()
[all …]
H A Dvirtio-gpu-rutabaga.c239 struct virtio_gpu_scanout *scanout = NULL; in rutabaga_cmd_resource_flush() local
260 scanout = &vb->scanout[i]; in rutabaga_cmd_resource_flush()
285 dpy_gfx_update_full(scanout->con); in rutabaga_cmd_resource_flush()
292 struct virtio_gpu_scanout *scanout = NULL; in rutabaga_cmd_set_scanout() local
306 scanout = &vb->scanout[ss.scanout_id]; in rutabaga_cmd_set_scanout()
309 dpy_gfx_replace_surface(scanout->con, NULL); in rutabaga_cmd_set_scanout()
310 dpy_gl_scanout_disable(scanout->con); in rutabaga_cmd_set_scanout()
333 scanout->ds = qemu_create_displaysurface_pixman(res->image); in rutabaga_cmd_set_scanout()
334 dpy_gfx_replace_surface(scanout->con, NULL); in rutabaga_cmd_set_scanout()
335 dpy_gfx_replace_surface(scanout->con, scanout->ds); in rutabaga_cmd_set_scanout()
/openbmc/qemu/contrib/vhost-user-gpu/
H A Dvhost-user-gpu.c341 .scanout_id = get_edid.scanout, in vg_get_edid()
412 struct virtio_gpu_scanout *scanout = &g->scanout[scanout_id]; in vg_disable_scanout() local
415 if (scanout->resource_id == 0) { in vg_disable_scanout()
419 res = virtio_gpu_find_resource(g, scanout->resource_id); in vg_disable_scanout()
424 scanout->width = 0; in vg_disable_scanout()
425 scanout->height = 0; in vg_disable_scanout()
431 .payload.scanout.scanout_id = scanout_id, in vg_disable_scanout()
657 struct virtio_gpu_scanout *scanout; in vg_set_scanout() local
665 g_critical("%s: illegal scanout id specified %d", in vg_set_scanout()
676 /* create a surface for this scanout */ in vg_set_scanout()
[all …]
H A Dvugpu.h104 VhostUserGpuScanout scanout; member
146 struct virtio_gpu_scanout scanout[VIRTIO_GPU_MAX_SCANOUTS]; member
/openbmc/linux/drivers/gpu/drm/i915/gem/
H A Di915_gem_object_types.h143 * should only ever use uncached for scanout surfaces, otherwise we end
157 * Not used for scanout surfaces.
163 * scanout objects, where the display engine is not coherent with the
179 * Not used for scanout surfaces.
188 * Write-through. Used for scanout surfaces.
421 * scanout surfaces. To handle this the kernel will always flush the
422 * surface out of the CPU caches when preparing it for scanout. Also
423 * note that since scanout surfaces are only ever read by the display
429 * to the display engine not being fully coherent. As a result scanout
432 * that this is likely a scanout surface, and will set @cache_coherent
[all …]
/openbmc/qemu/ui/
H A Dconsole.c282 con->scanout.kind == SCANOUT_SURFACE); in displaychangelistener_display_console()
284 if (con->scanout.kind == SCANOUT_DMABUF && in displaychangelistener_display_console()
286 dcl->ops->dpy_gl_scanout_dmabuf(dcl, con->scanout.dmabuf); in displaychangelistener_display_console()
287 } else if (con->scanout.kind == SCANOUT_TEXTURE && in displaychangelistener_display_console()
290 con->scanout.texture.backing_id, in displaychangelistener_display_console()
291 con->scanout.texture.backing_y_0_top, in displaychangelistener_display_console()
292 con->scanout.texture.backing_width, in displaychangelistener_display_console()
293 con->scanout.texture.backing_height, in displaychangelistener_display_console()
294 con->scanout.texture.x, in displaychangelistener_display_console()
295 con->scanout.texture.y, in displaychangelistener_display_console()
[all …]
H A Dsdl2-gl.c33 static void sdl2_set_scanout_mode(struct sdl2_console *scon, bool scanout) in sdl2_set_scanout_mode() argument
35 if (scon->scanout_mode == scanout) { in sdl2_set_scanout_mode()
39 scon->scanout_mode = scanout; in sdl2_set_scanout_mode()
H A Dgtk-gl-area.c21 static void gtk_gl_area_set_scanout_mode(VirtualConsole *vc, bool scanout) in gtk_gl_area_set_scanout_mode() argument
23 if (vc->gfx.scanout_mode == scanout) { in gtk_gl_area_set_scanout_mode()
27 vc->gfx.scanout_mode = scanout; in gtk_gl_area_set_scanout_mode()
/openbmc/linux/include/drm/
H A Ddrm_fb_helper.h41 * struct drm_fb_helper_surface_size - describes fbdev size and scanout surface size
44 * @surface_width: scanout buffer width
45 * @surface_height: scanout buffer height
46 * @surface_bpp: scanout buffer bpp
47 * @surface_depth: scanout buffer depth
49 * Note that the scanout surface width/height may be larger than the fbdev
50 * width/height. In case of multiple displays, the scanout surface is sized
52 * to scanout). But the fbdev width/height is sized to the minimum width/
106 * @fb: Scanout framebuffer object
/openbmc/linux/drivers/gpu/drm/msm/disp/mdp5/
H A Dmdp5_smp.h19 * a scanout buffer is a SMP client. Ie. scanout of 3 plane I420 on
22 * Based on the size of the attached scanout buffer, a certain # of
/openbmc/qemu/include/hw/virtio/
H A Dvirtio-gpu.h153 struct virtio_gpu_scanout scanout[VIRTIO_GPU_MAX_SCANOUTS]; member
302 void virtio_gpu_base_generate_edid(VirtIOGPUBase *g, int scanout,
337 * virtio_gpu_scanout_blob_to_fb() - fill out fb based on scanout data
339 * ss: the scanout blob data
340 * blob_size: size of scanout blob data
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_display.c566 * to avoid hang caused by placement of scanout BO in GTT on certain in amdgpu_display_supported_domains()
922 "Micro tile mode %llu not supported for scanout\n", in check_tiling_flags_gfx6()
1274 /* Handle is imported dma-buf, so cannot be migrated to VRAM for scanout */ in amdgpu_display_user_framebuffer_create()
1478 * Retrieve current video scanout position of crtc on a given gpu, and
1493 * \param *vpos Location where vertical scanout position should be stored.
1494 * \param *hpos Location where horizontal scanout position should go.
1496 * scanout position query. Can be NULL to skip timestamp.
1498 * scanout position query. Can be NULL to skip timestamp.
1500 * Returns vpos as a positive number while in active scanout area.
1503 * until start of active scanout / end of vblank."
[all …]
/openbmc/linux/drivers/gpu/drm/meson/
H A Dmeson_viu.c21 * VIU Handles the Pixel scanout and the basic Colorspace conversions
24 * - OSD1 RGB565/RGB888/xRGB8888 scanout
26 * - Progressive or Interlace buffer scanout
33 * - YUV4:2:2 Y0CbY1Cr scanout
36 * - Big endian scanout
37 * - X/Y reverse scanout
H A Dmeson_vpp.c18 * VPP Handles all the Post Processing after the Scanout from the VIU
24 * use it only for interlace scanout
/openbmc/linux/drivers/gpu/drm/radeon/
H A Dradeon_display.c344 * scanout position we know that the current frame is in radeon_crtc_handle_vblank()
1330 /* Handle is imported dma-buf, so cannot be migrated to VRAM for scanout */ in radeon_user_framebuffer_create()
1771 * Retrieve current video scanout position of crtc on a given gpu, and
1786 * \param *vpos Location where vertical scanout position should be stored.
1787 * \param *hpos Location where horizontal scanout position should go.
1789 * scanout position query. Can be NULL to skip timestamp.
1791 * scanout position query. Can be NULL to skip timestamp.
1793 * Returns vpos as a positive number while in active scanout area.
1796 * until start of active scanout / end of vblank."
1804 * unknown small number of scanlines wrt. real scanout position.
[all …]
/openbmc/linux/drivers/gpu/drm/
H A Ddrm_vblank.c46 * a new frame the scanout engine has "scanned out" the display image
400 * This is mostly useful for hardware that can obtain the scanout position, but
600 * @mode: display mode containing the scanout timings
605 * CRTC's true scanout timing, so they take things like panel scaling or
636 * Fields of interlaced scanout modes are only half a frame duration. in drm_calc_timestamping_constants()
670 * Callback function to retrieve the scanout position. See
674 * timings and current video scanout position of a CRTC.
679 * match the scanout position reported.
711 /* Scanout position query not supported? Should not happen. */ in drm_crtc_vblank_helper_get_vblank_timestamp_internal()
732 /* Get current scanout position with system timestamp. in drm_crtc_vblank_helper_get_vblank_timestamp_internal()
[all …]
/openbmc/linux/drivers/gpu/drm/virtio/
H A Dvirtgpu_vq.c742 uint32_t scanout = le32_to_cpu(cmd->scanout); in virtio_gpu_cmd_get_edid_cb() local
746 if (scanout >= vgdev->num_scanouts) in virtio_gpu_cmd_get_edid_cb()
748 output = vgdev->outputs + scanout; in virtio_gpu_cmd_get_edid_cb()
889 int scanout; in virtio_gpu_cmd_get_edids() local
894 for (scanout = 0; scanout < vgdev->num_scanouts; scanout++) { in virtio_gpu_cmd_get_edids()
905 cmd_p->scanout = cpu_to_le32(scanout); in virtio_gpu_cmd_get_edids()
/openbmc/linux/drivers/gpu/drm/i915/display/
H A Dintel_fb_pin.c134 * we should always have valid PTE following the scanout preventing in intel_pin_and_fence_fb_obj()
157 * happy to scanout from anywhere within its global aperture. in intel_pin_and_fence_fb_obj()
189 * If we fail to fence the tiled scanout, then either the in intel_pin_and_fence_fb_obj()
/openbmc/linux/drivers/gpu/drm/tiny/
H A DKconfig64 by the Open Firmware before the kernel boots. Scanout buffer, size,
92 by the firmware or bootloader before the kernel boots. Scanout
/openbmc/linux/Documentation/devicetree/bindings/display/
H A Damlogic,meson-vpu.yaml32 The Video Input Unit is in charge of the pixel scanout from the DDR memory.
54 tree and provides the scanout clock to the VPP and VIU.

123456