From b2d01a81aa6f6a17c7e9822f7885ccc905b3d342 Mon Sep 17 00:00:00 2001 From: Fabio Berton Date: Mon, 12 Sep 2016 14:02:43 -0300 Subject: [PATCH] u-boot-variscite: Update revision from 2013.10 to 2015.04 - Change to branch imx_v2015.04_4.1.15_1.1.0_ga_var01 and revision d4b69fe8l - Drop all 2013.10 related patches - Add patch to fix the compile issue under gcc6 Change-Id: I390b57d803233d185707a4b99da40114ac8fd339 Signed-off-by: Fabio Berton Signed-off-by: Otavio Salvador --- .../0002-ARM-asm-io.h-use-static-inline.patch | 74 ------------------- .../0003-gcc5-no-unalligned-access.patch | 19 ----- ...5-use_gcc_inline_version_instead_c99.patch | 57 -------------- .../Fix-the-compile-issue-under-gcc6.patch} | 38 +++++----- .../u-boot/u-boot-variscite_2013.10.bb | 25 ------- .../u-boot/u-boot-variscite_2015.04.bb | 22 ++++++ 6 files changed, 40 insertions(+), 195 deletions(-) delete mode 100644 recipes-bsp/u-boot/u-boot-variscite-2013.10/0002-ARM-asm-io.h-use-static-inline.patch delete mode 100644 recipes-bsp/u-boot/u-boot-variscite-2013.10/0003-gcc5-no-unalligned-access.patch delete mode 100644 recipes-bsp/u-boot/u-boot-variscite-2013.10/u-boot-002-gcc5-use_gcc_inline_version_instead_c99.patch rename recipes-bsp/u-boot/{u-boot-variscite-2013.10/0001-Add-linux-compiler-gcc5.h-to-fix-builds-with-gcc5.patch => u-boot-variscite-2015.04/Fix-the-compile-issue-under-gcc6.patch} (74%) delete mode 100644 recipes-bsp/u-boot/u-boot-variscite_2013.10.bb create mode 100644 recipes-bsp/u-boot/u-boot-variscite_2015.04.bb diff --git a/recipes-bsp/u-boot/u-boot-variscite-2013.10/0002-ARM-asm-io.h-use-static-inline.patch b/recipes-bsp/u-boot/u-boot-variscite-2013.10/0002-ARM-asm-io.h-use-static-inline.patch deleted file mode 100644 index 2a0c199..0000000 --- a/recipes-bsp/u-boot/u-boot-variscite-2013.10/0002-ARM-asm-io.h-use-static-inline.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 0104a0612ede002a03b1d6349a38ec575e76d186 Mon Sep 17 00:00:00 2001 -From: Jeroen Hofstee -Date: Sun, 22 Jun 2014 23:10:39 +0200 -Subject: [PATCH 2/2] ARM:asm:io.h use static inline -Organization: O.S. Systems Software LTDA. - -When compiling u-boot with W=1 the extern inline void for -read* is likely causing the most noise. gcc / clang will -warn there is never a actual declaration for these functions. -Instead of declaring these extern make them static inline so -it is actually declared. - -cc: Albert ARIBAUD -Signed-off-by: Jeroen Hofstee ---- - arch/arm/include/asm/io.h | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h -index 1fbc531..5f5f8d0 100644 ---- a/arch/arm/include/asm/io.h -+++ b/arch/arm/include/asm/io.h -@@ -75,42 +75,42 @@ static inline phys_addr_t virt_to_phys(void * vaddr) - #define __arch_putw(v,a) (*(volatile unsigned short *)(a) = (v)) - #define __arch_putl(v,a) (*(volatile unsigned int *)(a) = (v)) - --extern inline void __raw_writesb(unsigned int addr, const void *data, int bytelen) -+static inline void __raw_writesb(unsigned int addr, const void *data, int bytelen) - { - uint8_t *buf = (uint8_t *)data; - while(bytelen--) - __arch_putb(*buf++, addr); - } - --extern inline void __raw_writesw(unsigned int addr, const void *data, int wordlen) -+static inline void __raw_writesw(unsigned int addr, const void *data, int wordlen) - { - uint16_t *buf = (uint16_t *)data; - while(wordlen--) - __arch_putw(*buf++, addr); - } - --extern inline void __raw_writesl(unsigned int addr, const void *data, int longlen) -+static inline void __raw_writesl(unsigned int addr, const void *data, int longlen) - { - uint32_t *buf = (uint32_t *)data; - while(longlen--) - __arch_putl(*buf++, addr); - } - --extern inline void __raw_readsb(unsigned int addr, void *data, int bytelen) -+static inline void __raw_readsb(unsigned int addr, void *data, int bytelen) - { - uint8_t *buf = (uint8_t *)data; - while(bytelen--) - *buf++ = __arch_getb(addr); - } - --extern inline void __raw_readsw(unsigned int addr, void *data, int wordlen) -+static inline void __raw_readsw(unsigned int addr, void *data, int wordlen) - { - uint16_t *buf = (uint16_t *)data; - while(wordlen--) - *buf++ = __arch_getw(addr); - } - --extern inline void __raw_readsl(unsigned int addr, void *data, int longlen) -+static inline void __raw_readsl(unsigned int addr, void *data, int longlen) - { - uint32_t *buf = (uint32_t *)data; - while(longlen--) --- -2.7.0 - diff --git a/recipes-bsp/u-boot/u-boot-variscite-2013.10/0003-gcc5-no-unalligned-access.patch b/recipes-bsp/u-boot/u-boot-variscite-2013.10/0003-gcc5-no-unalligned-access.patch deleted file mode 100644 index dfec5a8..0000000 --- a/recipes-bsp/u-boot/u-boot-variscite-2013.10/0003-gcc5-no-unalligned-access.patch +++ /dev/null @@ -1,19 +0,0 @@ -from https://raw.githubusercontent.com/schnitzeltony/meta-gumstix-community/master/recipes-bsp/u-boot/u-boot-overo/0013-arm-Switch-to-mno-unaligned-access-when-supported-by.patch - ---- a/arch/arm/cpu/armv7/config.mk 2015-11-22 20:44:42.744557427 +0100 -+++ b/arch/arm/cpu/armv7/config.mk 2015-11-22 20:45:26.381024395 +0100 -@@ -18,9 +18,12 @@ PLATFORM_CPPFLAGS += $(PF_CPPFLAGS_ARMV7 - PF_RELFLAGS_SLB_AT := $(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) - PLATFORM_RELFLAGS += $(PF_RELFLAGS_SLB_AT) - --# SEE README.arm-unaligned-accesses -+# On supported platforms we set the bit which causes us to trap on unaligned -+# memory access. This is the opposite of what the compiler expects to be -+# the default so we must pass in -mno-unaligned-access so that it is aware -+# of our decision. - PF_NO_UNALIGNED := $(call cc-option, -mno-unaligned-access,) --PLATFORM_NO_UNALIGNED := $(PF_NO_UNALIGNED) -+PLATFORM_CPPFLAGS += $(PF_NO_UNALIGNED) - - ifneq ($(CONFIG_IMX_CONFIG),) - ifdef CONFIG_SPL diff --git a/recipes-bsp/u-boot/u-boot-variscite-2013.10/u-boot-002-gcc5-use_gcc_inline_version_instead_c99.patch b/recipes-bsp/u-boot/u-boot-variscite-2013.10/u-boot-002-gcc5-use_gcc_inline_version_instead_c99.patch deleted file mode 100644 index d8dd6d2..0000000 --- a/recipes-bsp/u-boot/u-boot-variscite-2013.10/u-boot-002-gcc5-use_gcc_inline_version_instead_c99.patch +++ /dev/null @@ -1,57 +0,0 @@ -[RFC 08/10] inline: use the gcc inline version instead of the c99 one. - -Jeroen Hofstee jeroen at myspectrum.nl -Sat May 31 22:32:22 CEST 2014 -Previous message: [U-Boot] [RFC 07/10] ARM: make gd a function a function for clang -Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] ---- -This fixes errors like: - -make[1]: Entering directory `/home/jeroen/software/u-boot/arch/arm/cpu/armv7/omap-common' -arm-linux-gnueabi-ld.bfd -r -o libomap-common.o reset.o timer.o utils.o -timer.o: In function `get_tbclk': -/home/jeroen/software/u-boot/include/asm/io.h:81: multiple definition of `__raw_writesb' -reset.o:/home/jeroen/software/u-boot/include/asm/io.h:81: first defined here -timer.o: In function `__udelay': -/home/jeroen/software/u-boot/include/asm/io.h:88: multiple definition of `__raw_writesw' -reset.o:/home/jeroen/software/u-boot/include/asm/io.h:88: first defined here -timer.o: In function `get_ticks': -/home/jeroen/software/u-boot/include/asm/io.h:95: multiple definition of `__raw_writesl' -reset.o:/home/jeroen/software/u-boot/include/asm/io.h:95: first defined here -timer.o: In function `__raw_readsb': -/home/jeroen/software/u-boot/include/asm/io.h:102: multiple definition of `__raw_readsb' -reset.o:/home/jeroen/software/u-boot/include/asm/io.h:102: first defined here -timer.o: In function `__raw_readsw': -/home/jeroen/software/u-boot/include/asm/io.h:109: multiple definition of `__raw_readsw' -reset.o:/home/jeroen/software/u-boot/include/asm/io.h:109: first defined here -timer.o: In function `__raw_readsl': -/home/jeroen/software/u-boot/include/asm/io.h:116: multiple definition of `__raw_readsl' -reset.o:/home/jeroen/software/u-boot/include/asm/io.h:116: first defined here -make[1]: *** [libomap-common.o] Error 1 -make[1]: Leaving directory `/home/jeroen/software/u-boot/arch/arm/cpu/armv7/omap-common' -make: *** [arch/arm/cpu/armv7/omap-common/libomap-common.o] Error 2 ---- - include/linux/compiler-gcc.h | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h -index 9896e54..99c6dcc 100644 ---- a/include/linux/compiler-gcc.h -+++ b/include/linux/compiler-gcc.h -@@ -44,9 +44,10 @@ - */ - #if !defined(CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING) || \ - !defined(CONFIG_OPTIMIZE_INLINING) || (__GNUC__ < 4) --# define inline inline __attribute__((always_inline)) --# define __inline__ __inline__ __attribute__((always_inline)) --# define __inline __inline __attribute__((always_inline)) -+/* XXX: check __GNUC_STDC_INLINE__, fix line length */ -+# define inline inline __attribute__((always_inline)) __attribute__((__gnu_inline__)) -+# define __inline__ __inline__ __attribute__((always_inline)) __attribute__((__gnu_inline__)) -+# define __inline __inline __attribute__((always_inline)) __attribute__((__gnu_inline__)) - #endif - - #define __deprecated __attribute__((deprecated)) --- -1.8.3.2 - diff --git a/recipes-bsp/u-boot/u-boot-variscite-2013.10/0001-Add-linux-compiler-gcc5.h-to-fix-builds-with-gcc5.patch b/recipes-bsp/u-boot/u-boot-variscite-2015.04/Fix-the-compile-issue-under-gcc6.patch similarity index 74% rename from recipes-bsp/u-boot/u-boot-variscite-2013.10/0001-Add-linux-compiler-gcc5.h-to-fix-builds-with-gcc5.patch rename to recipes-bsp/u-boot/u-boot-variscite-2015.04/Fix-the-compile-issue-under-gcc6.patch index c5fc731..3d080b6 100644 --- a/recipes-bsp/u-boot/u-boot-variscite-2013.10/0001-Add-linux-compiler-gcc5.h-to-fix-builds-with-gcc5.patch +++ b/recipes-bsp/u-boot/u-boot-variscite-2015.04/Fix-the-compile-issue-under-gcc6.patch @@ -1,29 +1,26 @@ -From 9012ad08ed7615cf0afaf8fab631239c0f148889 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Sat, 7 Feb 2015 22:52:40 +0100 -Subject: [PATCH 1/2] Add linux/compiler-gcc5.h to fix builds with gcc5 -Organization: O.S. Systems Software LTDA. +From 5d39bd421fc093e2c852316080538cef85a9e1a0 Mon Sep 17 00:00:00 2001 +From: yocto +Date: Thu, 2 Jun 2016 00:18:33 -0500 +Subject: [PATCH] Fix the compile issue under gcc6 -Add linux/compiler-gcc5/h from the kernel sources at: +Fix the following build error: +| .../include/linux/compiler-gcc.h:106:30: fatal error: linux/compiler-gcc6.h: No such file or directory +| #include gcc_header(__GNUC__) -commit 5631b8fba640a4ab2f8a954f63a603fa34eda96b -Author: Steven Noonan -Date: Sat Oct 25 15:09:42 2014 -0700 +Signed-off-by: Zhenhua Luo - compiler/gcc4+: Remove inaccurate comment about 'asm goto' miscompiles - -Signed-off-by: Hans de Goede +Upstream-Status: Pending --- - include/linux/compiler-gcc5.h | 65 +++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 65 insertions(+) - create mode 100644 include/linux/compiler-gcc5.h + include/linux/compiler-gcc6.h | 66 +++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 66 insertions(+) + create mode 100644 include/linux/compiler-gcc6.h -diff --git a/include/linux/compiler-gcc5.h b/include/linux/compiler-gcc5.h +diff --git a/include/linux/compiler-gcc6.h b/include/linux/compiler-gcc6.h new file mode 100644 -index 0000000..c8c5659 +index 0000000..cdd1cc2 --- /dev/null -+++ b/include/linux/compiler-gcc5.h -@@ -0,0 +1,65 @@ ++++ b/include/linux/compiler-gcc6.h +@@ -0,0 +1,66 @@ +#ifndef __LINUX_COMPILER_H +#error "Please don't include directly, include instead." +#endif @@ -79,6 +76,7 @@ index 0000000..c8c5659 + * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670 + * + * Work it around via a compiler barrier quirk suggested by Jakub Jelinek. ++ * Fixed in GCC 4.8.2 and later versions. + * + * (asm goto is automatically volatile - the naming reflects this.) + */ @@ -90,5 +88,5 @@ index 0000000..c8c5659 +#define __HAVE_BUILTIN_BSWAP16__ +#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */ -- -2.7.0 +2.5.0 diff --git a/recipes-bsp/u-boot/u-boot-variscite_2013.10.bb b/recipes-bsp/u-boot/u-boot-variscite_2013.10.bb deleted file mode 100644 index dfbbdbb..0000000 --- a/recipes-bsp/u-boot/u-boot-variscite_2013.10.bb +++ /dev/null @@ -1,25 +0,0 @@ -require recipes-bsp/u-boot/u-boot.inc - -SUMMARY = "U-Boot for Variscite i.MX6Q/DL VAR-SOM-MX6" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://Licenses/README;md5=025bf9f768cbcb1a165dbe1a110babfb" -COMPATIBLE_MACHINE = "(mxs|mx6)" - -PROVIDES += "u-boot" - -SPL_BINARY = "SPL" - -SRCREV = "a2bb081c08f8e18cee3ffbf577adb9bdb7d5a6f9" -SRCBRANCH = "imx_v2013.10_var4" - -SRC_URI = "\ - git://github.com/varigit/uboot-imx.git;protocol=git;branch=${SRCBRANCH} \ - file://u-boot-002-gcc5-use_gcc_inline_version_instead_c99.patch \ - file://0001-Add-linux-compiler-gcc5.h-to-fix-builds-with-gcc5.patch \ - file://0002-ARM-asm-io.h-use-static-inline.patch \ - file://0003-gcc5-no-unalligned-access.patch \ -" - -S = "${WORKDIR}/git" - -PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/recipes-bsp/u-boot/u-boot-variscite_2015.04.bb b/recipes-bsp/u-boot/u-boot-variscite_2015.04.bb new file mode 100644 index 0000000..9dbd58a --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-variscite_2015.04.bb @@ -0,0 +1,22 @@ +require recipes-bsp/u-boot/u-boot.inc + +SUMMARY = "U-Boot for Variscite i.MX6Q/DL VAR-SOM-MX6" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://Licenses/README;md5=c7383a594871c03da76b3707929d2919" +COMPATIBLE_MACHINE = "(mxs|mx6)" + +PROVIDES += "u-boot" + +SPL_BINARY = "SPL" + +SRCREV = "d4b69fe88b20223acf36e4c36ea464cd5a866ab2" +SRCBRANCH = "imx_v2015.04_4.1.15_1.1.0_ga_var01" + +SRC_URI = "\ + git://github.com/varigit/uboot-imx.git;protocol=git;branch=${SRCBRANCH} \ + file://Fix-the-compile-issue-under-gcc6.patch \ +" + +S = "${WORKDIR}/git" + +PACKAGE_ARCH = "${MACHINE_ARCH}"