diff options
Diffstat (limited to 'yocto-poky/meta/recipes-graphics/xorg-lib/pixman')
4 files changed, 0 insertions, 260 deletions
diff --git a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch b/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch deleted file mode 100644 index 4569dca01..000000000 --- a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch +++ /dev/null @@ -1,144 +0,0 @@ -From a0f53e1dbb3851bb0f0efcfdbd565b05e4be9cac Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com> -Date: Thu, 23 Aug 2012 18:10:57 +0200 -Subject: [PATCH 1/2] ARM: qemu related workarounds in cpu features detection - code -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This was ported from meta-oe's patch [1]. The original pixman patch is found -at [2]. - -[1] http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-graphics/xorg-lib/pixman-0.26.2/0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch -[2] http://lists.freedesktop.org/archives/pixman/2011-January/000906.html - -Upstream-Status: Inappropriate [other] qemu fix - -Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> ---- - pixman/pixman-arm.c | 82 ++++++++++++++++++++++++++++++++++++++++---------- - 1 files changed, 65 insertions(+), 17 deletions(-) - -diff --git a/pixman/pixman-arm.c b/pixman/pixman-arm.c -index 23374e4..d98bda6 100644 ---- a/pixman/pixman-arm.c -+++ b/pixman/pixman-arm.c -@@ -129,16 +129,35 @@ detect_cpu_features (void) - #include <sys/types.h> - #include <sys/stat.h> - #include <sys/mman.h> -+#include <sys/utsname.h> - #include <fcntl.h> - #include <string.h> - #include <elf.h> - -+/* -+ * The whole CPU capabilities detection is a bit ugly: when running in -+ * userspace qemu, we see /proc/self/auxv from the host system. To make -+ * everything even worse, the size of each value is 64-bit when running -+ * on a 64-bit host system. So the data is totally bogus because we expect -+ * 32-bit values. As AT_PLATFORM value is used as a pointer, it may cause -+ * segfault (null pointer dereference on x86-64 host). So in order to be -+ * on a safe side, we require that AT_PLATFORM value is found only once, -+ * and it has non-zero value (this is still not totally reliable for a big -+ * endian 64-bit host system running qemu and may theoretically fail). -+ */ -+#define ARM_HWCAP_VFP 64 -+#define ARM_HWCAP_IWMMXT 512 -+#define ARM_HWCAP_NEON 4096 -+ - static arm_cpu_features_t - detect_cpu_features (void) - { - arm_cpu_features_t features = 0; - Elf32_auxv_t aux; - int fd; -+ uint32_t hwcap = 0; -+ const char *plat = NULL; -+ int plat_cnt = 0; - - fd = open ("/proc/self/auxv", O_RDONLY); - if (fd >= 0) -@@ -147,32 +166,61 @@ detect_cpu_features (void) - { - if (aux.a_type == AT_HWCAP) - { -- uint32_t hwcap = aux.a_un.a_val; -- -- /* hardcode these values to avoid depending on specific -- * versions of the hwcap header, e.g. HWCAP_NEON -- */ -- if ((hwcap & 64) != 0) -- features |= ARM_VFP; -- if ((hwcap & 512) != 0) -- features |= ARM_IWMMXT; -- /* this flag is only present on kernel 2.6.29 */ -- if ((hwcap & 4096) != 0) -- features |= ARM_NEON; -+ hwcap = aux.a_un.a_val; - } - else if (aux.a_type == AT_PLATFORM) - { -- const char *plat = (const char*) aux.a_un.a_val; -- -- if (strncmp (plat, "v7l", 3) == 0) -+ plat = (const char*) aux.a_un.a_val; -+ plat_cnt++; -+ } -+ } -+ close (fd); -+ if (plat == NULL || plat_cnt != 1 || *plat != 'v') -+ { -+ /* -+ * Something seems to be really wrong, most likely we are -+ * running under qemu. Let's use machine type from "uname" for -+ * CPU capabilities detection: -+ * http://www.mail-archive.com/qemu-devel at nongnu.org/msg22212.html -+ */ -+ struct utsname u; -+ hwcap = 0; /* clear hwcap, because it is bogus */ -+ if (uname (&u) == 0) -+ { -+ if (strcmp (u.machine, "armv7l") == 0) -+ { - features |= (ARM_V7 | ARM_V6); -- else if (strncmp (plat, "v6l", 3) == 0) -+ hwcap |= ARM_HWCAP_VFP; /* qemu is supposed to emulate vfp */ -+ hwcap |= ARM_HWCAP_NEON; /* qemu is supposed to emulate neon */ -+ } -+ else if (strcmp (u.machine, "armv6l") == 0) -+ { - features |= ARM_V6; -+ hwcap |= ARM_HWCAP_VFP; /* qemu is supposed to emulate vfp */ -+ } - } - } -- close (fd); -+ else if (strncmp (plat, "v7l", 3) == 0) -+ { -+ features |= (ARM_V7 | ARM_V6); -+ } -+ else if (strncmp (plat, "v6l", 3) == 0) -+ { -+ features |= ARM_V6; -+ } - } - -+ /* hardcode these values to avoid depending on specific -+ * versions of the hwcap header, e.g. HWCAP_NEON -+ */ -+ if ((hwcap & ARM_HWCAP_VFP) != 0) -+ features |= ARM_VFP; -+ if ((hwcap & ARM_HWCAP_IWMMXT) != 0) -+ features |= ARM_IWMMXT; -+ /* this flag is only present on kernel 2.6.29 */ -+ if ((hwcap & ARM_HWCAP_NEON) != 0) -+ features |= ARM_NEON; -+ - return features; - } - --- -1.7.6.5 - diff --git a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch b/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch deleted file mode 100644 index 6b7c1e62a..000000000 --- a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch +++ /dev/null @@ -1,65 +0,0 @@ -From fcd5eb9bd0e8674a6f4987a8fce7dc1ba8f9320c Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> -Date: Thu, 17 Sep 2015 03:08:36 +0200 -Subject: [PATCH] [v3] test: add a check for FE_DIVBYZERO - -Some architectures, such as Microblaze and Nios2, currently do not -implement FE_DIVBYZERO, even though they have <fenv.h> and -feenableexcept(). This commit adds a configure.ac check to verify -whether FE_DIVBYZERO is defined or not, and if not, disables the -problematic code in test/utils.c. - -Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> -Signed-off-by: Marek Vasut <marex@denx.de> -Upstream-Status: Backport [commit 4297e9058] ---- -Changes v1 -> v2: - - * Use the ac_cv_have_decl_FE_DIVBYZERO variable, which is - automatically set by AC_CHECK_DECL, to decide whether or not - HAVE_FEDIVBYZERO should be defined. - -Changes v2 -> v3: - - * Use action-if-yes of AC_CHECK_DECL as suggested in - http://lists.freedesktop.org/archives/pixman/2014-February/003176.html ---- - configure.ac | 5 +++++ - test/utils.c | 2 ++ - 2 files changed, 7 insertions(+) - -diff --git a/configure.ac b/configure.ac -index f93cc30..424bfd3 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -891,6 +891,11 @@ if test x$have_feenableexcept = xyes; then - AC_DEFINE(HAVE_FEENABLEEXCEPT, 1, [Whether we have feenableexcept()]) - fi - -+AC_CHECK_DECL([FE_DIVBYZERO], -+ [AC_DEFINE(HAVE_FEDIVBYZERO, 1, [Whether we have FE_DIVBYZERO])], -+ [], -+ [[#include <fenv.h>]]) -+ - AC_CHECK_FUNC(gettimeofday, have_gettimeofday=yes, have_gettimeofday=no) - AC_CHECK_HEADER(sys/time.h, have_sys_time_h=yes, have_sys_time_h=no) - if test x$have_gettimeofday = xyes && test x$have_sys_time_h = xyes; then -diff --git a/test/utils.c b/test/utils.c -index 222d4d5..8657966 100644 ---- a/test/utils.c -+++ b/test/utils.c -@@ -966,9 +966,11 @@ enable_divbyzero_exceptions (void) - { - #ifdef HAVE_FENV_H - #ifdef HAVE_FEENABLEEXCEPT -+#ifdef HAVE_FEDIVBYZERO - feenableexcept (FE_DIVBYZERO); -+#endif - #endif - #endif - } - - void --- -2.1.4 - diff --git a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/asm_include.patch b/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/asm_include.patch deleted file mode 100644 index b52a5707d..000000000 --- a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/asm_include.patch +++ /dev/null @@ -1,29 +0,0 @@ -Fixes errors like - -Assembler messages: -Fatal error: can't create .libs/pixman-mips-dspr2-asm.o: No such file or directory - -it works with glibc because it uses gcc fixed-headers but thats not right. - -We move the include under C block - -Signed-off-by: Khem Raj <raj.khem@gmail.com> -Upstream-Status: Pending -Index: pixman-0.32.6/pixman/pixman-private.h -=================================================================== ---- pixman-0.32.6.orig/pixman/pixman-private.h -+++ pixman-0.32.6/pixman/pixman-private.h -@@ -1,4 +1,3 @@ --#include <float.h> - - #ifndef PIXMAN_PRIVATE_H - #define PIXMAN_PRIVATE_H -@@ -17,6 +16,8 @@ - - #ifndef __ASSEMBLER__ - -+#include <float.h> -+ - #ifndef PACKAGE - # error config.h must be included before pixman-private.h - #endif diff --git a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/mips-export-revert.patch b/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/mips-export-revert.patch deleted file mode 100644 index 14a5fd209..000000000 --- a/yocto-poky/meta/recipes-graphics/xorg-lib/pixman/mips-export-revert.patch +++ /dev/null @@ -1,22 +0,0 @@ -Revert a commit in pixman 0.32.6 which breaks compliation on MIPS machines with -errors such as: - -pixman-0.32.6/pixman/pixman-mips-dspr2-asm.S:4267: -Error: invalid operands `mflo $14,$ac3' - -Upstream-Status: Pending -Signed-off-by: Ross Burton <ross.burton@intel.com> - ---- b/pixman/pixman-mips-dspr2-asm.h -+++ a/pixman/pixman-mips-dspr2-asm.h -@@ -72,10 +72,7 @@ - #define LEAF_MIPS32R2(symbol) \ - .globl symbol; \ - .align 2; \ --#ifdef __ELF__ -- .hidden symbol; \ - .type symbol, @function; \ --#endif - .ent symbol, 0; \ - symbol: .frame sp, 0, ra; \ - .set push; \ |