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

2014-02-10 Thread Emil Velikov
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

2014-02-10 Thread Johannes Obermayr
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

2014-02-10 Thread Rob Clark
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

2014-02-08 Thread Rob Clark
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