[Mesa-dev] [PATCH 3/3] pipe-loader: add pipe loader for freedreno/msm

Emil Velikov emil.l.velikov at gmail.com
Mon Feb 10 04:52:38 PST 2014


On 08/02/14 22:41, Rob Clark wrote:
> From: Rob Clark <robclark at freedesktop.org>
> 
> Signed-off-by: Rob Clark <robclark at 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 0000000..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


More information about the mesa-dev mailing list