Hi, On Tue, Jan 17, 2017 at 7:40 PM, Pekka Paalanen <ppaala...@gmail.com> wrote: > On Mon, 21 Nov 2016 15:47:39 +0530 > Varad Gautam <varadgau...@gmail.com> wrote: > >> From: Varad Gautam <varad.gau...@collabora.com> >> >> advertise the supported fourcc format modifiers along with supported >> formats to the client. >> >> bump zwp_linux_dmabuf_v1, zwp_linux_buffer_params_v1 interface >> versions to 3. >> >> v2: specify request name in event description for clarity (Yong Bakos) >> v3: grammar fixup (Yong Bakos) >> >> Signed-off-by: Varad Gautam <varad.gau...@collabora.com> >> Reviewed-by: Yong Bakos <yba...@humanoriented.com> >> --- >> unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml | 25 >> +++++++++++++++++++--- >> 1 file changed, 22 insertions(+), 3 deletions(-) >> >> diff --git a/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml >> b/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml >> index a0aa42e..cc5d604 100644 >> --- a/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml >> +++ b/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml >> @@ -26,7 +26,7 @@ >> THIS SOFTWARE. >> </copyright> >> >> - <interface name="zwp_linux_dmabuf_v1" version="2"> >> + <interface name="zwp_linux_dmabuf_v1" version="3"> >> <description summary="factory for creating dmabuf-based wl_buffers"> >> Following the interfaces from: >> >> https://www.khronos.org/registry/egl/extensions/EXT/EGL_EXT_image_dma_buf_import.txt >> @@ -34,7 +34,8 @@ >> >> This interface offers ways to create generic dmabuf-based >> wl_buffers. Immediately after a client binds to this interface, >> - the set of supported formats is sent with 'format' events. >> + the set of supported formats and format modifiers is sent with >> + 'format' and 'modifier' events. > > Hi, > > so does this mean that when v3 is bound, the client will receive *both* > 'format' and 'modifier' events? > > What does it mean if a format comes via 'format' event but not via > 'modifiers' event? > > Can a format come only via 'modifiers' event?
Bind triggers both `format` and `modifier` events. - the `format` event carries only the DRM_FORMAT_* code, (preserved from v1), whereas `modifier` sends a supported <format, modifier> pair. So, for each supported format, there would be one `format` event, and as many `modifier` events as the number of modifiers supported for that format. Thanks, Varad > > Otherwise looks fine to me. With those clarifications it's at least: > Acked-by: Pekka Paalanen <pekka.paala...@collabora.co.uk> > > The event size is 5 words which is 20 bytes. One wire buffer can hold > around 200 such events. If we ever need to send more format/modifier > combinations than that, well, I suppose we'll cross that bridge then. > > > Thanks, > pq > >> >> The following are required from clients: >> >> @@ -110,9 +111,27 @@ >> </description> >> <arg name="format" type="uint" summary="DRM_FORMAT code"/> >> </event> >> + >> + <event name="modifier" since="3"> >> + <description summary="supported buffer format modifier"> >> + This event advertises the formats that the server supports, along >> with >> + the modifiers supported for each format. All the supported >> modifiers for >> + all the supported formats are advertised once when the client binds >> to >> + this interface. A roundtrip after binding guarantees that the client >> + has received all supported format-modifier pairs. >> + >> + For the definition of the format and modifier codes, see the >> + zwp_linux_buffer_params_v1::create request. >> + </description> >> + <arg name="format" type="uint" summary="DRM_FORMAT code"/> >> + <arg name="modifier_hi" type="uint" >> + summary="high 32 bits of layout modifier"/> >> + <arg name="modifier_lo" type="uint" >> + summary="low 32 bits of layout modifier"/> >> + </event> >> </interface> >> >> - <interface name="zwp_linux_buffer_params_v1" version="2"> >> + <interface name="zwp_linux_buffer_params_v1" version="3"> >> <description summary="parameters for creating a dmabuf-based wl_buffer"> >> This temporary object is a collection of dmabufs and other >> parameters that together form a single logical buffer. The temporary > _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel