Hi!
I've tried to use extensions EGL_KHR_partial_update and EGL_EXT_swap_buffers_with_damage on the devices with Mali-T760 gpu.
For extension EGL_KHR_partial_update specification says:
Use the command EGLBoolean eglSetDamageRegionKHR( EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects)...<n_rects> specifies the number of rectangles comprising the damage region. <rects> is a pointer to a list of values describing the rectangles. The list should consist of <n_rects> groups of four values, with each group representing a single rectangle in surface coordinates in the form {x, y, width, height}. Coordinates are specified relative to the lower left corner of the surface.
Use the command EGLBoolean eglSetDamageRegionKHR( EGLDisplay dpy, EGLSurface surface, EGLint *rects, EGLint n_rects)
...
<n_rects> specifies the number of rectangles comprising the damage region.
<rects> is a pointer to a list of values describing the rectangles. The list
should consist of <n_rects> groups of four values, with each group
representing a single rectangle in surface coordinates in the form {x, y,
width, height}. Coordinates are specified relative to the lower left
corner of the surface.
But on devices with Mali-T760 for correct drawing, n_rects coordinates have to be relative to the upper left corner of the surface.
Is it a driver bug?
P.S. eglSwapBuffersWithDamageEXT works correct (the rectangles are specified relative to the bottom-left of the surface)
Thanks in advance,
Igor
Hi Igor,
Apologies, I was misinformed. It was raised in our system from r7p0. It has since been resolved and in r10p0.
Kind Regards,
Michael McGeagh
Hi Michael,
Thank you for the information.