]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/commitdiff
Merge branch 'next' of git.ipfire.org:/pub/git/ipfire-2.x into next
authorArne Fitzenreiter <arne_f@ipfire.org>
Fri, 2 Nov 2018 15:16:22 +0000 (15:16 +0000)
committerArne Fitzenreiter <arne_f@ipfire.org>
Fri, 2 Nov 2018 15:16:22 +0000 (15:16 +0000)
lfs/directfb
src/patches/DirectFB-1.7.7-add-missing-davinci-files.patch [moved from src/patches/DirectFB-1.5.3-add-missing-davinci-files.patch with 98% similarity]
src/patches/DirectFB-1.7.7-fix_mknod.patch [new file with mode: 0644]
src/patches/directfb-1.1.1-fix-mknod.patch [deleted file]

index 14916e403fad9e61ff8af3bc572342b7fa2b6c3c..8b2ff60226734313d3083841d7e23eb595c150dc 100644 (file)
@@ -79,7 +79,8 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/DirectFB-1.5.3-add-missing-davinci-files.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/DirectFB-1.7.7-add-missing-davinci-files.patch
+       cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/DirectFB-1.7.7-fix_mknod.patch
 
        cd $(DIR_APP) && ./configure \
                --prefix=/usr \
similarity index 98%
rename from src/patches/DirectFB-1.5.3-add-missing-davinci-files.patch
rename to src/patches/DirectFB-1.7.7-add-missing-davinci-files.patch
index bdea6010555516ee0e533d14e1603a281e7911d4..078754ef3a11262520fec62c01e84e82f216f6cb 100644 (file)
@@ -1,6 +1,22 @@
-diff -urNp DirectFB-1.5.3_orig/gfxdrivers/davinci/davinci_c64x.h DirectFB-1.5.3/gfxdrivers/davinci/davinci_c64x.h
---- DirectFB-1.5.3_orig/gfxdrivers/davinci/davinci_c64x.h      1969-12-31 19:00:00.000000000 -0500
-+++ DirectFB-1.5.3/gfxdrivers/davinci/davinci_c64x.h   2012-05-09 02:20:38.342006623 -0400
+From: Sebastian Ramacher <sramacher@debian.org>
+Date: Thu, 16 Mar 2017 20:53:09 +0100
+Subject: Add missing files from upstream
+
+Closes: #598976
+---
+ gfxdrivers/davinci/davinci_c64x.h      | 935 +++++++++++++++++++++++++++++++++
+ gfxdrivers/davinci/davinci_gfxdriver.h | 169 ++++++
+ gfxdrivers/davinci/davincifb.h         | 581 ++++++++++++++++++++
+ 3 files changed, 1685 insertions(+)
+ create mode 100644 gfxdrivers/davinci/davinci_c64x.h
+ create mode 100644 gfxdrivers/davinci/davinci_gfxdriver.h
+ create mode 100644 gfxdrivers/davinci/davincifb.h
+
+diff --git a/gfxdrivers/davinci/davinci_c64x.h b/gfxdrivers/davinci/davinci_c64x.h
+new file mode 100644
+index 0000000..682da22
+--- /dev/null
++++ b/gfxdrivers/davinci/davinci_c64x.h
 @@ -0,0 +1,935 @@
 +/*
 +   TI Davinci driver - C64X+ DSP Library
@@ -937,9 +953,186 @@ diff -urNp DirectFB-1.5.3_orig/gfxdrivers/davinci/davinci_c64x.h DirectFB-1.5.3/
 +
 +#endif
 +
-diff -urNp DirectFB-1.5.3_orig/gfxdrivers/davinci/davincifb.h DirectFB-1.5.3/gfxdrivers/davinci/davincifb.h
---- DirectFB-1.5.3_orig/gfxdrivers/davinci/davincifb.h 1969-12-31 19:00:00.000000000 -0500
-+++ DirectFB-1.5.3/gfxdrivers/davinci/davincifb.h      2012-05-09 02:20:07.271230380 -0400
+diff --git a/gfxdrivers/davinci/davinci_gfxdriver.h b/gfxdrivers/davinci/davinci_gfxdriver.h
+new file mode 100644
+index 0000000..4ca79b3
+--- /dev/null
++++ b/gfxdrivers/davinci/davinci_gfxdriver.h
+@@ -0,0 +1,169 @@
++/*
++   TI Davinci driver - Graphics Driver
++
++   (c) Copyright 2007  Telio AG
++
++   Written by Denis Oliver Kropp <dok@directfb.org>
++
++   Code is derived from VMWare driver.
++
++   (c) Copyright 2001-2009  The world wide DirectFB Open Source Community (directfb.org)
++   (c) Copyright 2000-2004  Convergence (integrated media) GmbH
++
++   All rights reserved.
++
++   This library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2 of the License, or (at your option) any later version.
++
++   This library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with this library; if not, write to the
++   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++   Boston, MA 02111-1307, USA.
++*/
++
++#ifndef __DAVINCI_GFXDRIVER_H__
++#define __DAVINCI_GFXDRIVER_H__
++
++#include <sys/ioctl.h>
++#include <davincifb.h>
++
++#include <core/surface_buffer.h>
++
++#include "davincifb.h"
++
++#include "davinci_c64x.h"
++
++
++typedef struct {
++     /* validation flags */
++     int                       v_flags;
++
++     /* cached/computed values */
++     void                     *dst_addr;
++     unsigned long             dst_phys;
++     unsigned int              dst_size;
++     unsigned long             dst_pitch;
++     DFBSurfacePixelFormat     dst_format;
++     unsigned long             dst_bpp;
++
++     void                     *src_addr;
++     unsigned long             src_phys;
++     unsigned long             src_pitch;
++     DFBSurfacePixelFormat     src_format;
++     unsigned long             src_bpp;
++
++     unsigned long             source_mult;
++
++     unsigned long             fillcolor;
++
++     int                       blit_blend_sub_function;
++     int                       draw_blend_sub_function;
++
++     DFBColor                  color;
++     unsigned long             color_argb;
++     unsigned long             colorkey;
++
++     DFBSurfaceBlittingFlags   blitting_flags;
++
++     DFBRegion                 clip;
++
++     /** Add shared data here... **/
++     struct fb_fix_screeninfo  fix[4];
++
++     CoreSurfacePool          *osd_pool;
++     CoreSurfacePool          *video_pool;
++
++     bool                      synced;
++} DavinciDeviceData;
++
++
++typedef struct {
++     int                       num;
++     int                       fd;
++     void                     *mem;
++     int                       size;
++} DavinciFB;
++
++typedef struct {
++     DavinciDeviceData        *ddev;
++
++     CoreDFB                  *core;
++
++     CoreScreen               *screen;
++     CoreLayer                *osd;
++     CoreLayer                *video;
++
++     DavinciFB                 fb[4];
++
++     DavinciC64x               c64x;
++     bool                      c64x_present;
++
++     DavinciC64xTasks          tasks;
++} DavinciDriverData;
++
++
++static inline DFBResult
++davincifb_pan_display( const DavinciFB             *fb,
++                       struct fb_var_screeninfo    *var,
++                       const CoreSurfaceBufferLock *lock,
++                       DFBSurfaceFlipFlags          flags,
++                       int                          x,
++                       int                          y )
++{
++     int ret;
++
++     if (lock) {
++#ifdef FBIO_SET_START
++          CoreSurfaceBuffer   *buffer = lock->buffer;
++          struct fb_set_start  set_start;
++
++          /* physical mode */
++          set_start.offset   = -1;
++          set_start.sync     = (flags & DSFLIP_ONSYNC) ? 1 : 0;
++
++          /* life's so easy */
++          set_start.physical = lock->phys + DFB_BYTES_PER_LINE( buffer->format, x ) + y * lock->pitch;
++
++          ret = ioctl( fb->fd, FBIO_SET_START, &set_start );
++          if (ret < 0)
++               D_DEBUG( "FBIO_SET_START (0x%08lx, sync %llu) failed!\n",
++                         set_start.physical, set_start.sync );
++
++          if (ret == 0) {
++               if (flags & DSFLIP_WAIT)
++                    ioctl( fb->fd, FBIO_WAITFORVSYNC );
++
++               return DFB_OK;
++          }
++
++          /* fallback */
++#endif
++          var->xoffset = x;                  /* poor version */
++          var->yoffset = y + lock->offset / lock->pitch;
++     }
++     else {
++          var->xoffset = x;
++          var->yoffset = y;
++     }
++
++     var->activate = /*(flags & DSFLIP_ONSYNC) ? FB_ACTIVATE_VBL :*/ FB_ACTIVATE_NOW;
++
++     ret = ioctl( fb->fd, FBIOPAN_DISPLAY, var );
++     if (ret)
++          D_PERROR( "Davinci/FB: FBIOPAN_DISPLAY (fb%d - %d,%d) failed!\n",
++                    fb->num, var->xoffset, var->yoffset );
++
++     if (flags & DSFLIP_WAIT)
++          ioctl( fb->fd, FBIO_WAITFORVSYNC );
++
++     return DFB_OK;
++}
++
++#endif
+diff --git a/gfxdrivers/davinci/davincifb.h b/gfxdrivers/davinci/davincifb.h
+new file mode 100644
+index 0000000..35eb169
+--- /dev/null
++++ b/gfxdrivers/davinci/davincifb.h
 @@ -0,0 +1,581 @@
 +/* 
 + * Copyright (C) 2006 Texas Instruments Inc
@@ -1522,176 +1715,3 @@ diff -urNp DirectFB-1.5.3_orig/gfxdrivers/davinci/davincifb.h DirectFB-1.5.3/gfx
 +#endif                                /*__KERNEL__*/
 +
 +#endif                                /* End of #ifndef DAVINCI_VPBE_H */
-diff -urNp DirectFB-1.5.3_orig/gfxdrivers/davinci/davinci_gfxdriver.h DirectFB-1.5.3/gfxdrivers/davinci/davinci_gfxdriver.h
---- DirectFB-1.5.3_orig/gfxdrivers/davinci/davinci_gfxdriver.h 1969-12-31 19:00:00.000000000 -0500
-+++ DirectFB-1.5.3/gfxdrivers/davinci/davinci_gfxdriver.h      2012-05-09 02:19:40.797421031 -0400
-@@ -0,0 +1,169 @@
-+/*
-+   TI Davinci driver - Graphics Driver
-+
-+   (c) Copyright 2007  Telio AG
-+
-+   Written by Denis Oliver Kropp <dok@directfb.org>
-+
-+   Code is derived from VMWare driver.
-+
-+   (c) Copyright 2001-2009  The world wide DirectFB Open Source Community (directfb.org)
-+   (c) Copyright 2000-2004  Convergence (integrated media) GmbH
-+
-+   All rights reserved.
-+
-+   This library is free software; you can redistribute it and/or
-+   modify it under the terms of the GNU Lesser General Public
-+   License as published by the Free Software Foundation; either
-+   version 2 of the License, or (at your option) any later version.
-+
-+   This library is distributed in the hope that it will be useful,
-+   but WITHOUT ANY WARRANTY; without even the implied warranty of
-+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+   Lesser General Public License for more details.
-+
-+   You should have received a copy of the GNU Lesser General Public
-+   License along with this library; if not, write to the
-+   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+   Boston, MA 02111-1307, USA.
-+*/
-+
-+#ifndef __DAVINCI_GFXDRIVER_H__
-+#define __DAVINCI_GFXDRIVER_H__
-+
-+#include <sys/ioctl.h>
-+#include <davincifb.h>
-+
-+#include <core/surface_buffer.h>
-+
-+#include "davincifb.h"
-+
-+#include "davinci_c64x.h"
-+
-+
-+typedef struct {
-+     /* validation flags */
-+     int                       v_flags;
-+
-+     /* cached/computed values */
-+     void                     *dst_addr;
-+     unsigned long             dst_phys;
-+     unsigned int              dst_size;
-+     unsigned long             dst_pitch;
-+     DFBSurfacePixelFormat     dst_format;
-+     unsigned long             dst_bpp;
-+
-+     void                     *src_addr;
-+     unsigned long             src_phys;
-+     unsigned long             src_pitch;
-+     DFBSurfacePixelFormat     src_format;
-+     unsigned long             src_bpp;
-+
-+     unsigned long             source_mult;
-+
-+     unsigned long             fillcolor;
-+
-+     int                       blit_blend_sub_function;
-+     int                       draw_blend_sub_function;
-+
-+     DFBColor                  color;
-+     unsigned long             color_argb;
-+     unsigned long             colorkey;
-+
-+     DFBSurfaceBlittingFlags   blitting_flags;
-+
-+     DFBRegion                 clip;
-+
-+     /** Add shared data here... **/
-+     struct fb_fix_screeninfo  fix[4];
-+
-+     CoreSurfacePool          *osd_pool;
-+     CoreSurfacePool          *video_pool;
-+
-+     bool                      synced;
-+} DavinciDeviceData;
-+
-+
-+typedef struct {
-+     int                       num;
-+     int                       fd;
-+     void                     *mem;
-+     int                       size;
-+} DavinciFB;
-+
-+typedef struct {
-+     DavinciDeviceData        *ddev;
-+
-+     CoreDFB                  *core;
-+
-+     CoreScreen               *screen;
-+     CoreLayer                *osd;
-+     CoreLayer                *video;
-+
-+     DavinciFB                 fb[4];
-+
-+     DavinciC64x               c64x;
-+     bool                      c64x_present;
-+
-+     DavinciC64xTasks          tasks;
-+} DavinciDriverData;
-+
-+
-+static inline DFBResult
-+davincifb_pan_display( const DavinciFB             *fb,
-+                       struct fb_var_screeninfo    *var,
-+                       const CoreSurfaceBufferLock *lock,
-+                       DFBSurfaceFlipFlags          flags,
-+                       int                          x,
-+                       int                          y )
-+{
-+     int ret;
-+
-+     if (lock) {
-+#ifdef FBIO_SET_START
-+          CoreSurfaceBuffer   *buffer = lock->buffer;
-+          struct fb_set_start  set_start;
-+
-+          /* physical mode */
-+          set_start.offset   = -1;
-+          set_start.sync     = (flags & DSFLIP_ONSYNC) ? 1 : 0;
-+
-+          /* life's so easy */
-+          set_start.physical = lock->phys + DFB_BYTES_PER_LINE( buffer->format, x ) + y * lock->pitch;
-+
-+          ret = ioctl( fb->fd, FBIO_SET_START, &set_start );
-+          if (ret < 0)
-+               D_DEBUG( "FBIO_SET_START (0x%08lx, sync %llu) failed!\n",
-+                         set_start.physical, set_start.sync );
-+
-+          if (ret == 0) {
-+               if (flags & DSFLIP_WAIT)
-+                    ioctl( fb->fd, FBIO_WAITFORVSYNC );
-+
-+               return DFB_OK;
-+          }
-+
-+          /* fallback */
-+#endif
-+          var->xoffset = x;                  /* poor version */
-+          var->yoffset = y + lock->offset / lock->pitch;
-+     }
-+     else {
-+          var->xoffset = x;
-+          var->yoffset = y;
-+     }
-+
-+     var->activate = /*(flags & DSFLIP_ONSYNC) ? FB_ACTIVATE_VBL :*/ FB_ACTIVATE_NOW;
-+
-+     ret = ioctl( fb->fd, FBIOPAN_DISPLAY, var );
-+     if (ret)
-+          D_PERROR( "Davinci/FB: FBIOPAN_DISPLAY (fb%d - %d,%d) failed!\n",
-+                    fb->num, var->xoffset, var->yoffset );
-+
-+     if (flags & DSFLIP_WAIT)
-+          ioctl( fb->fd, FBIO_WAITFORVSYNC );
-+
-+     return DFB_OK;
-+}
-+
-+#endif
diff --git a/src/patches/DirectFB-1.7.7-fix_mknod.patch b/src/patches/DirectFB-1.7.7-fix_mknod.patch
new file mode 100644 (file)
index 0000000..12ac2ca
--- /dev/null
@@ -0,0 +1,22 @@
+From: Debian Multimedia Maintainers
+ <pkg-multimedia-maintainers@lists.alioth.debian.org>
+Date: Thu, 16 Mar 2017 20:48:20 +0100
+Subject: _fix_mknod
+
+---
+ gfxdrivers/davinci/davinci_c64x.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/gfxdrivers/davinci/davinci_c64x.c b/gfxdrivers/davinci/davinci_c64x.c
+index 431ffdd..420b567 100644
+--- a/gfxdrivers/davinci/davinci_c64x.c
++++ b/gfxdrivers/davinci/davinci_c64x.c
+@@ -37,6 +37,8 @@
+ #include <sys/ioctl.h>
+ #include <sys/mman.h>
+ #include <sys/types.h>
++#include <sys/stat.h>
++#include <sys/sysmacros.h>
+ #include <unistd.h>
+ #include <directfb_util.h>
diff --git a/src/patches/directfb-1.1.1-fix-mknod.patch b/src/patches/directfb-1.1.1-fix-mknod.patch
deleted file mode 100644 (file)
index 97633e2..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Description: directfb ftbfs on armel. Implicit declaration error
- Fix for ARM builds failing on:
-  ../../../gfxdrivers/davinci/davinci_c64x.c: In function 'davinci_c64x_open':
-  ../../../gfxdrivers/davinci/davinci_c64x.c:1900:6: error: implicit declaration of function 'mknod' [-Werror=implicit-function-declaration]
-  cc1: some warnings being treated as errors
- .
- directfb (1.2.10.0-4.3) unstable; urgency=low
- .
-   * Non-maintainer upload.
-   * Fix "directfb ftbfs on armel. Implicit declaration error"
-     - Thanks Peter Green for bug report and patch (Closes: #644782)
-   * Remove m4 macros when calling clean target
-Author: Hector Oron <zumbi@debian.org>
-Bug-Debian: http://bugs.debian.org/644782
-
---- directfb-1.2.10.0.orig/gfxdrivers/davinci/davinci_c64x.c
-+++ directfb-1.2.10.0/gfxdrivers/davinci/davinci_c64x.c
-@@ -37,6 +37,8 @@
- #include <sys/ioctl.h>
- #include <sys/mman.h>
- #include <sys/types.h>
-+#include <sys/stat.h>
-+
- #include <unistd.h>
- #include <directfb_util.h>