Re: [Mesa-dev] [PATCH 3/3] pipe-loader: add pipe loader for freedreno/msm
On 08/02/14 22:41, Rob Clark wrote: From: Rob Clark robcl...@freedesktop.org Signed-off-by: Rob Clark robcl...@freedesktop.org --- src/gallium/targets/pipe-loader/Makefile.am | 16 src/gallium/targets/pipe-loader/pipe_msm.c | 20 2 files changed, 36 insertions(+) create mode 100644 src/gallium/targets/pipe-loader/pipe_msm.c diff --git a/src/gallium/targets/pipe-loader/Makefile.am b/src/gallium/targets/pipe-loader/Makefile.am index 97733c1..8a0f254 100644 --- a/src/gallium/targets/pipe-loader/Makefile.am +++ b/src/gallium/targets/pipe-loader/Makefile.am @@ -132,6 +132,22 @@ pipe_radeonsi_la_LDFLAGS += $(LLVM_LDFLAGS) endif endif +if HAVE_GALLIUM_FREEDRENO +pipe_LTLIBRARIES += pipe_msm.la +pipe_msm_la_SOURCES = pipe_msm.c +nodist_EXTRA_pipe_msm_la_SOURCES = dummy.cpp +pipe_msm_la_LIBADD = \ + $(PIPE_LIBS) \ + $(top_builddir)/src/gallium/winsys/freedreno/drm/libfreedrenodrm.la \ + $(top_builddir)/src/gallium/drivers/freedreno/libfreedreno.la \ + $(LIBDRM_LIBS) +pipe_msm_la_LDFLAGS = -no-undefined -avoid-version -module +if HAVE_MESA_LLVM +pipe_msm_la_LIBADD += $(LLVM_LIBS) +pipe_msm_la_LDFLAGS += $(LLVM_LDFLAGS) +endif +endif + if HAVE_GALLIUM_SVGA pipe_LTLIBRARIES += pipe_vmwgfx.la pipe_vmwgfx_la_SOURCES = pipe_vmwgfx.c diff --git a/src/gallium/targets/pipe-loader/pipe_msm.c b/src/gallium/targets/pipe-loader/pipe_msm.c new file mode 100644 index 000..509e94c --- /dev/null +++ b/src/gallium/targets/pipe-loader/pipe_msm.c @@ -0,0 +1,20 @@ + +#include target-helpers/inline_debug_helper.h +#include state_tracker/drm_driver.h +#include freedreno/drm/freedreno_drm_public.h + +static struct pipe_screen * +create_screen(int fd) +{ + struct pipe_screen *screen; + + screen = fd_drm_screen_create(fd); + if (!screen) + return NULL; + + screen = debug_screen_wrap(screen); + + return screen; +} + +DRM_DRIVER_DESCRIPTOR(msm, freedreno, create_screen, NULL) The driver descriptor has to be marked as public. Otherwise the symbol will not be exported when we add VISIBILITY_CFLAGS to targets/pipe-loader/Makefile.am -Emil ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 3/3] pipe-loader: add pipe loader for freedreno/msm
There should be one called pipe_freedreno and the pipe driver loader should support sth. like: if ((strcmp(dev-driver_name, kgsl) == 0) || (strcmp(dev-driver_name, msm) == 0)) dev-driver_name = freedreno; in pipe_loader_find_module ... ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 3/3] pipe-loader: add pipe loader for freedreno/msm
On Mon, Feb 10, 2014 at 12:30 PM, Johannes Obermayr johannesoberm...@gmx.de wrote: There should be one called pipe_freedreno and the pipe driver loader should support sth. like: if ((strcmp(dev-driver_name, kgsl) == 0) || (strcmp(dev-driver_name, msm) == 0)) dev-driver_name = freedreno; in pipe_loader_find_module ... *really*? That seems even more ugly.. fwiw, I don't expect kgsl to stick around forever.. it is mainly a temporary convenience for folks with tablets/phones, since drm/msm is missing some features (mainly dsi panel support). We don't control the kgsl kernel interface. Eventually qcom will break it badly enough, and drm/msm will have gained enough features, that we decide kgsl is not worth keeping. BR, -R ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
[Mesa-dev] [PATCH 3/3] pipe-loader: add pipe loader for freedreno/msm
From: Rob Clark robcl...@freedesktop.org Signed-off-by: Rob Clark robcl...@freedesktop.org --- src/gallium/targets/pipe-loader/Makefile.am | 16 src/gallium/targets/pipe-loader/pipe_msm.c | 20 2 files changed, 36 insertions(+) create mode 100644 src/gallium/targets/pipe-loader/pipe_msm.c diff --git a/src/gallium/targets/pipe-loader/Makefile.am b/src/gallium/targets/pipe-loader/Makefile.am index 97733c1..8a0f254 100644 --- a/src/gallium/targets/pipe-loader/Makefile.am +++ b/src/gallium/targets/pipe-loader/Makefile.am @@ -132,6 +132,22 @@ pipe_radeonsi_la_LDFLAGS += $(LLVM_LDFLAGS) endif endif +if HAVE_GALLIUM_FREEDRENO +pipe_LTLIBRARIES += pipe_msm.la +pipe_msm_la_SOURCES = pipe_msm.c +nodist_EXTRA_pipe_msm_la_SOURCES = dummy.cpp +pipe_msm_la_LIBADD = \ + $(PIPE_LIBS) \ + $(top_builddir)/src/gallium/winsys/freedreno/drm/libfreedrenodrm.la \ + $(top_builddir)/src/gallium/drivers/freedreno/libfreedreno.la \ + $(LIBDRM_LIBS) +pipe_msm_la_LDFLAGS = -no-undefined -avoid-version -module +if HAVE_MESA_LLVM +pipe_msm_la_LIBADD += $(LLVM_LIBS) +pipe_msm_la_LDFLAGS += $(LLVM_LDFLAGS) +endif +endif + if HAVE_GALLIUM_SVGA pipe_LTLIBRARIES += pipe_vmwgfx.la pipe_vmwgfx_la_SOURCES = pipe_vmwgfx.c diff --git a/src/gallium/targets/pipe-loader/pipe_msm.c b/src/gallium/targets/pipe-loader/pipe_msm.c new file mode 100644 index 000..509e94c --- /dev/null +++ b/src/gallium/targets/pipe-loader/pipe_msm.c @@ -0,0 +1,20 @@ + +#include target-helpers/inline_debug_helper.h +#include state_tracker/drm_driver.h +#include freedreno/drm/freedreno_drm_public.h + +static struct pipe_screen * +create_screen(int fd) +{ + struct pipe_screen *screen; + + screen = fd_drm_screen_create(fd); + if (!screen) + return NULL; + + screen = debug_screen_wrap(screen); + + return screen; +} + +DRM_DRIVER_DESCRIPTOR(msm, freedreno, create_screen, NULL) -- 1.8.5.3 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev