Commits on Source (8)
-
Olivier Fourdan authored
Separate the callbacks for the default's feedback from the one for regular windows. This is preparation work to recreate the window buffer of feedback updates, no functional change. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
The helper function xwl_feedback_is_modifier_supported() walks all the formats of a feeedback tranche and checks for format/modifier support availability. Add scanout support to that so that a caller can easily restrict the tranches to those which support scanout. This is preparation work for the implicit scanout support, no functional change. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
With implicit modifiers, DRM_FORMAT_MOD_INVALID is an allowed modifier, to indicate that the server can support the format. When looking for a scanout capable tranche with implicit modifiers, we ought to check for the availability of a tranche with an invalid modifier for the given format. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
With linux dmabuf v4 support, for direct scanout support, we need more context that just what CreatePixmap() provides, as we need the actual drawable to invoke xwl_glamor_get_drawable_modifiers(). Add a specific hook in Xwayland's glamor implementation that we can use for that purpose. This is preparation work for the direct scanout fixes. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
Add the implementation for create_pixmap_for_window() in the GBM glamor backend. To do so, we just rename the existing xwl_glamor_gbm_create_pixmap() as internal and add an optional drawable parameter, so that it can be used either from the regular CreatePixmap code path, or from the new direct Xwayland glamor's hook. v2: Fallback to xwl_glamor_get_modifiers() if xwl_glamor_get_drawable_modifiers() returned 0 modifiers. (Michel) Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
Before linux_dmabuf v4 support was added, the BO were created using gbm_bo_create_with_modifiers() which incidentally creates scanout capable buffers. We now need to replicate that explicitly when using the fallback path, with buffers window, otherwise direct scanout will not be possible in that case. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Closes: xorg/xserver#1535 Suggested-by:
Michel Dänzer <mdaenzer@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
When creating the window buffer's backing pixmap, try the Xwayland glamor hook first and fallback to the regular CreatePixmap() code path otherwise. That allows to enable direct scanout if possible, either through the regular dmabuf v4 code path, or from the implicit fallback code path. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
-
Olivier Fourdan authored
Whenever the linux-dmabuf v4 feedback changes, we need to recreate the existing buffers so they use the current linux-dmabuf v4 feedback. Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Michel Dänzer <mdaenzer@redhat.com>
Showing
- hw/xwayland/xwayland-glamor-gbm.c 43 additions, 10 deletionshw/xwayland/xwayland-glamor-gbm.c
- hw/xwayland/xwayland-glamor.c 131 additions, 21 deletionshw/xwayland/xwayland-glamor.c
- hw/xwayland/xwayland-glamor.h 4 additions, 0 deletionshw/xwayland/xwayland-glamor.h
- hw/xwayland/xwayland-window-buffers.c 12 additions, 5 deletionshw/xwayland/xwayland-window-buffers.c
- hw/xwayland/xwayland-window.h 2 additions, 0 deletionshw/xwayland/xwayland-window.h