[meta-freescale] [PATCH v2 05/14] imx-gpu-viv: Upgrade to 6.2.2.p0

Otavio Salvador otavio.salvador at ossystems.com.br
Thu Nov 16 04:43:45 PST 2017


Hello Gary,

Thanks for getting involved on this. I am adding Prabhu to the Cc as well.

On Thu, Nov 16, 2017 at 9:37 AM, Gary Bisson
<gary.bisson at boundarydevices.com> wrote:
> Hi Tom,
>
> On Wed, Nov 15, 2017 at 10:02 PM, Tom Hochstein <tom.hochstein at nxp.com> wrote:
>> Key Features of the Vivante 6.2.2.p0 Driver Series
>>
>> - Full support for Khronos Vulkan 1.0 API and WSI extension APIs
>> Vulkan is a new generation graphics and compute API that provides
>> high-efficiency, cross-platform access to modern GPUs used in a wide
>> variety of devices. Vivante’s Vulkan 1.0 implementation has passed
>> Khronos Vulkan 1.0 Conformance Test. Vivante GC7000XS* GPU core has
>> been certified by Khronos as a Vulkan 1.0 compliant product.
>> - Full support for Khronos OpenGL ES 3.2 API
>> The new OpenGL ES 3.2 and OpenGL ES Shading Language 3.20
>> specifications bring AEP, plus additional functionality, into core
>> OpenGL ES. Vivante OpenGL ES 3.2 implementation has passed Khronos
>> OpenGL ES 3.2 Conformance Test. And Vivante GC7000XS* GPU core has
>> been certified by Khronos as an OpenGL ES 3.2 compliant product.
>> - Draw calls specifying a base vertex parameter
>> - Floating-point framebuffers
>> - Robust buffer access control
>> - Support for querying CONTEXT_FLAGS, as needed by debug and robust buffer access functionality.
>> - Khronos OpenVX 1.0.1 API
>> - Khronos OpenCL 1.2 API
>>
>> Improvements
>>
>> 1. Added mutex protection for referencing gctSIGNAL in gckOS_MapSignal to fix a MT race issue.
>> 2. Streamlined GPU address calculation base on MC20 (0/1) and MMU (0/1) combinations.
>> 3. Fixed multiple Android HWC 2.0 rendering issues. Refined HWC 2.0 driver implementation.
>> 4. Improved HWC2.0 composition performance by composing damaged regions only.
>> 6. Enabled offline/online compiler IR assembly dump function for users.
>> 7. Implemented the direct rendering support (no-resolve) for Wayland platform.
>> 8. Added EGL_EXT_buffer_age extension for Wayland and fbdev platforms.
>> 9. Updated wayland-viv protocol to support tile status sync from client to server.
>> 10. Improved OpenCL 1.2 builtin function support with native GPU instructions.
>> 11. Enabled OpenCL 1.2 API trace dump function controlled by VIV_TRACE environment variable.
>> 12. Support for OpenGL4.0
>> 13. Cleaned up driver code issues reported by Klocwork and Coverity.
>>
>> Changes and Bug Fixes
>>
>> VG3D:   MGS-2972 fix 3D OpenVG render target orientation
>> EGL:    MGS-2790 6sx-sdb Met memory dump when do xwld stress test
>> EGL:    MGS-2885 fix recursive call to dequeue buffer issue on wayland
>> EGL:    MGS-2785 Meet segmentation fault when test qt5nmapper on wayland
>> EGL:    MGS-2734 fix x11 memory leak issue
>> Gralloc:MA-9561 fix crash issue on new gralloc1 interface.
>> 2D:     MGS-2900 fix filterblt memory leak
>> VG2D/6SL: MGS-2882 fix video memory allocator
>> OCL:    MGS-2732 clCopyImage with max_images in OCL1.1 cts, crashes.
>> GLES:   MGS-2747 enable the full config for ES3 CTS
>> GLES:   MGS-1832 fix Mirada performance issue. optimize cpu load for fence check
>> WEBGL:  MGS-2779 webgl 1.0.2 conformance test met out of memory
>> General:MGS-2923 fix gc2000 gpu hang when flush TS cache
>> General:MGS-2907 fix wrong cache invalidate with dma_map_area
>> General:MGS-2902 fix wrong release_mem_region
>> General:MGS-2848 fix gpu hang for flat mapping optimization
>> General:MGS-2848 Optimize MMUv1 FlatMapping performances
>> General:MGS-2857 fix spinlock in gpu kernel driver
>> General:MGS-2805 Enable gcdENABLE_VG by default.
>> General:MGS-2827 fix serious performance drop on imx6q
>> General:MGS-2832 fix axi bus error with correct baseaddress
>> General:MA-9483  Refine android native fence code to match 4.9 kernel
>> General:MA-9473 Fix gpu random crash issue caused by NULL pointer
>> General:MGS-2804 fix flat mapping overflow issue
>> General:MGS-2786 fix gpu kernel panic with debugfs
>> General:GS-2776  fix galcore device open failure
>> General:MGS-2767 i.MX7ULP GPU suspend/resume problem
>> Coverity:MGS-2858 Double free in __driUtilUpdateExtraDrawableInfo
>>
>> Known Issues
>>
>> OpenCL 1.1 CTS failures. Will be addresed in 6.2.3
>> MGS-3027 GPU: X11 manywin draw error. 100%
>> MGS-2935 [imx6QP] X11: glxs app test some frames render incorrectly. 100%
>> MGS-2860 [MX7ULP/imx6SLEVK] X11/Xwld: XWindow 2D Acceleration performance test met "X Error of failed request: BadMatch (invalid parameter attributes)" error. 100%
>> MGS-2829 [imx6qp/imx6d] xwld: mm06 Samurai and Proxycon performance regression comparing with L4.1 using 5.0.11p8
>> MGS-2310 [imx6qp/imx6dq/imx6dl/imx6sx] webgl: two items performance data is lower than L4.1_GA
>> MGS-1828 [imx6qp_sd/imx6Q/imx6dl] X11/xwld: VGMARK on vg3d have some items performance drop comparing with L4.1 GA
>> MGS-1350 [imx6qp-sd] X/FB: Some Basemark test items performance drop comparing with L3.14.52GA which use 5.0.11p7
>
> If I may, I have one more issue to add to the list:
> [imx6q/imx6qp/imx6dl] Does not work if cma region is above 'base + 2G'
>
> Have you tried this driver on an i.MX6 platform with 4GB of RAM &
> kernel 4.9 (rel_imx_4.9.x_1.0.0_ga)?
>
> Here it fails because the region of cma in such case is located at the
> end of the RAM (0xea000000 exactly) which the driver doesn't seem to
> support.
>
> Note that a similar issue was seen and fixed on Etnaviv[1]. I guess a
> similar patch is required for this driver as well.
>
> Forcing the cma area to be under 0x90000000 (for imx6qdl) makes the driver work.
>
> Also, the driver works fine on 4.1.15 kernel, because the cma region
> is allocated @0x6a000000 by default and therefore everything is fine.
>
> Using 4.1.15 of_reserved_mem.c works too but that is just a
> workaround, the viv driver should manage that case since Etnaviv does.
>
> Let me know if you have any question.
>
> Regards,
> Gary
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=471070ab
> --
> _______________________________________________
> meta-freescale mailing list
> meta-freescale at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-freescale



-- 
Otavio Salvador                             O.S. Systems
http://www.ossystems.com.br        http://code.ossystems.com.br
Mobile: +55 (53) 9981-7854            Mobile: +1 (347) 903-9750


More information about the meta-freescale mailing list