As the original patchstack is now about 300 patches, I have choosen to squash the patches together into three different parts. - renderonly library A lightweight library to add basic infrastructure for renderonly GPUs. With this library it is possible to run wayland or and other kms egl apps. - etnaviv gallium driver glxgears renders so its time to get this driver mainline. - imx gallium driver Special dump driver for the imx-drm kms driver. The renderonly library approach is a temporary workaround until 'gbm2' is ready. I am aware that not everybody is happy about it but it helps to increase the possible use cases like wayland and kms egl apps. Also keep in mind that this library was only made for the embedded use case and will not work with hybrid GPUs etc. If there are fundamental problems with this library I will drop it and etnaviv will only work under X (with armada-ddx from unstable-devel branch). Some (older) results from piglit and deqp can be found here: https://christian-gmeiner.info/piglit https://christian-gmeiner.info/deqp All individual patches can be found here: https://github.com/etnaviv/mesa/tree/for_mainline_v1 The squased one can be found here: https://github.com/etnaviv/mesa/tree/for_mainline_v1_squashed As this work is a collaborative effort of Lucas Stack, Philipp Zabel, Rob Herring, Russell King, Wladimir J. van der Laan and myself the etnaviv gallium patch has a fictive author, but our signoff. Happy reviewing! Christian PS: I hope I got all Signed-off's right - if not I am quite sorry and will fix it in v2 or before pushing. PPS: As not everybody is happy about the renderonly library and as I am the only author I did not used the fictive author for the other two patches. Christian Gmeiner (2): gallium: add renderonly library imx: gallium driver for imx-drm scanout driver The etnaviv authors (1): etnaviv: gallium driver for Vivante GPUs configure.ac | 21 + src/gallium/Automake.inc | 5 + src/gallium/Makefile.am | 8 + src/gallium/auxiliary/Makefile.am | 10 + src/gallium/auxiliary/Makefile.sources | 4 + .../auxiliary/pipe-loader/pipe_loader_drm.c | 10 + src/gallium/auxiliary/renderonly/renderonly.c | 199 ++ src/gallium/auxiliary/renderonly/renderonly.h | 81 + src/gallium/auxiliary/target-helpers/drm_helper.h | 45 + .../auxiliary/target-helpers/drm_helper_public.h | 6 + src/gallium/drivers/etnaviv/.gitignore | 1 + src/gallium/drivers/etnaviv/Automake.inc | 11 + src/gallium/drivers/etnaviv/Makefile.am | 44 + src/gallium/drivers/etnaviv/Makefile.sources | 26 + src/gallium/drivers/etnaviv/etnaviv_asm.c | 107 + src/gallium/drivers/etnaviv/etnaviv_asm.h | 133 + src/gallium/drivers/etnaviv/etnaviv_blend.c | 109 + src/gallium/drivers/etnaviv/etnaviv_blend.h | 52 + src/gallium/drivers/etnaviv/etnaviv_clear_blit.c | 640 +++++ src/gallium/drivers/etnaviv/etnaviv_clear_blit.h | 48 + src/gallium/drivers/etnaviv/etnaviv_compiler.c | 2564 ++++++++++++++++++++ src/gallium/drivers/etnaviv/etnaviv_compiler.h | 120 + .../drivers/etnaviv/etnaviv_compiler_cmdline.c | 146 ++ src/gallium/drivers/etnaviv/etnaviv_context.c | 323 +++ src/gallium/drivers/etnaviv/etnaviv_context.h | 194 ++ src/gallium/drivers/etnaviv/etnaviv_debug.h | 79 + src/gallium/drivers/etnaviv/etnaviv_disasm.c | 612 +++++ src/gallium/drivers/etnaviv/etnaviv_disasm.h | 40 + src/gallium/drivers/etnaviv/etnaviv_emit.c | 770 ++++++ src/gallium/drivers/etnaviv/etnaviv_emit.h | 123 + src/gallium/drivers/etnaviv/etnaviv_fence.c | 87 + src/gallium/drivers/etnaviv/etnaviv_fence.h | 39 + src/gallium/drivers/etnaviv/etnaviv_format.c | 268 ++ src/gallium/drivers/etnaviv/etnaviv_format.h | 47 + src/gallium/drivers/etnaviv/etnaviv_internal.h | 259 ++ src/gallium/drivers/etnaviv/etnaviv_query.c | 120 + src/gallium/drivers/etnaviv/etnaviv_query.h | 64 + src/gallium/drivers/etnaviv/etnaviv_query_sw.c | 123 + src/gallium/drivers/etnaviv/etnaviv_query_sw.h | 47 + src/gallium/drivers/etnaviv/etnaviv_rasterizer.c | 81 + src/gallium/drivers/etnaviv/etnaviv_rasterizer.h | 57 + src/gallium/drivers/etnaviv/etnaviv_resource.c | 438 ++++ src/gallium/drivers/etnaviv/etnaviv_resource.h | 148 ++ src/gallium/drivers/etnaviv/etnaviv_rs.c | 127 + src/gallium/drivers/etnaviv/etnaviv_rs.h | 86 + src/gallium/drivers/etnaviv/etnaviv_screen.c | 804 ++++++ src/gallium/drivers/etnaviv/etnaviv_screen.h | 94 + src/gallium/drivers/etnaviv/etnaviv_shader.c | 285 +++ src/gallium/drivers/etnaviv/etnaviv_shader.h | 45 + src/gallium/drivers/etnaviv/etnaviv_state.c | 664 +++++ src/gallium/drivers/etnaviv/etnaviv_state.h | 52 + src/gallium/drivers/etnaviv/etnaviv_surface.c | 152 ++ src/gallium/drivers/etnaviv/etnaviv_surface.h | 55 + src/gallium/drivers/etnaviv/etnaviv_texture.c | 338 +++ src/gallium/drivers/etnaviv/etnaviv_texture.h | 75 + src/gallium/drivers/etnaviv/etnaviv_tiling.c | 96 + src/gallium/drivers/etnaviv/etnaviv_tiling.h | 56 + src/gallium/drivers/etnaviv/etnaviv_transfer.c | 355 +++ src/gallium/drivers/etnaviv/etnaviv_transfer.h | 35 + src/gallium/drivers/etnaviv/etnaviv_translate.h | 516 ++++ src/gallium/drivers/etnaviv/etnaviv_uniforms.c | 118 + src/gallium/drivers/etnaviv/etnaviv_uniforms.h | 45 + src/gallium/drivers/etnaviv/etnaviv_util.h | 108 + src/gallium/drivers/etnaviv/etnaviv_zsa.c | 123 + src/gallium/drivers/etnaviv/etnaviv_zsa.h | 52 + src/gallium/drivers/etnaviv/hw/cmdstream.xml.h | 270 +++ src/gallium/drivers/etnaviv/hw/common.xml.h | 320 +++ src/gallium/drivers/etnaviv/hw/isa.xml.h | 239 ++ src/gallium/drivers/etnaviv/hw/state.xml.h | 397 +++ src/gallium/drivers/etnaviv/hw/state_2d.xml.h | 1497 ++++++++++++ src/gallium/drivers/etnaviv/hw/state_3d.xml.h | 1231 ++++++++++ src/gallium/drivers/etnaviv/hw/state_hi.xml.h | 465 ++++ src/gallium/drivers/etnaviv/hw/state_vg.xml.h | 205 ++ src/gallium/drivers/imx/Automake.inc | 9 + src/gallium/drivers/imx/Makefile.am | 9 + src/gallium/winsys/etnaviv/drm/Makefile.am | 32 + .../winsys/etnaviv/drm/etnaviv_drm_public.h | 42 + .../winsys/etnaviv/drm/etnaviv_drm_winsys.c | 184 ++ src/gallium/winsys/imx/drm/Makefile.am | 33 + src/gallium/winsys/imx/drm/Makefile.sources | 3 + src/gallium/winsys/imx/drm/imx_drm_public.h | 31 + src/gallium/winsys/imx/drm/imx_drm_winsys.c | 41 + 82 files changed, 17598 insertions(+) create mode 100644 src/gallium/auxiliary/renderonly/renderonly.c create mode 100644 src/gallium/auxiliary/renderonly/renderonly.h create mode 100644 src/gallium/drivers/etnaviv/.gitignore create mode 100644 src/gallium/drivers/etnaviv/Automake.inc create mode 100644 src/gallium/drivers/etnaviv/Makefile.am create mode 100644 src/gallium/drivers/etnaviv/Makefile.sources create mode 100644 src/gallium/drivers/etnaviv/etnaviv_asm.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_asm.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_blend.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_blend.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_clear_blit.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_clear_blit.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_compiler.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_compiler.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_compiler_cmdline.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_context.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_context.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_debug.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_disasm.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_disasm.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_emit.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_emit.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_fence.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_fence.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_format.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_format.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_internal.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_query.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_query.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_query_sw.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_query_sw.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_rasterizer.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_rasterizer.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_resource.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_resource.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_rs.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_rs.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_screen.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_screen.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_shader.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_shader.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_state.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_state.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_surface.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_surface.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_texture.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_texture.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_tiling.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_tiling.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_transfer.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_transfer.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_translate.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_uniforms.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_uniforms.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_util.h create mode 100644 src/gallium/drivers/etnaviv/etnaviv_zsa.c create mode 100644 src/gallium/drivers/etnaviv/etnaviv_zsa.h create mode 100644 src/gallium/drivers/etnaviv/hw/cmdstream.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/common.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/isa.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/state.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/state_2d.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/state_3d.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/state_hi.xml.h create mode 100644 src/gallium/drivers/etnaviv/hw/state_vg.xml.h create mode 100644 src/gallium/drivers/imx/Automake.inc create mode 100644 src/gallium/drivers/imx/Makefile.am create mode 100644 src/gallium/winsys/etnaviv/drm/Makefile.am create mode 100644 src/gallium/winsys/etnaviv/drm/etnaviv_drm_public.h create mode 100644 src/gallium/winsys/etnaviv/drm/etnaviv_drm_winsys.c create mode 100644 src/gallium/winsys/imx/drm/Makefile.am create mode 100644 src/gallium/winsys/imx/drm/Makefile.sources create mode 100644 src/gallium/winsys/imx/drm/imx_drm_public.h create mode 100644 src/gallium/winsys/imx/drm/imx_drm_winsys.c -- 2.7.4 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel