Thanks Rob, I'm OK with this kmsro approach. But I have to point out that this will break XServer AIGLX: 1. modesetting DDX will report the display drm driver name like meson as DRI2 driver name 2. libglx.so used by xserver will look after meson_dri.so for dlopen 3. then dlsym __driDriverGetExtensions_meson for init
With this serial applied, 2&3 will not be true any more. This may need the fix in modesetting or libglx.so. But as AIGLX is mostly not used, so I'm OK for this serial go into mesa first, just a remind for somebody who cares. Regards, Qiang On Fri, Jan 25, 2019 at 6:36 AM Rob Herring <r...@kernel.org> wrote: > > This series aims to make supporting new platforms containing > renderonly GPUs easier with less copy-n-paste. This hasn't been a big > issue so far as the current renderonly drivers (vc4 and etnaviv) only > exists on a few platforms. This is changing with i.MX+freedreno, > armada+etnaviv and a slew of platforms using Mali lima and panfrost > drivers. > > I've taken the kmsro winsys from Eric, extended the pipe-loader to > fall back to kmsro, added etnaviv support, and switched imx to use > kmsro. > > I've tested this with the panfrost tree. Help testing on i.MX would be > nice. A git branch is here[1]. > > Rob > > [1] https://github.com/robherring/mesa winsys-renderonly > > Eric Anholt (1): > pl111: Rename the pl111 driver to "kmsro". > > Rob Herring (3): > pipe-loader: Fallback to kmsro driver when no matching driver name > found > kmsro: Add etnaviv renderonly support > Switch imx to kmsro and remove the imx winsys > > .travis.yml | 2 +- > Android.mk | 7 ++- > Makefile.am | 2 +- > configure.ac | 28 ++++------- > meson.build | 12 ++--- > meson_options.txt | 4 +- > src/gallium/Android.mk | 3 +- > src/gallium/Makefile.am | 8 +-- > .../auxiliary/pipe-loader/pipe_loader_drm.c | 18 +++---- > .../auxiliary/target-helpers/drm_helper.h | 35 +++---------- > .../target-helpers/drm_helper_public.h | 2 +- > src/gallium/drivers/imx/Automake.inc | 9 ---- > .../drivers/{pl111 => kmsro}/Android.mk | 6 +-- > src/gallium/drivers/kmsro/Automake.inc | 9 ++++ > .../drivers/{imx => kmsro}/Makefile.am | 4 +- > .../drivers/{pl111 => kmsro}/Makefile.sources | 0 > src/gallium/drivers/pl111/Automake.inc | 9 ---- > src/gallium/drivers/pl111/Makefile.am | 8 --- > src/gallium/meson.build | 23 ++++----- > src/gallium/targets/dri/Makefile.am | 3 +- > src/gallium/targets/dri/meson.build | 8 +-- > src/gallium/targets/dri/target.c | 2 +- > src/gallium/winsys/imx/drm/Android.mk | 40 --------------- > src/gallium/winsys/imx/drm/Makefile.am | 35 ------------- > src/gallium/winsys/imx/drm/Makefile.sources | 3 -- > src/gallium/winsys/imx/drm/imx_drm_public.h | 34 ------------- > src/gallium/winsys/imx/drm/imx_drm_winsys.c | 50 ------------------- > src/gallium/winsys/imx/drm/meson.build | 33 ------------ > .../winsys/{pl111 => kmsro}/drm/Android.mk | 2 +- > .../winsys/{pl111 => kmsro}/drm/Makefile.am | 12 ++++- > src/gallium/winsys/kmsro/drm/Makefile.sources | 3 ++ > .../drm/kmsro_drm_public.h} | 8 +-- > .../drm/kmsro_drm_winsys.c} | 42 +++++++++++----- > .../winsys/{pl111 => kmsro}/drm/meson.build | 23 ++++++--- > src/gallium/winsys/pl111/drm/Makefile.sources | 3 -- > 35 files changed, 130 insertions(+), 360 deletions(-) > delete mode 100644 src/gallium/drivers/imx/Automake.inc > rename src/gallium/drivers/{pl111 => kmsro}/Android.mk (91%) > create mode 100644 src/gallium/drivers/kmsro/Automake.inc > rename src/gallium/drivers/{imx => kmsro}/Makefile.am (55%) > rename src/gallium/drivers/{pl111 => kmsro}/Makefile.sources (100%) > delete mode 100644 src/gallium/drivers/pl111/Automake.inc > delete mode 100644 src/gallium/drivers/pl111/Makefile.am > delete mode 100644 src/gallium/winsys/imx/drm/Android.mk > delete mode 100644 src/gallium/winsys/imx/drm/Makefile.am > delete mode 100644 src/gallium/winsys/imx/drm/Makefile.sources > delete mode 100644 src/gallium/winsys/imx/drm/imx_drm_public.h > delete mode 100644 src/gallium/winsys/imx/drm/imx_drm_winsys.c > delete mode 100644 src/gallium/winsys/imx/drm/meson.build > rename src/gallium/winsys/{pl111 => kmsro}/drm/Android.mk (97%) > rename src/gallium/winsys/{pl111 => kmsro}/drm/Makefile.am (87%) > create mode 100644 src/gallium/winsys/kmsro/drm/Makefile.sources > rename src/gallium/winsys/{pl111/drm/pl111_drm_public.h => > kmsro/drm/kmsro_drm_public.h} (89%) > rename src/gallium/winsys/{pl111/drm/pl111_drm_winsys.c => > kmsro/drm/kmsro_drm_winsys.c} (63%) > rename src/gallium/winsys/{pl111 => kmsro}/drm/meson.build (76%) > delete mode 100644 src/gallium/winsys/pl111/drm/Makefile.sources > > -- > 2.19.1 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev