[Mesa-dev] [PATCH 00/14] freedreno: move all the things

Bas Nieuwenhuizen basni at chromium.org
Mon Nov 19 14:40:22 UTC 2018


With my limited knowledge of the parts up till now, this is

Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

with the caveat that this might very well break the Android build.
Have anyone to look at that or do I need to take a stab?

On Mon, Nov 12, 2018 at 4:51 PM Rob Clark <robdclark at gmail.com> wrote:
>
> Moves drm and the ir3 compiler to src/freedreno so it can be eventually
> re-used by vulkan driver.
>
> I mostly just wanted to get the splitup and move of ir3 out of the way
> now before I embark on some ir3 refactoring to handle some of the
> instructions that use a different encoding on a6xx+ vs earlier gens.
>
> Rob Clark (14):
>   freedreno/drm: remove dependency on gallium driver
>   freedreno: move drm to common location
>   freedreno/ir3: standalone compiler updates
>   freedreno: shader_t -> gl_shader_stage
>   freedreno: remove shader_stage_name()
>   freedreno: FD_SHADER_DEBUG -> IR3_SHADER_DEBUG
>   freedreno/ir3: move disasm and optmsgs debug flags
>   util: env_var_as_unsigned() helper
>   freedreno/ir3: use env_var_as_unsigned()
>   freedreno/ir3: some header file cleanup
>   freedreno/ir3: remove pipe_stream_output_info dependency
>   freedreno/ir3: split up ir3_shader
>   freedreno/ir3: remove u_inlines usage
>   freedreno: move ir3 to common location
>
>  configure.ac                                  |   2 +
>  src/Makefile.am                               |   4 +
>  src/freedreno/Makefile.am                     |  76 +++
>  src/freedreno/Makefile.sources                |  41 ++
>  .../drivers => }/freedreno/drm/freedreno_bo.c |   0
>  .../freedreno/drm/freedreno_bo_cache.c        |   0
>  .../freedreno/drm/freedreno_device.c          |   0
>  .../freedreno/drm/freedreno_drmif.h           |   0
>  .../freedreno/drm/freedreno_pipe.c            |   0
>  .../freedreno/drm/freedreno_priv.h            |   0
>  .../freedreno/drm/freedreno_ringbuffer.c      |   0
>  .../freedreno/drm/freedreno_ringbuffer.h      |   0
>  src/freedreno/drm/meson.build                 |  54 ++
>  .../drivers => }/freedreno/drm/msm_bo.c       |   0
>  .../drivers => }/freedreno/drm/msm_device.c   |   0
>  .../drivers => }/freedreno/drm/msm_drm.h      |   0
>  .../drivers => }/freedreno/drm/msm_pipe.c     |  13 +-
>  .../drivers => }/freedreno/drm/msm_priv.h     |   0
>  .../freedreno/drm/msm_ringbuffer.c            |   0
>  .../freedreno/drm/msm_ringbuffer_sp.c         |   0
>  .../drivers => }/freedreno/ir3/disasm-a3xx.c  |   7 +-
>  .../drivers => }/freedreno/ir3/instr-a3xx.h   |   3 +
>  src/{gallium/drivers => }/freedreno/ir3/ir3.c |   3 +-
>  src/{gallium/drivers => }/freedreno/ir3/ir3.h |   5 +-
>  .../drivers => }/freedreno/ir3/ir3_compiler.c |  15 +
>  .../drivers => }/freedreno/ir3/ir3_compiler.h |  23 +
>  .../freedreno/ir3/ir3_compiler_nir.c          | 103 ++--
>  .../drivers => }/freedreno/ir3/ir3_cp.c       |   2 +-
>  .../drivers => }/freedreno/ir3/ir3_depth.c    |   0
>  .../drivers => }/freedreno/ir3/ir3_group.c    |   2 -
>  .../drivers => }/freedreno/ir3/ir3_legalize.c |   3 +-
>  .../drivers => }/freedreno/ir3/ir3_nir.c      |  21 +-
>  .../drivers => }/freedreno/ir3/ir3_nir.h      |   1 -
>  .../freedreno/ir3/ir3_nir_lower_tg4_to_tex.c  |   0
>  .../freedreno/ir3/ir3_nir_trig.py             |   0
>  .../drivers => }/freedreno/ir3/ir3_print.c    |   0
>  .../drivers => }/freedreno/ir3/ir3_ra.c       |   8 +-
>  .../drivers => }/freedreno/ir3/ir3_sched.c    |   0
>  src/freedreno/ir3/ir3_shader.c                | 436 ++++++++++++++++
>  .../drivers => }/freedreno/ir3/ir3_shader.h   | 113 ++--
>  src/freedreno/ir3/meson.build                 |  64 +++
>  src/freedreno/meson.build                     |  24 +
>  src/gallium/drivers/freedreno/Android.mk      |   1 -
>  src/gallium/drivers/freedreno/Automake.inc    |   2 +
>  src/gallium/drivers/freedreno/Makefile.am     |  37 +-
>  .../drivers/freedreno/Makefile.sources        |  40 +-
>  .../drivers/freedreno/a2xx/disasm-a2xx.c      |  10 +-
>  .../drivers/freedreno/a2xx/fd2_program.c      |  16 +-
>  .../drivers/freedreno/a2xx/fd2_program.h      |   2 +-
>  .../drivers/freedreno/a3xx/fd3_context.h      |   2 +-
>  src/gallium/drivers/freedreno/a3xx/fd3_emit.c |   8 +-
>  src/gallium/drivers/freedreno/a3xx/fd3_emit.h |   2 +-
>  .../drivers/freedreno/a3xx/fd3_program.c      |   8 +-
>  .../drivers/freedreno/a3xx/fd3_program.h      |   3 +-
>  .../drivers/freedreno/a3xx/fd3_screen.c       |   3 +-
>  .../drivers/freedreno/a4xx/fd4_context.h      |   2 +-
>  src/gallium/drivers/freedreno/a4xx/fd4_emit.c |   4 +-
>  src/gallium/drivers/freedreno/a4xx/fd4_emit.h |   2 +-
>  .../drivers/freedreno/a4xx/fd4_program.c      |   6 +-
>  .../drivers/freedreno/a4xx/fd4_program.h      |   3 +-
>  .../drivers/freedreno/a4xx/fd4_screen.c       |   3 +-
>  .../drivers/freedreno/a5xx/fd5_context.h      |   2 +-
>  src/gallium/drivers/freedreno/a5xx/fd5_emit.c |   6 +-
>  src/gallium/drivers/freedreno/a5xx/fd5_emit.h |   2 +-
>  .../drivers/freedreno/a5xx/fd5_program.c      |  14 +-
>  .../drivers/freedreno/a5xx/fd5_program.h      |   3 +-
>  .../drivers/freedreno/a5xx/fd5_screen.c       |   2 +-
>  .../drivers/freedreno/a6xx/fd6_context.h      |   2 +-
>  src/gallium/drivers/freedreno/a6xx/fd6_emit.c |  20 +-
>  src/gallium/drivers/freedreno/a6xx/fd6_emit.h |  10 +-
>  .../drivers/freedreno/a6xx/fd6_program.c      |  20 +-
>  .../drivers/freedreno/a6xx/fd6_program.h      |   3 +-
>  .../drivers/freedreno/a6xx/fd6_screen.c       |   2 +-
>  src/gallium/drivers/freedreno/disasm.h        |  53 +-
>  .../drivers/freedreno/freedreno_context.h     |   4 +-
>  .../drivers/freedreno/freedreno_screen.c      |  15 +-
>  .../drivers/freedreno/freedreno_util.h        |  22 +-
>  src/gallium/drivers/freedreno/ir3/ir3_cache.c |   4 +-
>  src/gallium/drivers/freedreno/ir3/ir3_cache.h |   2 +-
>  .../drivers/freedreno/ir3/ir3_cmdline.c       |  69 +--
>  .../ir3/{ir3_shader.c => ir3_gallium.c}       | 482 ++----------------
>  .../drivers/freedreno/ir3/ir3_gallium.h       |  55 ++
>  src/gallium/drivers/freedreno/meson.build     |  65 +--
>  src/gallium/winsys/freedreno/drm/Makefile.am  |   1 +
>  src/gallium/winsys/freedreno/drm/meson.build  |   1 +
>  src/meson.build                               |   3 +
>  src/util/debug.c                              |  12 +
>  src/util/debug.h                              |   2 +
>  88 files changed, 1182 insertions(+), 871 deletions(-)
>  create mode 100644 src/freedreno/Makefile.am
>  create mode 100644 src/freedreno/Makefile.sources
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_bo.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_bo_cache.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_device.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_drmif.h (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_pipe.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_priv.h (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_ringbuffer.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/freedreno_ringbuffer.h (100%)
>  create mode 100644 src/freedreno/drm/meson.build
>  rename src/{gallium/drivers => }/freedreno/drm/msm_bo.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/msm_device.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/msm_drm.h (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/msm_pipe.c (96%)
>  rename src/{gallium/drivers => }/freedreno/drm/msm_priv.h (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/msm_ringbuffer.c (100%)
>  rename src/{gallium/drivers => }/freedreno/drm/msm_ringbuffer_sp.c (100%)
>  rename src/{gallium/drivers => }/freedreno/ir3/disasm-a3xx.c (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/instr-a3xx.h (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3.c (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3.h (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_compiler.c (76%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_compiler.h (79%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_compiler_nir.c (97%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_cp.c (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_depth.c (100%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_group.c (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_legalize.c (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_nir.c (95%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_nir.h (96%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_nir_lower_tg4_to_tex.c (100%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_nir_trig.py (100%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_print.c (100%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_ra.c (99%)
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_sched.c (100%)
>  create mode 100644 src/freedreno/ir3/ir3_shader.c
>  rename src/{gallium/drivers => }/freedreno/ir3/ir3_shader.h (85%)
>  create mode 100644 src/freedreno/ir3/meson.build
>  create mode 100644 src/freedreno/meson.build
>  rename src/gallium/drivers/freedreno/ir3/{ir3_shader.c => ir3_gallium.c} (60%)
>  create mode 100644 src/gallium/drivers/freedreno/ir3/ir3_gallium.h
>
> --
> 2.19.1
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list