]> rtime.felk.cvut.cz Git - coffee/buildroot.git/commitdiff
Merge branch 'next'
authorPeter Korsgaard <peter@korsgaard.com>
Thu, 1 Dec 2016 21:22:06 +0000 (22:22 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Thu, 1 Dec 2016 21:29:56 +0000 (22:29 +0100)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
239 files changed:
CHANGES
DEVELOPERS
Makefile
arch/Config.in.mips
board/armadeus/apf51/linux-4.4.config [moved from board/armadeus/apf51/linux-3.12.config with 93% similarity]
board/atmel/at91sam9260ek/linux-3.9.config [deleted file]
board/atmel/readme.txt
board/atmel/sama5d2_xplained_mmc/genimage.cfg
board/atmel/sama5d3_xplained_mmc/genimage.cfg
board/atmel/sama5d4_xplained_mmc/genimage.cfg
board/boundarydevices/common/6x_bootscript.txt
board/calao/qil-a9260/linux-3.4.7.config [deleted file]
board/calao/qil-a9260/patches/at91bootstrap/0001-qil-a9260.patch [deleted file]
board/calao/qil-a9260/patches/barebox/0001-qil-a9260.patch [deleted file]
board/calao/qil-a9260/patches/linux/0001-qil-a9260.patch [deleted file]
board/calao/tny-a9g20-lpw/at91bootstrap-1.16-tny-a9g20-lpw.patch [deleted file]
board/calao/tny-a9g20-lpw/linux-3.9.config [deleted file]
board/calao/usb-a9260/at91bootstrap-1.16-usb-a9260.patch [deleted file]
board/calao/usb-a9260/linux-3.7.4.config [deleted file]
board/calao/usb-a9263/at91bootstrap-1.16-usb-a9263.patch [deleted file]
board/calao/usb-a9263/linux-3.4.4.config [deleted file]
board/calao/usb-a9g20-lpw/linux-3.4.4.config [deleted file]
board/calao/usb-a9g20-lpw/patches/at91bootstrap/0001-usb-a9g20-lpw.patch [deleted file]
board/calao/usb-a9g20-lpw/patches/barebox/0001-usb-a9g20-lpw.patch [deleted file]
board/congatec/qmx6/readme.txt [deleted file]
board/freescale/imx31_3stack/linux.fragment [new file with mode: 0644]
board/freescale/p2020ds/linux-3.12.config [deleted file]
board/freescale/p2020ds/linux-fix-c6187597-breakage.patch [deleted file]
board/freescale/p2020ds/readme.txt [deleted file]
board/qemu/ppc-g3beige/readme.txt
board/roseapplepi/patches/linux/0002-kernel-add-support-for-gcc-5.patch [new file with mode: 0644]
board/roseapplepi/patches/linux/0003-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch [new file with mode: 0644]
board/roseapplepi/patches/linux/0004-Fix-compile-errors-with-gcc5.patch [new file with mode: 0644]
boot/boot-wrapper-aarch64/Config.in
boot/boot-wrapper-aarch64/boot-wrapper-aarch64.mk
boot/uboot/uboot.mk
configs/armadeus_apf28_defconfig
configs/armadeus_apf51_defconfig
configs/at91sam9260eknf_defconfig
configs/at91sam9g20dfc_defconfig
configs/at91sam9g45m10ek_defconfig
configs/at91sam9rlek_defconfig
configs/atmel_sama5d3xek_defconfig
configs/atmel_sama5d4ek_defconfig [deleted file]
configs/calao_qil_a9260_defconfig [deleted file]
configs/calao_tny_a9g20_lpw_defconfig [deleted file]
configs/calao_usb_a9260_defconfig [deleted file]
configs/calao_usb_a9263_defconfig [deleted file]
configs/calao_usb_a9g20_lpw_defconfig [deleted file]
configs/ci20_defconfig
configs/freescale_imx28evk_defconfig
configs/freescale_imx31_3stack_defconfig
configs/freescale_p2020ds_defconfig [deleted file]
configs/imx6ulpico_defconfig
configs/kb9202_defconfig [deleted file]
configs/mini2440_defconfig [deleted file]
configs/mx6udoo_defconfig
configs/nanopi_neo_defconfig
configs/olimex_a20_olinuxino_lime2_defconfig
configs/olimex_a20_olinuxino_lime_defconfig
configs/olimex_a20_olinuxino_lime_mali_defconfig
configs/qmx6_defconfig [deleted file]
configs/snps_aarch64_vdk_defconfig
configs/snps_axs101_defconfig
configs/snps_axs103_defconfig
docs/manual/adding-packages-directory.txt
docs/manual/customize-outside-br.txt
docs/website/download.html
docs/website/news.html
fs/common.mk
fs/ext2/ext2.mk
fs/ubifs/ubi.mk
linux/Config.in
package/assimp/Config.in
package/autossh/0001-honour-LDFLAGS.patch [new file with mode: 0644]
package/binutils/2.27/0100-elf32-arm-no-data-fix.patch [new file with mode: 0644]
package/binutils/2.27/0900-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch [new file with mode: 0644]
package/binutils/Config.in.host
package/binutils/arc-2016.09-rc1/0300-ld-makefile.patch [moved from package/binutils/arc-2016.09-eng015/0300-ld-makefile.patch with 100% similarity]
package/binutils/arc-2016.09-rc1/0301-check-ldrunpath-length.patch [moved from package/binutils/arc-2016.09-eng015/0301-check-ldrunpath-length.patch with 100% similarity]
package/binutils/arc-2016.09-rc1/0500-add-sysroot-fix-from-bug-3049.patch [moved from package/binutils/arc-2016.09-eng015/0500-add-sysroot-fix-from-bug-3049.patch with 100% similarity]
package/binutils/arc-2016.09-rc1/0600-poison-system-directories.patch [moved from package/binutils/arc-2016.09-eng015/0600-poison-system-directories.patch with 100% similarity]
package/binutils/binutils.hash
package/binutils/binutils.mk
package/bzip2/Config.in
package/ccache/ccache.hash
package/ccache/ccache.mk
package/chrony/chrony.mk
package/czmq/0001-configure.ac-remove-Werror.patch [new file with mode: 0644]
package/domoticz/Config.in
package/dosfstools/Config.in.host
package/dtv-scan-tables/dtv-scan-tables.mk
package/e2fsprogs/e2fsprogs.mk
package/efl/Config.in
package/efl/efl.mk
package/fakeroot/0001-hide-dlsym-error.patch [new file with mode: 0644]
package/fakeroot/fakeroot.hash [new file with mode: 0644]
package/fakeroot/fakeroot.mk [new file with mode: 0644]
package/ffmpeg/Config.in
package/gcc/4.8.5/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch [new file with mode: 0644]
package/gcc/4.9.4/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch [new file with mode: 0644]
package/gcc/5.4.0/875-xtensa-implement-trap-pattern.patch [new file with mode: 0644]
package/gcc/5.4.0/876-xtensa-Fix-PR-target-78603.patch [new file with mode: 0644]
package/gcc/5.4.0/911-ppc-musl-support.patch [new file with mode: 0644]
package/gcc/6.2.0/870-xtensa-Fix-PR-target-78118.patch [new file with mode: 0644]
package/gcc/6.2.0/871-xtensa-Fix-PR-target-78603.patch [new file with mode: 0644]
package/gcc/Config.in.host
package/gcc/arc-2016.09-rc1/301-missing-execinfo_h.patch [moved from package/gcc/arc-2016.09-eng015/301-missing-execinfo_h.patch with 100% similarity]
package/gcc/arc-2016.09-rc1/860-cilk-wchar.patch [moved from package/gcc/arc-2016.09-eng015/860-cilk-wchar.patch with 100% similarity]
package/gcc/arc-2016.09-rc1/940-uclinux-enable-threads.patch [moved from package/gcc/arc-2016.09-eng015/940-uclinux-enable-threads.patch with 100% similarity]
package/gcc/gcc.hash
package/gdb/Config.in.host
package/gdb/gdb.hash
package/gdb/gdb.mk
package/gnuchess/gnuchess.hash
package/gnuchess/gnuchess.mk
package/gnuradio/Config.in
package/gnuradio/gnuradio.mk
package/go/Config.in.host
package/gpsd/gpsd.mk
package/guile/guile.mk
package/imagemagick/imagemagick.hash
package/imagemagick/imagemagick.mk
package/jamvm/0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch [moved from package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch with 50% similarity]
package/jamvm/jamvm.mk
package/jasper/0001-fix-CVE-2014-9029.patch [deleted file]
package/jasper/0002-fix-CVE-2014-8138.patch [deleted file]
package/jasper/0003-fix-CVE-2014-8137-1.patch [deleted file]
package/jasper/0004-fix-CVE-2014-8137-2.patch [deleted file]
package/jasper/0005-fix-CVE-2014-8157.patch [deleted file]
package/jasper/0006-fix-CVE-2014-8158.patch [deleted file]
package/jasper/0007-preserve-cflags.patch [deleted file]
package/jasper/0008-fix-CVE-2016-2116.patch [deleted file]
package/jasper/0009-fix-CVE-2016-1577.patch [deleted file]
package/jasper/0010-fix-CVE-2016-1867.patch [deleted file]
package/jasper/0011-fix-CVE-2015-5221.patch [deleted file]
package/jasper/0012-fix-CVE-2015-5203.patch [deleted file]
package/jasper/jasper.hash
package/jasper/jasper.mk
package/kvm-unit-tests/0001-remove-werror.patch [new file with mode: 0644]
package/kvm-unit-tests/Config.in
package/kvm-unit-tests/kvm-unit-tests.mk
package/kvmtool/kvmtool.mk
package/lcms2/0001-Fix-lcms2.pc.in-thread-library-dependency.patch [new file with mode: 0644]
package/libfribidi/libfribidi.mk
package/libmpeg2/0003-fix-arm-detection.patch [new file with mode: 0644]
package/libnss/0003-it-uninitialized-fix.patch [new file with mode: 0644]
package/libuv/Config.in
package/libxml2/0001-Fix-XPointer-paths-beginning-with-range-to.patch [new file with mode: 0644]
package/libxml2/0002-Disallow-namespace-nodes-in-XPointer-ranges.patch [new file with mode: 0644]
package/libxslt/0001-Fix-heap-overread-in-xsltFormatNumberConversion.patch [new file with mode: 0644]
package/libxslt/Config.in
package/linux-headers/Config.in.host
package/lttng-babeltrace/0003-fix-uuid-support-detection-on-static-build.patch [new file with mode: 0644]
package/lttng-babeltrace/lttng-babeltrace.mk
package/luv/Config.in
package/luvi/Config.in
package/makedevs/makedevs.c
package/mesa3d/0004-Fix-endianess-detection-with-musl-based-toolchains.patch [new file with mode: 0644]
package/mesa3d/0005-configure.ac-invert-order-for-wayland-scanner-check.patch [new file with mode: 0644]
package/mesa3d/mesa3d.mk
package/moarvm/Config.in
package/mpfr/0001-Fix-obsolete-ARC-asm-constraints.patch [new file with mode: 0644]
package/mplayer/Config.in
package/mpv/0002-Fix-build-on-powerpc64-altivec.patch [new file with mode: 0644]
package/mpv/Config.in
package/net-tools/0002-iptunnel.c-do-not-include-netinet-ip.h.patch
package/ntp/ntp.mk
package/ola/Config.in
package/ola/ola.mk
package/olsr/Config.in
package/openblas/openblas.mk
package/openjpeg/0001-thirdparty-tiff-append-flags-found-by-pkg-config-if-.patch [new file with mode: 0644]
package/openjpeg/0002-thirdparty-lcms2-append-flags-found-by-pkg-config-if.patch [new file with mode: 0644]
package/openjpeg/openjpeg.hash
package/openjpeg/openjpeg.mk
package/openssh/0003-fix-CVE-2016-8858.patch [new file with mode: 0644]
package/php/0007-avoid-bfin-gcc-segfault.patch [new file with mode: 0644]
package/php/php-fpm.conf
package/postgresql/postgresql.mk
package/privoxy/Config.in
package/pseudo/0001-Fix-mixed-tab-space-indentation.patch [new file with mode: 0644]
package/pseudo/0002-Fix-missing-parentheses-at-print.patch [new file with mode: 0644]
package/pseudo/0003-Make-it-compatible-with-python3.patch [new file with mode: 0644]
package/pseudo/pseudo.hash
package/pseudo/pseudo.mk
package/ptpd2/ptpd2.mk
package/python/python.mk
package/python3/0031-Add-an-option-to-disable-openssl.patch [new file with mode: 0644]
package/python3/python3.mk
package/qemu/Config.in
package/qextserialport/0002-Create-a-main-include-file-QExtSerialPort.patch [new file with mode: 0644]
package/qextserialport/0002-main-include.patch [deleted file]
package/qextserialport/0003-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch [new file with mode: 0644]
package/qextserialport/0003-pkgconfig.patch [deleted file]
package/qextserialport/qextserialport.mk
package/qt5/qt5base/0007-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch [new file with mode: 0644]
package/quagga/Config.in
package/quota/0003-remove-non-posix-types.patch [new file with mode: 0644]
package/quota/0004-import-sys-cdefs.patch [new file with mode: 0644]
package/quota/0005-include-fcntl.patch [new file with mode: 0644]
package/qwt/Config.in
package/sane-backends/0003-sane_backend-add-missing-config.h.patch [new file with mode: 0644]
package/sane-backends/Config.in
package/ser2net/ser2net.mk
package/strace/strace.mk
package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch [new file with mode: 0644]
package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch [new file with mode: 0644]
package/taskd/taskd.mk
package/tiff/Config.in
package/tiff/tiff.hash
package/tiff/tiff.mk
package/tinyalsa/tinyalsa.mk
package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch [new file with mode: 0644]
package/tremor/tremor.mk
package/trousers/trousers.mk
package/uclibc/0002-do-not-define-madvise-related-macros-for-noMMU-targe.patch [new file with mode: 0644]
package/uclibc/0003-posix_madvise-not-available-for-noMMU.patch [new file with mode: 0644]
package/udisks/0002-Fix-systemd-service-file.patch [new file with mode: 0644]
package/udisks/udisks.mk
package/valgrind/valgrind.mk
package/weston/0002-shared-platform-include-weston-egl-ext.h-only-if-ENA.patch [new file with mode: 0644]
package/wget/0001-utils-rename-base64_-encode-decode.patch [new file with mode: 0644]
package/wget/wget.mk
package/wireshark/wireshark.hash
package/wireshark/wireshark.mk
package/x11r7/xapp_xload/xapp_xload.mk
package/x265/x265.hash
package/x265/x265.mk
package/xenomai/0001-bfin-remove-inline-keyword.patch [new file with mode: 0644]
package/xmlstarlet/0001-Fix-static-linking-problem-with-libgcrypt.patch [deleted file]
package/xmlstarlet/xmlstarlet.mk
support/misc/Vagrantfile
support/misc/toolchainfile.cmake.in
support/scripts/br2-external
support/scripts/get-developers
toolchain/toolchain-external/toolchain-external-musl-cross/Config.in
toolchain/toolchain-wrapper.c
toolchain/toolchain-wrapper.mk

diff --git a/CHANGES b/CHANGES
index 5b1b62f58e72a284cdae0b34941a5419c97d8386..d52bcddf6dc2811d84fbd2615953d32d443932ca 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,75 @@
+2016.11, Released November 30th, 2016
+
+       Minor fixes.
+
+       Updated/fixed packages: bzip2, gcc, jasper, sane-backends,
+       uboot, uclibc
+
+       Issues resolved (http://bugs.buildroot.org):
+
+       #9451: packages/postgresql/postgresql.mk contains wrong POST...
+
+2016.11-rc3, Released November 28th, 2016
+
+       Fixes all over the tree, including a number of security fixes.
+
+       The move from fakeroot to pseudo unfortunately brought a
+       number of issues.  The SELinux issue described in #9386 which
+       triggered the move to pseudo has been investigated further and
+       a workaround implemented and the pseudo changes reverted.
+
+       Linux kernel: update default to 4.8.11.
+
+       Defconfigs: Updates/fixes for imx28ek, mx6udoo, imx6ulpico,
+       olimex a20 olinuxino lime mali, roseapplepi, synopsis aarch64
+       vdk, axs101, axs103 and hs38 smd vdk.
+
+       Updated/fixed packages: autossh, chrony, dosfstools,
+       dtv-scan-tables, e2fsprogs, gcc, gdb, gnuchess, gnuradio,
+       gpsd, gst1-plugins-bad, gst1-plugins-good, imagemagick,
+       kvm-unit-tests, libfribi, libuv, mesa3d, mpfr, mplayer, mpv,
+       ntp, ola, olsr, openblas, openjpeg, openssh, postgresql,
+       ptpd2python3, qemu, qextserialport, qt5base, quagga, xqwt,
+       taskd, tiff, tremor, trousers, udisks, uclibc, wireshark,
+       xapp_xload, xenomai, xmlstarlet
+
+       Issues resolved (http://bugs.buildroot.org):
+
+       #9386: ubinize fails with or without custom config
+       #9431: A misspelling
+       #9446: make raspberrypi3_defconfig compilation failure
+
+2016.11-rc2, Released November 13th, 2016
+
+       Fixes all over the tree.
+
+       Architecture: add support for MIPS XBurst cores; remove MIPS
+       support for M5100 cores.
+
+       Updated/fixed packages: mesa3d, lttng-babeltrace, tinyalsa, pseudo,
+       czmq, libxml2, makedevs, binutils, kvm-unit-tests, libnss, privoxy,
+       qemu, ser2net, net-tools, ffmpeg, assimp, libmpeg2, ccache, mpv,
+       libxslt, python, python3, php, valgrind, guile, domoticz, efl,
+       jasper, kvmtool, go, wget, sane-backends, weston, tinymembench,
+       strace, openjpeg, lcms2, quota.
+
+       Linux kernel: update default to 4.8.7.
+
+       CMake support: fix cmake wrapper to properly pass NDEBUG flag.
+
+       Filesystems: use a wrapper to pseudo, to better mimick the behaviour
+       of fakeroot; makedevs no longer breaks of the destination already
+       exists and is of the correct type/major/minor.
+
+       Defconfigs: a few legacy and broken defconfigs have been removed
+       because they now fail to build: kb9202_defconfig, mini2440_defconfig,
+       freescale_p2020ds, qmx6, calao*, atmel_sama5d4ek. Other defconfigs
+       have been updated: nanopi-neo, olimex_a20_olinuxino_lime_mali,
+       armadeus_apf51, armadeus_apf28, freescale_imx31_3stack, ci20,
+       olimex_a20_olinuxino_lime2, atmel_at91sam9260eknf,
+       atmel_at91sam9rlek, atmel_at91sam9g20dfc, atmel_at91sam9g45m10ek,
+       atmel_sama5d3xek.
+
 2016.11-rc1, Released November 3rd, 2016
 
        Fixes all over the tree and new features.
index 77e71b0d47641cf8315648789582d780ab4c4598..684be4866c866d32fd49a1398b8671ca69879d07 100644 (file)
@@ -338,6 +338,7 @@ N:  Cédric Chépied <cedric.chepied@gmail.com>
 F:     package/znc/
 
 N:     Cyril Bur <cyrilbur@gmail.com>
+F:     arch/Config.in.powerpc
 F:     package/kvm-unit-tests
 
 N:     Dagg Stompler <daggs@gmx.com>
@@ -568,14 +569,6 @@ F: package/libsrtp/
 F:     package/libwebsock/
 F:     package/sofia-sip/
 
-N:     Gregory Hermant <gregory.hermant@calao-systems.com>
-F:     package/bcusdk/
-F:     package/dfu-util/
-F:     package/libpthsem/
-F:     package/linknx/
-F:     package/snowball-hdmiservice/
-F:     package/ux500-firmware/
-
 N:     Guillaume Gardet <guillaume.gardet@oliseo.fr>
 F:     package/c-icap/
 F:     package/c-icap-modules/
@@ -1651,6 +1644,7 @@ F:        package/modem-manager/
 F:     package/nuttcp/
 F:     package/parted/
 F:     package/python*
+F:     package/ser2net/
 F:     package/socketcand/
 F:     package/qt5/qt5serialbus/
 F:     package/sdparm/
index 55d928de38c9b865f3670179823392c288909da1..00bcd0f49fc2f8f25cced846d6de16c0caeb0ceb 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -86,7 +86,7 @@ else # umask / $(CURDIR) / $(O)
 all:
 
 # Set and export the version string
-export BR2_VERSION := 2016.11-rc1
+export BR2_VERSION := 2017.02-git
 # Actual time the release is cut (for reproducible builds)
 BR2_VERSION_EPOCH = 1478206447
 
@@ -653,7 +653,7 @@ target-finalize: $(PACKAGES)
                $(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \
                $(TARGET_DIR)/usr/lib/cmake $(TARGET_DIR)/usr/share/cmake
        find $(TARGET_DIR)/usr/{lib,share}/ -name '*.cmake' -print0 | xargs -0 rm -f
-       find $(TARGET_DIR)/lib $(TARGET_DIR)/usr/lib $(TARGET_DIR)/usr/libexec \
+       find $(TARGET_DIR)/lib/ $(TARGET_DIR)/usr/lib/ $(TARGET_DIR)/usr/libexec/ \
                \( -name '*.a' -o -name '*.la' \) -print0 | xargs -0 rm -f
 ifneq ($(BR2_PACKAGE_GDB),y)
        rm -rf $(TARGET_DIR)/usr/share/gdb
@@ -675,13 +675,13 @@ endif
 # besides the one in which crash occurred; or SIGTRAP kills my program when
 # I set a breakpoint"
 ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
-       find $(TARGET_DIR)/lib -type f -name 'libpthread*.so*' | \
+       find $(TARGET_DIR)/lib/ -type f -name 'libpthread*.so*' | \
                xargs -r $(STRIPCMD) $(STRIP_STRIP_DEBUG)
 endif
 
 # Valgrind needs ld.so with enough information, so only strip
 # debugging symbols.
-       find $(TARGET_DIR)/lib -type f -name 'ld-*.so*' | \
+       find $(TARGET_DIR)/lib/ -type f -name 'ld-*.so*' | \
                xargs -r $(STRIPCMD) $(STRIP_STRIP_DEBUG)
        test -f $(TARGET_DIR)/etc/ld.so.conf && \
                { echo "ERROR: we shouldn't have a /etc/ld.so.conf file"; exit 1; } || true
@@ -940,7 +940,7 @@ clean:
                $(LEGAL_INFO_DIR) $(GRAPHS_DIR)
 
 distclean: clean
-ifeq ($(O),output)
+ifeq ($(O),$(CURDIR)/output)
        rm -rf $(O)
 endif
        rm -rf $(TOPDIR)/dl $(BR2_CONFIG) $(CONFIG_DIR)/.config.old $(CONFIG_DIR)/..config.tmp \
index 3662fedca892e9ca04b8fea98f1149853fd24101..ce41e9e725f3a9bf52429f6e9e43c4033edc4121 100644 (file)
@@ -47,22 +47,31 @@ config BR2_mips_interaptiv
        bool "interAptiv"
        depends on !BR2_ARCH_IS_64
        select BR2_MIPS_CPU_MIPS32R2
-config BR2_mips_m5100
-       bool "M5100"
+config BR2_mips_m5150
+       bool "M5150"
        depends on !BR2_ARCH_IS_64
        select BR2_MIPS_CPU_MIPS32R5
-config BR2_mips_m5101
-       bool "M5101"
-       depends on !BR2_ARCH_IS_64
-       select BR2_MIPS_CPU_MIPS32R5
-config BR2_mips_m6201
-       bool "M6201"
+config BR2_mips_m6250
+       bool "M6250"
        depends on !BR2_ARCH_IS_64
        select BR2_MIPS_CPU_MIPS32R6
 config BR2_mips_p5600
        bool "P5600"
        depends on !BR2_ARCH_IS_64
        select BR2_MIPS_CPU_MIPS32R5
+config BR2_mips_xburst
+       bool "XBurst"
+       depends on !BR2_ARCH_IS_64
+       select BR2_MIPS_CPU_MIPS32R2
+       help
+         The Ingenic XBurst is a MIPS32R2 microprocessor. It has a
+         bug in the FPU that can generate incorrect results in
+         certain cases. The problem shows up when you have several
+         fused madd instructions in sequence with dependant
+         operands. This requires the -mno-fused-madd compiler option
+         to be used in order to prevent emitting these instructions.
+
+         See http://www.ingenic.com/en/?xburst.html
 config BR2_mips_64
        bool "Generic MIPS64"
        depends on BR2_ARCH_IS_64
@@ -133,10 +142,10 @@ config BR2_GCC_TARGET_ARCH
        default "mips32r5"      if BR2_mips_32r5
        default "mips32r6"      if BR2_mips_32r6
        default "interaptiv"    if BR2_mips_interaptiv
-       default "m5100"         if BR2_mips_m5100
-       default "m5101"         if BR2_mips_m5101
-       default "m6201"         if BR2_mips_m6201
+       default "m5101"         if BR2_mips_m5150
+       default "m6201"         if BR2_mips_m6250
        default "p5600"         if BR2_mips_p5600
+       default "mips32r2"      if BR2_mips_xburst
        default "mips64"        if BR2_mips_64
        default "mips64r2"      if BR2_mips_64r2
        default "mips64r5"      if BR2_mips_64r5
similarity index 93%
rename from board/armadeus/apf51/linux-3.12.config
rename to board/armadeus/apf51/linux-4.4.config
index 6c461b6f0d8896d26c95b4b30a0c2bbb965e11d9..6957b635a1f365d3d103fcf47ab13e11749c799d 100644 (file)
@@ -20,7 +20,7 @@ CONFIG_BSD_DISKLABEL=y
 # CONFIG_IOSCHED_CFQ is not set
 CONFIG_ARCH_MXC=y
 CONFIG_MXC_IRQ_PRIOR=y
-CONFIG_MACH_IMX51_DT=y
+CONFIG_SOC_IMX51=y
 CONFIG_ARM_THUMBEE=y
 CONFIG_PREEMPT=y
 CONFIG_AEABI=y
@@ -111,7 +111,9 @@ CONFIG_KEYBOARD_GPIO=m
 CONFIG_KEYBOARD_IMX=m
 CONFIG_INPUT_TOUCHSCREEN=y
 CONFIG_TOUCHSCREEN_WM831X=y
+CONFIG_TOUCHSCREEN_MC13XXX=m
 CONFIG_INPUT_MISC=y
+CONFIG_INPUT_MC13783_PWRBUTTON=m
 CONFIG_INPUT_UINPUT=m
 CONFIG_INPUT_WM831X_ON=y
 # CONFIG_LEGACY_PTYS is not set
@@ -127,19 +129,24 @@ CONFIG_SPI_IMX=y
 CONFIG_SPI_SPIDEV=m
 CONFIG_GPIO_SYSFS=y
 CONFIG_GPIO_WM831X=m
-CONFIG_POWER_SUPPLY=m
+CONFIG_POWER_SUPPLY=y
 CONFIG_WM831X_BACKUP=m
 CONFIG_WM831X_POWER=m
 CONFIG_HWMON=m
 CONFIG_SENSORS_AS1531=m
+CONFIG_SENSORS_MC13783_ADC=m
 CONFIG_SENSORS_WM831X=m
 CONFIG_WATCHDOG=y
 CONFIG_WATCHDOG_NOWAYOUT=y
 CONFIG_WM831X_WATCHDOG=m
 CONFIG_IMX2_WDT=y
+CONFIG_MFD_MC13XXX_I2C=y
 CONFIG_MFD_WM831X_I2C=y
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_FIXED_VOLTAGE=y
+CONFIG_REGULATOR_MC13892=m
+CONFIG_IMX_IPUV3_CORE=y
+CONFIG_DRM=y
 CONFIG_MFD_IMX_IPU_V3=y
 CONFIG_MEDIA_SUPPORT=m
 CONFIG_VIDEO_DEV=m
@@ -203,12 +210,13 @@ CONFIG_USB_PRINTER=y
 CONFIG_USB_WDM=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_CHIPIDEA=y
+CONFIG_USB_CHIPIDEA_UDC=y
 CONFIG_USB_CHIPIDEA_HOST=y
 CONFIG_USB_PHY=y
 CONFIG_NOP_USB_XCEIV=y
 CONFIG_USB_GPIO_VBUS=y
 CONFIG_USB_ULPI=y
-CONFIG_USB_GADGET=m
+CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_DEBUG_FILES=y
 CONFIG_USB_GADGET_DEBUG_FS=y
 CONFIG_USB_ETH=m
@@ -227,12 +235,19 @@ CONFIG_NEW_LEDS=y
 CONFIG_LEDS_CLASS=y
 CONFIG_LEDS_GPIO=y
 CONFIG_LEDS_WM831X_STATUS=m
+CONFIG_LEDS_MC13783=m
 CONFIG_LEDS_TRIGGERS=y
 CONFIG_LEDS_TRIGGER_HEARTBEAT=y
 CONFIG_RTC_CLASS=y
 CONFIG_RTC_MXC=y
 CONFIG_RTC_DRV_WM831X=y
+CONFIG_RTC_DRV_MC13XXX=m
 CONFIG_STAGING=y
+CONFIG_DRM_IMX=y
+CONFIG_DRM_IMX_FB_HELPER=y
+CONFIG_DRM_IMX_PARALLEL_DISPLAY=y
+CONFIG_DRM_IMX_TVE=y
+CONFIG_DRM_IMX_IPUV3=y
 CONFIG_IIO=m
 CONFIG_EXT2_FS=y
 CONFIG_EXT2_FS_XATTR=y
@@ -242,6 +257,7 @@ CONFIG_EXT2_FS_XIP=y
 CONFIG_EXT3_FS=y
 CONFIG_EXT3_FS_POSIX_ACL=y
 CONFIG_EXT3_FS_SECURITY=y
+CONFIG_EXT4_FS=y
 CONFIG_AUTOFS4_FS=y
 CONFIG_ISO9660_FS=y
 CONFIG_JOLIET=y
@@ -249,10 +265,6 @@ CONFIG_ZISOFS=y
 CONFIG_MSDOS_FS=y
 CONFIG_VFAT_FS=y
 CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_COMPRESSION_OPTIONS=y
-CONFIG_JFFS2_LZO=y
-CONFIG_JFFS2_CMODE_NONE=y
 CONFIG_UBIFS_FS=y
 CONFIG_NFS_FS=y
 CONFIG_NFS_V3=y
diff --git a/board/atmel/at91sam9260ek/linux-3.9.config b/board/atmel/at91sam9260ek/linux-3.9.config
deleted file mode 100644 (file)
index 48dc656..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-CONFIG_EXPERIMENTAL=y
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_KERNEL_LZO=y
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_ARCH_AT91=y
-CONFIG_ARCH_AT91SAM9260=y
-CONFIG_ARCH_AT91SAM9260_SAM9XE=y
-CONFIG_MACH_AT91SAM9260EK=y
-CONFIG_MACH_CAM60=y
-CONFIG_MACH_SAM9_L9260=y
-CONFIG_MACH_AFEB9260=y
-CONFIG_MACH_USB_A9260=y
-CONFIG_MACH_QIL_A9260=y
-CONFIG_MACH_CPU9260=y
-CONFIG_MACH_FLEXIBITY=y
-CONFIG_MACH_SNAPPER_9260=y
-CONFIG_MACH_AT91SAM_DT=y
-CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
-# CONFIG_ARM_THUMB is not set
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_ARM_APPENDED_DTB=y
-CONFIG_ARM_ATAG_DTB_COMPAT=y
-CONFIG_CMDLINE="mem=64M console=ttyS0,115200 initrd=0x21100000,3145728 root=/dev/ram0 rw"
-CONFIG_FPE_NWFPE=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_BOOTP=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_IPV6 is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ATMEL=y
-CONFIG_MTD_UBI=y
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_SIZE=8192
-CONFIG_SCSI=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_NETDEVICES=y
-CONFIG_MII=y
-CONFIG_MACB=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-# CONFIG_HW_RANDOM is not set
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_GPIO=y
-# CONFIG_HWMON is not set
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
-CONFIG_AT91SAM9X_WATCHDOG=y
-# CONFIG_USB_HID is not set
-CONFIG_USB=y
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_MON=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_STORAGE_DEBUG=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_ZERO=m
-CONFIG_USB_GADGETFS=m
-CONFIG_USB_MASS_STORAGE=m
-CONFIG_USB_G_SERIAL=m
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_AT91SAM9=y
-CONFIG_EXT2_FS=y
-CONFIG_VFAT_FS=y
-CONFIG_TMPFS=y
-CONFIG_UBIFS_FS=y
-CONFIG_CRAMFS=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_DEBUG_KERNEL=y
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_LL=y
index 3a79e57c3302a03a88cd426864f474eed26296ad..0b6634687e3ee6ea127420e15b866a36253083bf 100644 (file)
@@ -13,7 +13,6 @@ This guide covers the following configurations:
  - atmel_sama5d3_xplained_dev_defconfig
  - atmel_sama5d3_xplained_mmc_defconfig
  - atmel_sama5d3_xplained_mmc_dev_defconfig
- - atmel_sama5d4ek_defconfig
  - atmel_sama5d4_xplained_defconfig
  - atmel_sama5d4_xplained_dev_defconfig
  - atmel_sama5d4_xplained_mmc_defconfig
index b0ba22dbb29aae3b55ad61b2a24fbd41d5f72145..d3b7af5b5c9818d3b7e4c94079146a8c0ffe877b 100644 (file)
@@ -23,6 +23,7 @@ image sdcard.img {
                partition-type = 0xC
                bootable = "true"
                image = "boot.vfat"
+               offset = 1M
        }
 
        partition rootfs {
index 32df453b01a48491388571bf993b206e5d3ab9f1..277ce5f9c9c0aef10e8db34a63917df9a306d290 100644 (file)
@@ -23,6 +23,7 @@ image sdcard.img {
                partition-type = 0xC
                bootable = "true"
                image = "boot.vfat"
+               offset = 1M
        }
 
        partition rootfs {
index b23ebe470a4bd1c59ab9bc5ea547023233e6f830..70bb3e4ff0ad8fe7cc832f30905c7b4233e2cdd5 100644 (file)
@@ -24,6 +24,7 @@ image sdcard.img {
                partition-type = 0xC
                bootable = "true"
                image = "boot.vfat"
+               offset = 1M
        }
 
        partition rootfs {
index e8a08aa8ae14bfe383fbfe78e0716043118902df..2fc687aff4cd67e58e17f7b6bf008d234d77c782 100644 (file)
@@ -92,14 +92,12 @@ fi
 
 setenv bootargs "${bootargs} console=${console},115200 vmalloc=400M consoleblank=0 rootwait fixrtc"
 
-bpart=1
-
 if test "sata" = "${dtype}" ; then
-       setenv bootargs "${bootargs} root=/dev/sda${bpart}" ;
+       setenv bootargs "${bootargs} root=/dev/sda${bootpart}" ;
 elif test "usb" = "${dtype}" ; then
-       setenv bootargs "${bootargs} root=/dev/sda${bpart}" ;
+       setenv bootargs "${bootargs} root=/dev/sda${bootpart}" ;
 else
-       setenv bootargs "${bootargs} root=/dev/mmcblk${disk}p${bpart}"
+       setenv bootargs "${bootargs} root=/dev/mmcblk${disk}p${bootpart}"
 fi
 
 if itest.s "x" != "x${disable_giga}" ; then
diff --git a/board/calao/qil-a9260/linux-3.4.7.config b/board/calao/qil-a9260/linux-3.4.7.config
deleted file mode 100644 (file)
index 105d760..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-CONFIG_EXPERIMENTAL=y
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_ARCH_AT91=y
-CONFIG_ARCH_AT91SAM9260=y
-CONFIG_MACH_QIL_A9260=y
-CONFIG_AT91_SLOW_CLOCK=y
-CONFIG_AT91_EARLY_USART0=y
-# CONFIG_ARM_THUMB is not set
-CONFIG_AEABI=y
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="mem=64M console=ttyS1,115200"
-CONFIG_FPE_NWFPE=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_IPV6 is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_DATAFLASH=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ATMEL=y
-CONFIG_MTD_NAND_ATMEL_ECC_SOFT=y
-CONFIG_MTD_UBI=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_SCSI=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_NETDEVICES=y
-CONFIG_MII=y
-CONFIG_MACB=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_EVDEV=y
-CONFIG_INPUT_EVBUG=y
-# CONFIG_KEYBOARD_ATKBD is not set
-CONFIG_KEYBOARD_GPIO=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_SPI=y
-CONFIG_SPI_ATMEL=y
-# CONFIG_HWMON is not set
-CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
-# CONFIG_USB_HID is not set
-CONFIG_USB=y
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_MON=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_ETH=m
-CONFIG_MMC=y
-CONFIG_MMC_AT91=m
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_M41T94=y
-CONFIG_EXT2_FS=y
-CONFIG_FUSE_FS=m
-CONFIG_VFAT_FS=y
-CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_UBIFS_FS=y
-CONFIG_UBIFS_FS_XATTR=y
-CONFIG_UBIFS_FS_ADVANCED_COMPR=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_DEBUG_KERNEL=y
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_LL=y
diff --git a/board/calao/qil-a9260/patches/at91bootstrap/0001-qil-a9260.patch b/board/calao/qil-a9260/patches/at91bootstrap/0001-qil-a9260.patch
deleted file mode 100644 (file)
index eb9de2a..0000000
+++ /dev/null
@@ -1,603 +0,0 @@
-From a3e08beea8bf5e96e1237eef4a82f4a2fdd5286b Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Thu, 19 Jul 2012 14:19:59 +0200
-Subject: [PATCH] Add support for the Calao-systems QIL-A9260
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- board/qil_a9260/nandflash/Makefile    |  122 ++++++++++++++
- board/qil_a9260/nandflash/qil-a9260.h |  109 ++++++++++++
- board/qil_a9260/qil_a9260.c           |  298 +++++++++++++++++++++++++++++++++
- crt0_gnu.S                            |    7 +
- include/part.h                        |    6 +-
- 5 files changed, 541 insertions(+), 1 deletions(-)
- create mode 100644 board/qil_a9260/nandflash/Makefile
- create mode 100644 board/qil_a9260/nandflash/qil-a9260.h
- create mode 100644 board/qil_a9260/qil_a9260.c
-
-diff --git a/board/qil_a9260/nandflash/Makefile b/board/qil_a9260/nandflash/Makefile
-new file mode 100644
-index 0000000..209a25f
---- /dev/null
-+++ b/board/qil_a9260/nandflash/Makefile
-@@ -0,0 +1,122 @@
-+# TODO: set this appropriately for your local toolchain
-+ifndef ERASE_FCT
-+ERASE_FCT=rm -f
-+endif
-+ifndef CROSS_COMPILE
-+CROSS_COMPILE=arm-elf-
-+endif
-+
-+TOOLCHAIN=gcc
-+
-+BOOTSTRAP_PATH=../../..
-+
-+# NandFlashBoot Configuration for QIL-A9260
-+
-+# Target name (case sensitive!!!)
-+TARGET=AT91SAM9260
-+# Board name (case sensitive!!!)
-+BOARD=qil_a9260
-+# Link Address and Top_of_Memory
-+LINK_ADDR=0x200000
-+TOP_OF_MEMORY=0x301000
-+# Name of current directory
-+PROJECT=nandflash
-+
-+ifndef BOOT_NAME
-+BOOT_NAME=$(PROJECT)_$(BOARD)
-+endif
-+
-+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+
-+AS=$(CROSS_COMPILE)gcc
-+CC=$(CROSS_COMPILE)gcc
-+LD=$(CROSS_COMPILE)gcc
-+NM= $(CROSS_COMPILE)nm
-+SIZE=$(CROSS_COMPILE)size
-+OBJCOPY=$(CROSS_COMPILE)objcopy
-+OBJDUMP=$(CROSS_COMPILE)objdump
-+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
-+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
-+
-+# Linker flags.
-+#  -Wl,...:     tell GCC to pass this to linker.
-+#    -Map:      create map file
-+#    --cref:    add cross reference to map file
-+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
-+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
-+OBJS=crt0_gnu.o
-+
-+endif
-+
-+OBJS+=\
-+      $(BOARD).o \
-+      main.o \
-+      gpio.o \
-+      pmc.o \
-+      debug.o \
-+      sdramc.o \
-+      nandflash.o \
-+      _udivsi3.o \
-+      _umodsi3.o \
-+      div0.o \
-+      udiv.o \
-+      string.o
-+
-+
-+rebuild: clean all
-+
-+all:  $(BOOT_NAME)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+$(BOOT_NAME): $(OBJS)
-+      $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
-+      $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
-+endif
-+
-+
-+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
-+
-+main.o: $(BOOTSTRAP_PATH)/main.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
-+
-+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
-+
-+pmc.o:  $(BOOTSTRAP_PATH)/driver/pmc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
-+
-+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
-+
-+sdramc.o:  $(BOOTSTRAP_PATH)/driver/sdramc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
-+
-+dataflash.o:  $(BOOTSTRAP_PATH)/driver/dataflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
-+
-+nandflash.o:  $(BOOTSTRAP_PATH)/driver/nandflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
-+
-+crt0_gnu.o:  $(BOOTSTRAP_PATH)/crt0_gnu.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
-+
-+div0.o:  $(BOOTSTRAP_PATH)/lib/div0.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
-+
-+string.o:  $(BOOTSTRAP_PATH)/lib/string.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
-+
-+udiv.o:  $(BOOTSTRAP_PATH)/lib/udiv.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
-+
-+_udivsi3.o:  $(BOOTSTRAP_PATH)/lib/_udivsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
-+
-+_umodsi3.o:  $(BOOTSTRAP_PATH)/lib/_umodsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
-+
-+clean:
-+      $(ERASE_FCT) *.o *.bin *.elf *.map
-diff --git a/board/qil_a9260/nandflash/qil-a9260.h b/board/qil_a9260/nandflash/qil-a9260.h
-new file mode 100644
-index 0000000..c87002e
---- /dev/null
-+++ b/board/qil_a9260/nandflash/qil-a9260.h
-@@ -0,0 +1,109 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : qil-a9260.h
-+ * Object              :
-+ * Creation            : GH July 19th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#ifndef _QIL_A9260_H
-+#define _QIL_A9260_H
-+
-+/* ******************************************************************* */
-+/* PMC Settings                                                        */
-+/*                                                                     */
-+/* The main oscillator is enabled as soon as possible in the c_startup */
-+/* and MCK is switched on the main oscillator.                         */
-+/* PLL initialization is done later in the hw_init() function          */
-+/* ******************************************************************* */
-+#define MASTER_CLOCK          (180000000/2)
-+#define PLL_LOCK_TIMEOUT      1000000
-+
-+#define PLLA_SETTINGS 0x20593F06
-+#define PLLB_SETTINGS 0x10483F0E
-+
-+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
-+#define MCKR_SETTINGS         (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
-+#define MCKR_CSS_SETTINGS     (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
-+
-+/* ******************************************************************* */
-+/* NandFlash Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_SMARTMEDIA_BASE 0x40000000
-+
-+#define AT91_SMART_MEDIA_ALE    (1 << 21)     /* our ALE is AD21 */
-+#define AT91_SMART_MEDIA_CLE    (1 << 22)     /* our CLE is AD22 */
-+
-+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
-+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
-+
-+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
-+
-+
-+/* ******************************************************************** */
-+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 90000000.*/
-+/* Please refer to SMC section in AT91SAM datasheet to learn how      */
-+/* to generate these values.                                          */
-+/* ******************************************************************** */
-+#define AT91C_SM_NWE_SETUP    (1 << 0)
-+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
-+#define AT91C_SM_NRD_SETUP    (1 << 16)
-+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
-+  
-+#define AT91C_SM_NWE_PULSE    (3 << 0)
-+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
-+#define AT91C_SM_NRD_PULSE    (3 << 16)
-+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
-+  
-+#define AT91C_SM_NWE_CYCLE    (5 << 0)
-+#define AT91C_SM_NRD_CYCLE    (5 << 16)
-+#define AT91C_SM_TDF          (2 << 16)
-+
-+/* ******************************************************************* */
-+/* BootStrap Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define IMG_ADDRESS           0x20000         /* Image Address in NandFlash */
-+#define       IMG_SIZE                0x40000         /* Image Size in NandFlash    */
-+
-+#define MACH_TYPE             0x6AF           /* QIL-A9260 */
-+#define JUMP_ADDR             0x23F00000      /* Final Jump Address         */
-+
-+/* ******************************************************************* */
-+/* Application Settings                                                */
-+/* ******************************************************************* */
-+#undef CFG_DEBUG
-+#undef CFG_DATAFLASH
-+
-+#define CFG_NANDFLASH
-+#undef        NANDFLASH_SMALL_BLOCKS  /* NANDFLASH_LARGE_BLOCKS used instead */
-+
-+#define CFG_HW_INIT
-+#define CFG_SDRAM
-+
-+#endif        /* _QIL_A9260_H */
-diff --git a/board/qil_a9260/qil_a9260.c b/board/qil_a9260/qil_a9260.c
-new file mode 100644
-index 0000000..ae122e7
---- /dev/null
-+++ b/board/qil_a9260/qil_a9260.c
-@@ -0,0 +1,298 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaiimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : qil_a9260.c
-+ * Object              :
-+ * Creation            : GH July 19th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#include "../../include/part.h"
-+#include "../../include/gpio.h"
-+#include "../../include/pmc.h"
-+#include "../../include/debug.h"
-+#include "../../include/sdramc.h"
-+#include "../../include/main.h"
-+#ifdef CFG_NANDFLASH
-+#include "../../include/nandflash.h"
-+#endif
-+#ifdef CFG_DATAFLASH
-+#include "../../include/dataflash.h"
-+#endif
-+
-+static inline unsigned int get_cp15(void)
-+{
-+      unsigned int value;
-+      __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
-+      return value;
-+}
-+
-+static inline void set_cp15(unsigned int value)
-+{
-+      __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
-+}
-+
-+#ifdef CFG_HW_INIT
-+/*----------------------------------------------------------------------------*/
-+/* \fn    hw_init                                                           */
-+/* \brief This function performs very low level HW initialization           */
-+/* This function is invoked as soon as possible during the c_startup        */
-+/* The bss segment must be initialized                                              */
-+/*----------------------------------------------------------------------------*/
-+void hw_init(void)
-+{
-+      unsigned int cp15;
-+      
-+      /* Configure PIOs */
-+      const struct pio_desc hw_pio[] = {
-+#ifdef CFG_DEBUG
-+              {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Disable watchdog */
-+      writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
-+
-+      /* At this stage the main oscillator is supposed to be enabled
-+       * PCK = MCK = MOSC */
-+
-+      /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
-+      pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* PCK = PLLA = 2 * MCK */
-+      pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
-+      /* Switch MCK on PLLA output */
-+      pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure PLLB */
-+      pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure CP15 */
-+      cp15 = get_cp15();
-+      cp15 |= I_CACHE;
-+      set_cp15(cp15);
-+
-+      /* Configure the PIO controller */
-+      pio_setup(hw_pio);
-+
-+      /* Configure the EBI Slave Slot Cycle to 64 */
-+      writel( (readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
-+
-+#ifdef CFG_DEBUG
-+      /* Enable Debug messages on the DBGU */
-+      dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
-+
-+      dbg_print("Start AT91Bootstrap...\n\r");
-+#endif /* CFG_DEBUG */
-+
-+#ifdef CFG_SDRAM
-+      /* Initialize the matrix */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS1A_SDRAMC, AT91C_BASE_CCFG + CCFG_EBICSA);
-+
-+      /* Configure SDRAM Controller */
-+      sdram_init(     AT91C_SDRAMC_NC_9  |
-+                              AT91C_SDRAMC_NR_13 |
-+                              AT91C_SDRAMC_CAS_2 |
-+                              AT91C_SDRAMC_NB_4_BANKS |
-+                              AT91C_SDRAMC_DBW_32_BITS |
-+                              AT91C_SDRAMC_TWR_2 |
-+                              AT91C_SDRAMC_TRC_7 |
-+                              AT91C_SDRAMC_TRP_2 |
-+                              AT91C_SDRAMC_TRCD_2 |
-+                              AT91C_SDRAMC_TRAS_5 |
-+                              AT91C_SDRAMC_TXSR_8,            /* Control Register */
-+                              (MASTER_CLOCK * 7)/1000000,     /* Refresh Timer Register */
-+                              AT91C_SDRAMC_MD_SDRAM);         /* SDRAM (no low power)   */ 
-+
-+
-+#endif /* CFG_SDRAM */
-+}
-+#endif /* CFG_HW_INIT */
-+
-+#ifdef CFG_SDRAM
-+/*------------------------------------------------------------------------------*/
-+/* \fn    sdramc_hw_init                                                      */
-+/* \brief This function performs SDRAMC HW initialization                     */
-+/*------------------------------------------------------------------------------*/
-+void sdramc_hw_init(void)
-+{
-+      /* Configure PIOs */
-+/*    const struct pio_desc sdramc_pio[] = {
-+              {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+*/
-+      /* Configure the SDRAMC PIO controller to output PCK0 */
-+/*    pio_setup(sdramc_pio); */
-+
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
-+
-+}
-+#endif /* CFG_SDRAM */
-+
-+#ifdef CFG_DATAFLASH
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_recovery                                                         */
-+/* \brief This function erases DataFlash Page 0 if USR PB is pressed          */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+void df_recovery(AT91PS_DF pDf)
-+{
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb_pio[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb_pio);
-+      
-+      /* If USR PB is pressed during Boot sequence */
-+      /* Erase DataFlash Page 0*/
-+      if ( !pio_get_value(AT91C_PIN_PB(10)) )
-+              df_page_erase(pDf, 0);
-+#endif
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_hw_init                                                          */
-+/* \brief This function performs DataFlash HW initialization                  */
-+/*------------------------------------------------------------------------------*/
-+void df_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc df_pio[] = {
-+              {"MISO",  AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"MOSI",  AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"SPCK",  AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
-+              {"NPCS0", AT91C_PIN_PA(3), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      pio_setup(df_pio);
-+}
-+#endif /* CFG_DATAFLASH */
-+
-+
-+
-+#ifdef CFG_NANDFLASH
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nand_recovery                                               */
-+/* \brief This function erases NandFlash Block 0 if USR PB is pressed                 */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+static void nand_recovery(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb_pio[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb_pio);
-+      
-+      /* If USR PB is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if (!pio_get_value(AT91C_PIN_PB(10)) )
-+              AT91F_NandEraseBlock0();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_hw_init                                                   */
-+/* \brief NandFlash HW init                                                   */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc nand_pio[] = {
-+              {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
-+              {"NANDCS",  AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
-+              {(char *) 0, 0, 0,  PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
-+                  
-+      /* Configure SMC CS3 */
-+      writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
-+      writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
-+      writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE)                                                , AT91C_BASE_SMC + SMC_CYCLE3);
-+      writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE | 
-+              AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF)                                                , AT91C_BASE_SMC + SMC_CTRL3);
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(nand_pio);
-+      
-+      nand_recovery();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_16bits_dbw_init                                               */
-+/* \brief Configure SMC in 16 bits mode                                               */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_16bits_dbw_init(void)
-+{
-+      writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_8bits_dbw_init                                                */
-+/* \brief Configure SMC in 8 bits mode                                                */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_8bits_dbw_init(void)
-+{
-+      writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+
-+#endif /* #ifdef CFG_NANDFLASH */
-diff --git a/crt0_gnu.S b/crt0_gnu.S
-index 042b617..002feef 100644
---- a/crt0_gnu.S
-+++ b/crt0_gnu.S
-@@ -106,6 +106,13 @@ _relocate_to_sram:
- #endif /* CFG_NORFLASH */
- _setup_clocks:
-+/* Test if main osc is bypassed */
-+      ldr     r0,=AT91C_PMC_MOR
-+      ldr     r1, [r0]
-+      ldr     r2,=AT91C_CKGR_OSCBYPASS 
-+      ands    r1, r1, r2
-+      bne     _init_data      /* branch if OSCBYPASS=1 */
-+
- /* Test if main oscillator is enabled */
-       ldr     r0,=AT91C_PMC_SR
-       ldr     r1, [r0]
-diff --git a/include/part.h b/include/part.h
-index ba5985a..bbd33fe 100644
---- a/include/part.h
-+++ b/include/part.h
-@@ -35,7 +35,11 @@
- #ifdef AT91SAM9260
- #include "AT91SAM9260_inc.h"
--#include "at91sam9260ek.h"
-+      #ifdef at91sam9260ek
-+      #include "at91sam9260ek.h"
-+      #elif qil_a9260
-+      #include "qil-a9260.h"
-+      #endif
- #endif
- #ifdef AT91SAM9XE
--- 
-1.5.6.3
-
diff --git a/board/calao/qil-a9260/patches/barebox/0001-qil-a9260.patch b/board/calao/qil-a9260/patches/barebox/0001-qil-a9260.patch
deleted file mode 100644 (file)
index a74e657..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From d076aa6182dc6df6bb311e60bbddb03573b9483b Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Fri, 3 Aug 2012 11:25:49 +0200
-Subject: [PATCH] Enable pull-up on Rx serial ports for the CALAO MB-QIL-A9260
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- arch/arm/boards/qil-a9260/init.c |    6 ++++++
- 1 files changed, 6 insertions(+), 0 deletions(-)
-
-diff --git a/arch/arm/boards/qil-a9260/init.c b/arch/arm/boards/qil-a9260/init.c
-index 305d733..b43cace 100644
---- a/arch/arm/boards/qil-a9260/init.c
-+++ b/arch/arm/boards/qil-a9260/init.c
-@@ -196,11 +196,17 @@ device_initcall(qil_a9260_devices_init);
- static int qil_a9260_console_init(void)
- {
-       at91_register_uart(0, 0);
-+      at91_set_A_periph(AT91_PIN_PB14, 1);    /* Enable pull-up on DRXD */
-+
-       at91_register_uart(1, ATMEL_UART_CTS | ATMEL_UART_RTS
-                          | ATMEL_UART_DTR | ATMEL_UART_DSR | ATMEL_UART_DCD
-                          | ATMEL_UART_RI);
-+
-       at91_register_uart(2, ATMEL_UART_CTS | ATMEL_UART_RTS);
-+      at91_set_A_periph(AT91_PIN_PB7, 1);     /* Enable pull-up on RXD1 */
-+
-       at91_register_uart(3, ATMEL_UART_CTS | ATMEL_UART_RTS);
-+      at91_set_A_periph(AT91_PIN_PB9, 1);     /* Enable pull-up on RXD2 */
-       return 0;
- }
--- 
-1.5.6.3
-
diff --git a/board/calao/qil-a9260/patches/linux/0001-qil-a9260.patch b/board/calao/qil-a9260/patches/linux/0001-qil-a9260.patch
deleted file mode 100644 (file)
index 5d355d2..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From fe6432a9728b62bce3db73c5a4efe026018fd495 Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Fri, 3 Aug 2012 16:45:37 +0200
-Subject: [PATCH] QIL-A9260: rtc modalias m41t48 renamed to rtc-m41t48
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- arch/arm/mach-at91/board-qil-a9260.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/arch/arm/mach-at91/board-qil-a9260.c b/arch/arm/mach-at91/board-qil-a9260.c
-index bf351e2..c0df05c 100644
---- a/arch/arm/mach-at91/board-qil-a9260.c
-+++ b/arch/arm/mach-at91/board-qil-a9260.c
-@@ -78,7 +78,7 @@ static struct at91_udc_data __initdata ek_udc_data = {
- static struct spi_board_info ek_spi_devices[] = {
- #if defined(CONFIG_RTC_DRV_M41T94)
-       {       /* M41T94 RTC */
--              .modalias       = "m41t94",
-+              .modalias       = "rtc-m41t94",
-               .chip_select    = 0,
-               .max_speed_hz   = 1 * 1000 * 1000,
-               .bus_num        = 0,
--- 
-1.5.6.3
-
diff --git a/board/calao/tny-a9g20-lpw/at91bootstrap-1.16-tny-a9g20-lpw.patch b/board/calao/tny-a9g20-lpw/at91bootstrap-1.16-tny-a9g20-lpw.patch
deleted file mode 100644 (file)
index 71746ce..0000000
+++ /dev/null
@@ -1,551 +0,0 @@
-From 53bd82b122f4530a98cba45795832820bb1d0b45 Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Mon, 13 Aug 2012 11:26:10 +0200
-Subject: [PATCH] Add support for the Calao-systems TNY-A9G20-LPW
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- board/tny_a9g20_lpw/nandflash/Makefile        |  121 ++++++++++++
- board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h |  114 ++++++++++++
- board/tny_a9g20_lpw/tny_a9g20_lpw.c           |  243 +++++++++++++++++++++++++
- crt0_gnu.S                                    |    6 +
- include/part.h                                |    6 +-
- 5 files changed, 489 insertions(+), 1 deletion(-)
- create mode 100644 board/tny_a9g20_lpw/nandflash/Makefile
- create mode 100644 board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h
- create mode 100644 board/tny_a9g20_lpw/tny_a9g20_lpw.c
-
-diff --git a/board/tny_a9g20_lpw/nandflash/Makefile b/board/tny_a9g20_lpw/nandflash/Makefile
-new file mode 100644
-index 0000000..7efbea7
---- /dev/null
-+++ b/board/tny_a9g20_lpw/nandflash/Makefile
-@@ -0,0 +1,121 @@
-+# TODO: set this appropriately for your local toolchain
-+ifndef ERASE_FCT
-+ERASE_FCT=rm -f
-+endif
-+ifndef CROSS_COMPILE
-+CROSS_COMPILE=arm-elf-
-+endif
-+
-+TOOLCHAIN=gcc
-+
-+BOOTSTRAP_PATH=../../..
-+
-+# NandFlashBoot Configuration for AT91SAM9260EK
-+
-+# Target name (case sensitive!!!)
-+TARGET=AT91SAM9G20
-+# Board name (case sensitive!!!)
-+BOARD=tny_a9g20_lpw
-+# Link Address and Top_of_Memory
-+LINK_ADDR=0x200000
-+TOP_OF_MEMORY=0x301000
-+# Name of current directory
-+PROJECT=nandflash
-+
-+ifndef BOOT_NAME
-+BOOT_NAME=$(PROJECT)_$(BOARD)
-+endif
-+
-+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+
-+AS=$(CROSS_COMPILE)gcc
-+CC=$(CROSS_COMPILE)gcc
-+LD=$(CROSS_COMPILE)gcc
-+NM= $(CROSS_COMPILE)nm
-+SIZE=$(CROSS_COMPILE)size
-+OBJCOPY=$(CROSS_COMPILE)objcopy
-+OBJDUMP=$(CROSS_COMPILE)objdump
-+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
-+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
-+
-+# Linker flags.
-+#  -Wl,...:     tell GCC to pass this to linker.
-+#    -Map:      create map file
-+#    --cref:    add cross reference to map file
-+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
-+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
-+OBJS=crt0_gnu.o
-+
-+endif
-+
-+OBJS+=\
-+      $(BOARD).o \
-+      main.o \
-+      gpio.o \
-+      pmc.o \
-+      debug.o \
-+      sdramc.o \
-+      nandflash.o \
-+      _udivsi3.o \
-+      _umodsi3.o \
-+      div0.o \
-+      udiv.o \
-+      string.o
-+
-+rebuild: clean all
-+
-+all:  $(BOOT_NAME)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+$(BOOT_NAME): $(OBJS)
-+      $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
-+      $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
-+endif
-+
-+
-+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
-+
-+main.o: $(BOOTSTRAP_PATH)/main.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
-+
-+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
-+
-+pmc.o:  $(BOOTSTRAP_PATH)/driver/pmc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
-+
-+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
-+
-+sdramc.o:  $(BOOTSTRAP_PATH)/driver/sdramc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
-+
-+dataflash.o:  $(BOOTSTRAP_PATH)/driver/dataflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
-+
-+nandflash.o:  $(BOOTSTRAP_PATH)/driver/nandflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
-+
-+crt0_gnu.o:  $(BOOTSTRAP_PATH)/crt0_gnu.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
-+
-+div0.o:  $(BOOTSTRAP_PATH)/lib/div0.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
-+
-+string.o:  $(BOOTSTRAP_PATH)/lib/string.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
-+
-+udiv.o:  $(BOOTSTRAP_PATH)/lib/udiv.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
-+
-+_udivsi3.o:  $(BOOTSTRAP_PATH)/lib/_udivsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
-+
-+_umodsi3.o:  $(BOOTSTRAP_PATH)/lib/_umodsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
-+
-+clean:
-+      $(ERASE_FCT) *.o *.bin *.elf *.map
-diff --git a/board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h b/board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h
-new file mode 100644
-index 0000000..b1f8a1d
---- /dev/null
-+++ b/board/tny_a9g20_lpw/nandflash/tny-a9g20-lpw.h
-@@ -0,0 +1,114 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2008, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : tny-a9g20-lpw.h
-+ * Object              :
-+ * Creation            : GH August 13th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#ifndef _TNY_A9G20_LPW_H
-+#define _TNY_A9G20_LPW_H
-+
-+/* ******************************************************************* */
-+/* PMC Settings                                                        */
-+/*                                                                     */
-+/* The main oscillator is enabled as soon as possible in the c_startup */
-+/* and MCK is switched on the main oscillator.                         */
-+/* PLL initialization is done later in the hw_init() function          */
-+/* ******************************************************************* */
-+#define MASTER_CLOCK          (100000000)
-+#define PLL_LOCK_TIMEOUT      1000000
-+
-+/* set PLLA to 800Mhz from MAINCK= 12Mhz MULA=199 (0xC7+1= 200), DIVA=0x03 (Fplla=12Mhz x [(199+1)/3]=800Mhz) */
-+#define PLLA_SETTINGS   0x20C73F03
-+#define PLLB_SETTINGS   0x100F3F02
-+
-+/* Switch MCK on PLLA output PCK = PLLA/2 = 3 * MCK */
-+/* LP-SDRAM (fmax=100Mhz) PDIV=0 => PRESCALER CLK=PCLK; */
-+/* MDIV = 2 => PRESCALER CLK / 4 = MCLK=100Mhz */
-+/* PRESCALER CLK = PLLA (800Mhz) / 2 (PRES=1) = 400Mhz */
-+#define MCKR_SETTINGS           0x0204 
-+#define MCKR_CSS_SETTINGS       (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
-+
-+/* ******************************************************************* */
-+/* NandFlash Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_SMARTMEDIA_BASE 0x40000000
-+
-+#define AT91_SMART_MEDIA_ALE    (1 << 21)     /* our ALE is AD21 */
-+#define AT91_SMART_MEDIA_CLE    (1 << 22)     /* our CLE is AD22 */
-+
-+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
-+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
-+
-+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
-+
-+
-+/* ******************************************************************** */
-+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 100000000.*/
-+/* Please refer to SMC section in AT91SAM9 datasheet to learn how     */
-+/* to generate these values.                                          */
-+/* ******************************************************************** */
-+#define AT91C_SM_NWE_SETUP    (1 << 0)
-+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
-+#define AT91C_SM_NRD_SETUP    (1 << 16)
-+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
-+  
-+#define AT91C_SM_NWE_PULSE    (3 << 0)
-+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
-+#define AT91C_SM_NRD_PULSE    (3 << 16)
-+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
-+  
-+#define AT91C_SM_NWE_CYCLE    (5 << 0)
-+#define AT91C_SM_NRD_CYCLE    (5 << 16)
-+
-+#define AT91C_SM_TDF          (2 << 16)
-+
-+/* ******************************************************************* */
-+/* BootStrap Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define IMG_ADDRESS           0x20000                 /* Image Address in NandFlash */
-+#define       IMG_SIZE                0x40000                 /* Image Size in NandFlash */
-+
-+#define MACH_TYPE             0x80B                   /* TNY-A9G20 */
-+#define JUMP_ADDR             0x23F00000              /* Final Jump Address */
-+
-+/* ******************************************************************* */
-+/* Application Settings                                                */
-+/* ******************************************************************* */
-+#undef CFG_DEBUG
-+#undef CFG_DATAFLASH
-+
-+#define CFG_NANDFLASH
-+#undef        NANDFLASH_SMALL_BLOCKS  /* NANDFLASH_LARGE_BLOCKS used instead */
-+
-+#define       CFG_SDRAM
-+#define       CFG_HW_INIT
-+
-+#endif        /* _TNY_A9G20_LPW_H */
-diff --git a/board/tny_a9g20_lpw/tny_a9g20_lpw.c b/board/tny_a9g20_lpw/tny_a9g20_lpw.c
-new file mode 100644
-index 0000000..cef9055
---- /dev/null
-+++ b/board/tny_a9g20_lpw/tny_a9g20_lpw.c
-@@ -0,0 +1,243 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2008, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : tny_a9g20_lpw.c
-+ * Object              :
-+ * Creation            : GH August 13th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#include "../../include/part.h"
-+#include "../../include/gpio.h"
-+#include "../../include/pmc.h"
-+#include "../../include/debug.h"
-+#include "../../include/sdramc.h"
-+#include "../../include/main.h"
-+#ifdef CFG_NANDFLASH
-+#include "../../include/nandflash.h"
-+#endif
-+
-+static inline unsigned int get_cp15(void)
-+{
-+      unsigned int value;
-+      __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
-+      return value;
-+}
-+
-+static inline void set_cp15(unsigned int value)
-+{
-+      __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
-+}
-+
-+#ifdef CFG_HW_INIT
-+/*----------------------------------------------------------------------------*/
-+/* \fn    hw_init                                                           */
-+/* \brief This function performs very low level HW initialization           */
-+/* This function is invoked as soon as possible during the c_startup        */
-+/* The bss segment must be initialized                                              */
-+/*----------------------------------------------------------------------------*/
-+void hw_init(void)
-+{
-+      unsigned int cp15;
-+      
-+      /* Configure PIOs */
-+      const struct pio_desc hw_pio[] = {
-+#ifdef CFG_DEBUG
-+              {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Disable watchdog */
-+      writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
-+
-+      /* At this stage the main oscillator is supposed to be enabled
-+       * PCK = MCK = MOSC */
-+      writel(0x00, AT91C_BASE_PMC + PMC_PLLICPR);
-+
-+      /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
-+      pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* PCK = PLLA/2 = 3 * MCK */
-+      pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
-+      /* Switch MCK on PLLA output */
-+      pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure PLLB */
-+      pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure CP15 */
-+      cp15 = get_cp15();
-+      cp15 |= I_CACHE;
-+      set_cp15(cp15);
-+
-+      /* Configure the PIO controller */
-+      pio_setup(hw_pio);
-+
-+      /* Configure the EBI Slave Slot Cycle to 64 */
-+      writel((readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
-+
-+#ifdef CFG_DEBUG
-+      /* Enable Debug messages on the DBGU */
-+      dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
-+
-+      dbg_print("Start AT91Bootstrap...\n\r");
-+#endif /* CFG_DEBUG */
-+
-+#ifdef CFG_SDRAM
-+      /* Initialize the matrix (slow slew rate enabled and LPSDRAM memory voltage = 1.8V) */
-+      writel(((readl(AT91C_BASE_CCFG + CCFG_EBICSA)) | AT91C_EBI_CS1A_SDRAMC | (1<<17)) & ~0x00010000, AT91C_BASE_CCFG + CCFG_EBICSA);
-+
-+      /* Configure SDRAM Controller */
-+      sdram_init(     AT91C_SDRAMC_NC_9  |
-+                              AT91C_SDRAMC_NR_13 |
-+                              AT91C_SDRAMC_CAS_3 |
-+                              AT91C_SDRAMC_NB_4_BANKS |
-+                              AT91C_SDRAMC_DBW_32_BITS |
-+                              AT91C_SDRAMC_TWR_2 |
-+                              AT91C_SDRAMC_TRC_7 |
-+                              AT91C_SDRAMC_TRP_2 |
-+                              AT91C_SDRAMC_TRCD_2 |
-+                              AT91C_SDRAMC_TRAS_5 |
-+                              AT91C_SDRAMC_TXSR_8,            /* Control Register */
-+                              (MASTER_CLOCK * 7)/1000000,     /* Refresh Timer Register */
-+                                AT91C_SDRAMC_MD_LOW_POWER_SDRAM); /* SDRAM (low power)   */
-+
-+#endif /* CFG_SDRAM */
-+}
-+#endif /* CFG_HW_INIT */
-+
-+#ifdef CFG_SDRAM
-+/*------------------------------------------------------------------------------*/
-+/* \fn    sdramc_hw_init                                                      */
-+/* \brief This function performs SDRAMC HW initialization                     */
-+/*------------------------------------------------------------------------------*/
-+void sdramc_hw_init(void)
-+{
-+      /* Configure PIOs */
-+/*    const struct pio_desc sdramc_pio[] = {
-+              {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+*/
-+      /* Configure the SDRAMC PIO controller to output PCK0 */
-+/*    pio_setup(sdramc_pio); */
-+
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
-+
-+}
-+#endif /* CFG_SDRAM */
-+
-+#ifdef CFG_NANDFLASH
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nand_recovery                                               */
-+/* \brief This function erases NandFlash Block 0 if BP4 is pressed            */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+static void nand_recovery(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc bp4_pio[] = {
-+              {"BP4", AT91C_PIN_PA(31), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOA), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(bp4_pio);
-+      
-+      /* If BP4 is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if (!pio_get_value(AT91C_PIN_PA(31)) )
-+              AT91F_NandEraseBlock0();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_hw_init                                                   */
-+/* \brief NandFlash HW init                                                   */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc nand_pio[] = {
-+              {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
-+              {"NANDCS",  AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
-+              {(char *) 0, 0, 0,  PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
-+                  
-+      /* Configure SMC CS3 */
-+      writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
-+      writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
-+      writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE)                                                , AT91C_BASE_SMC + SMC_CYCLE3);
-+      writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE | 
-+              AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF)                                                , AT91C_BASE_SMC + SMC_CTRL3);
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(nand_pio);
-+      
-+      nand_recovery();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_16bits_dbw_init                                               */
-+/* \brief Configure SMC in 16 bits mode                                               */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_16bits_dbw_init(void)
-+{
-+      writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_8bits_dbw_init                                                */
-+/* \brief Configure SMC in 8 bits mode                                                */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_8bits_dbw_init(void)
-+{
-+      writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+#endif /* #ifdef CFG_NANDFLASH */
-diff --git a/crt0_gnu.S b/crt0_gnu.S
-index 042b617..c6cd49d 100644
---- a/crt0_gnu.S
-+++ b/crt0_gnu.S
-@@ -106,6 +106,12 @@ _relocate_to_sram:
- #endif /* CFG_NORFLASH */
- _setup_clocks:
-+/* Test if main osc is bypassed */
-+      ldr     r0,=AT91C_PMC_MOR
-+      ldr     r1, [r0]
-+      ldr     r2,=AT91C_CKGR_OSCBYPASS 
-+      ands    r1, r1, r2
-+      bne     _init_data      /* branch if OSCBYPASS=1 */
- /* Test if main oscillator is enabled */
-       ldr     r0,=AT91C_PMC_SR
-       ldr     r1, [r0]
-diff --git a/include/part.h b/include/part.h
-index ba5985a..ab79af1 100644
---- a/include/part.h
-+++ b/include/part.h
-@@ -46,7 +46,11 @@
- #ifdef AT91SAM9G20
- #include "AT91SAM9260_inc.h"
--#include "at91sam9g20ek.h"
-+      #ifdef at91sam9g20ek
-+      #include "at91sam9g20ek.h"
-+      #elif tny_a9g20_lpw
-+      #include "tny-a9g20-lpw.h"
-+      #endif
- #endif
- #ifdef AT91SAM9261
--- 
-1.7.9.5
-
diff --git a/board/calao/tny-a9g20-lpw/linux-3.9.config b/board/calao/tny-a9g20-lpw/linux-3.9.config
deleted file mode 100644 (file)
index 797c15a..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_BLK_DEV_INITRD=y
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-CONFIG_KALLSYMS_ALL=y
-CONFIG_EMBEDDED=y
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_LBDAF is not set
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_ARCH_AT91=y
-CONFIG_SOC_AT91SAM9260=y
-CONFIG_SOC_AT91SAM9263=y
-CONFIG_SOC_AT91SAM9G45=y
-CONFIG_SOC_AT91SAM9X5=y
-CONFIG_SOC_AT91SAM9N12=y
-CONFIG_MACH_AT91SAM_DT=y
-CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
-CONFIG_AT91_TIMER_HZ=128
-CONFIG_AEABI=y
-# CONFIG_OABI_COMPAT is not set
-CONFIG_UACCESS_WITH_MEMCPY=y
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_ARM_APPENDED_DTB=y
-CONFIG_ARM_ATAG_DTB_COMPAT=y
-CONFIG_CMDLINE="console=ttyS0,115200 initrd=0x21100000,25165824 root=/dev/ram0 rw"
-CONFIG_KEXEC=y
-CONFIG_AUTO_ZRELADDR=y
-# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_PNP=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_DIAG is not set
-CONFIG_IPV6=y
-# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET6_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET6_XFRM_MODE_BEET is not set
-CONFIG_IPV6_SIT_6RD=y
-# CONFIG_WIRELESS is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-# CONFIG_STANDALONE is not set
-# CONFIG_PREVENT_FIRMWARE_BUILD is not set
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ATMEL=y
-CONFIG_MTD_UBI=y
-CONFIG_MTD_UBI_GLUEBI=y
-CONFIG_PROC_DEVICETREE=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_RAM=y
-CONFIG_BLK_DEV_RAM_COUNT=4
-CONFIG_BLK_DEV_RAM_SIZE=8192
-CONFIG_ATMEL_PWM=y
-CONFIG_ATMEL_TCLIB=y
-CONFIG_EEPROM_93CX6=m
-CONFIG_SCSI=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_MULTI_LUN=y
-# CONFIG_SCSI_LOWLEVEL is not set
-CONFIG_NETDEVICES=y
-CONFIG_MII=y
-CONFIG_MACB=y
-# CONFIG_NET_VENDOR_BROADCOM is not set
-# CONFIG_NET_VENDOR_FARADAY is not set
-# CONFIG_NET_VENDOR_INTEL is not set
-# CONFIG_NET_VENDOR_MARVELL is not set
-# CONFIG_NET_VENDOR_MICREL is not set
-# CONFIG_NET_VENDOR_NATSEMI is not set
-# CONFIG_NET_VENDOR_SEEQ is not set
-# CONFIG_NET_VENDOR_SMSC is not set
-# CONFIG_NET_VENDOR_STMICRO is not set
-CONFIG_DAVICOM_PHY=y
-CONFIG_MICREL_PHY=y
-# CONFIG_WLAN is not set
-CONFIG_INPUT_POLLDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=480
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=272
-CONFIG_INPUT_JOYDEV=y
-CONFIG_INPUT_EVDEV=y
-# CONFIG_KEYBOARD_ATKBD is not set
-CONFIG_KEYBOARD_GPIO=y
-# CONFIG_INPUT_MOUSE is not set
-CONFIG_INPUT_TOUCHSCREEN=y
-# CONFIG_SERIO is not set
-CONFIG_LEGACY_PTY_COUNT=4
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_I2C=y
-CONFIG_I2C_GPIO=y
-CONFIG_SPI=y
-CONFIG_SPI_ATMEL=y
-# CONFIG_HWMON is not set
-CONFIG_WATCHDOG=y
-CONFIG_AT91SAM9X_WATCHDOG=y
-CONFIG_SSB=m
-CONFIG_FB=y
-CONFIG_FB_MODE_HELPERS=y
-CONFIG_FB_ATMEL=y
-CONFIG_BACKLIGHT_LCD_SUPPORT=y
-# CONFIG_LCD_CLASS_DEVICE is not set
-CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_ATMEL_LCDC=y
-# CONFIG_BACKLIGHT_GENERIC is not set
-CONFIG_FRAMEBUFFER_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-CONFIG_FONTS=y
-CONFIG_FONT_8x8=y
-CONFIG_FONT_ACORN_8x8=y
-CONFIG_FONT_MINI_4x6=y
-CONFIG_LOGO=y
-CONFIG_USB=y
-CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_ACM=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_SERIAL=y
-CONFIG_USB_SERIAL_GENERIC=y
-CONFIG_USB_SERIAL_FTDI_SIO=y
-CONFIG_USB_SERIAL_PL2303=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_AT91=m
-CONFIG_USB_ETH=m
-CONFIG_USB_GADGETFS=m
-CONFIG_USB_CDC_COMPOSITE=m
-CONFIG_USB_G_ACM_MS=m
-CONFIG_USB_G_MULTI=m
-CONFIG_USB_G_MULTI_CDC=y
-CONFIG_MMC=y
-CONFIG_MMC_ATMELMCI=y
-CONFIG_MMC_SPI=y
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_TIMER=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-CONFIG_LEDS_TRIGGER_GPIO=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_AT91RM9200=y
-CONFIG_RTC_DRV_AT91SAM9=y
-CONFIG_DMADEVICES=y
-# CONFIG_IOMMU_SUPPORT is not set
-CONFIG_EXT2_FS=y
-CONFIG_FANOTIFY=y
-CONFIG_VFAT_FS=y
-CONFIG_TMPFS=y
-CONFIG_UBIFS_FS=y
-CONFIG_UBIFS_FS_ADVANCED_COMPR=y
-CONFIG_NFS_FS=y
-CONFIG_ROOT_NFS=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_STRIP_ASM_SYMS=y
-CONFIG_DEBUG_FS=y
-# CONFIG_SCHED_DEBUG is not set
-# CONFIG_DEBUG_BUGVERBOSE is not set
-# CONFIG_FTRACE is not set
-CONFIG_DEBUG_USER=y
-CONFIG_CRYPTO_ECB=y
-CONFIG_CRYPTO_ARC4=y
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-CONFIG_CRYPTO_USER_API_HASH=m
-CONFIG_CRYPTO_USER_API_SKCIPHER=m
-# CONFIG_CRYPTO_HW is not set
-CONFIG_CRC_CCITT=m
-CONFIG_AVERAGE=y
diff --git a/board/calao/usb-a9260/at91bootstrap-1.16-usb-a9260.patch b/board/calao/usb-a9260/at91bootstrap-1.16-usb-a9260.patch
deleted file mode 100644 (file)
index 1393677..0000000
+++ /dev/null
@@ -1,603 +0,0 @@
-From 43e8c90f13806405bde8eaaf3a956d0ddc806f64 Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Tue, 2 Oct 2012 09:19:15 +0200
-Subject: [PATCH] Add support for the USB-A9260
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- board/usb_a9260/nandflash/Makefile    |  122 ++++++++++++++
- board/usb_a9260/nandflash/usb-a9260.h |  109 ++++++++++++
- board/usb_a9260/usb_a9260.c           |  298 +++++++++++++++++++++++++++++++++
- crt0_gnu.S                            |    7 +
- include/part.h                        |    6 +-
- 5 files changed, 541 insertions(+), 1 deletion(-)
- create mode 100644 board/usb_a9260/nandflash/Makefile
- create mode 100644 board/usb_a9260/nandflash/usb-a9260.h
- create mode 100644 board/usb_a9260/usb_a9260.c
-
-diff --git a/board/usb_a9260/nandflash/Makefile b/board/usb_a9260/nandflash/Makefile
-new file mode 100644
-index 0000000..02f4b50
---- /dev/null
-+++ b/board/usb_a9260/nandflash/Makefile
-@@ -0,0 +1,122 @@
-+# TODO: set this appropriately for your local toolchain
-+ifndef ERASE_FCT
-+ERASE_FCT=rm -f
-+endif
-+ifndef CROSS_COMPILE
-+CROSS_COMPILE=arm-elf-
-+endif
-+
-+TOOLCHAIN=gcc
-+
-+BOOTSTRAP_PATH=../../..
-+
-+# NandFlashBoot Configuration for USB-A9260
-+
-+# Target name (case sensitive!!!)
-+TARGET=AT91SAM9260
-+# Board name (case sensitive!!!)
-+BOARD=usb_a9260
-+# Link Address and Top_of_Memory
-+LINK_ADDR=0x200000
-+TOP_OF_MEMORY=0x301000
-+# Name of current directory
-+PROJECT=nandflash
-+
-+ifndef BOOT_NAME
-+BOOT_NAME=$(PROJECT)_$(BOARD)
-+endif
-+
-+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+
-+AS=$(CROSS_COMPILE)gcc
-+CC=$(CROSS_COMPILE)gcc
-+LD=$(CROSS_COMPILE)gcc
-+NM= $(CROSS_COMPILE)nm
-+SIZE=$(CROSS_COMPILE)size
-+OBJCOPY=$(CROSS_COMPILE)objcopy
-+OBJDUMP=$(CROSS_COMPILE)objdump
-+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
-+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
-+
-+# Linker flags.
-+#  -Wl,...:     tell GCC to pass this to linker.
-+#    -Map:      create map file
-+#    --cref:    add cross reference to map file
-+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
-+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
-+OBJS=crt0_gnu.o
-+
-+endif
-+
-+OBJS+=\
-+      $(BOARD).o \
-+      main.o \
-+      gpio.o \
-+      pmc.o \
-+      debug.o \
-+      sdramc.o \
-+      nandflash.o \
-+      _udivsi3.o \
-+      _umodsi3.o \
-+      div0.o \
-+      udiv.o \
-+      string.o
-+
-+
-+rebuild: clean all
-+
-+all:  $(BOOT_NAME)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+$(BOOT_NAME): $(OBJS)
-+      $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
-+      $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
-+endif
-+
-+
-+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
-+
-+main.o: $(BOOTSTRAP_PATH)/main.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
-+
-+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
-+
-+pmc.o:  $(BOOTSTRAP_PATH)/driver/pmc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
-+
-+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
-+
-+sdramc.o:  $(BOOTSTRAP_PATH)/driver/sdramc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
-+
-+dataflash.o:  $(BOOTSTRAP_PATH)/driver/dataflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
-+
-+nandflash.o:  $(BOOTSTRAP_PATH)/driver/nandflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
-+
-+crt0_gnu.o:  $(BOOTSTRAP_PATH)/crt0_gnu.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
-+
-+div0.o:  $(BOOTSTRAP_PATH)/lib/div0.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
-+
-+string.o:  $(BOOTSTRAP_PATH)/lib/string.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
-+
-+udiv.o:  $(BOOTSTRAP_PATH)/lib/udiv.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
-+
-+_udivsi3.o:  $(BOOTSTRAP_PATH)/lib/_udivsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
-+
-+_umodsi3.o:  $(BOOTSTRAP_PATH)/lib/_umodsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
-+
-+clean:
-+      $(ERASE_FCT) *.o *.bin *.elf *.map
-diff --git a/board/usb_a9260/nandflash/usb-a9260.h b/board/usb_a9260/nandflash/usb-a9260.h
-new file mode 100644
-index 0000000..2aaf759
---- /dev/null
-+++ b/board/usb_a9260/nandflash/usb-a9260.h
-@@ -0,0 +1,109 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb-a9260.h
-+ * Object              :
-+ * Creation            : GH Oct 1th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#ifndef _USB_A9260_H
-+#define _USB_A9260_H
-+
-+/* ******************************************************************* */
-+/* PMC Settings                                                        */
-+/*                                                                     */
-+/* The main oscillator is enabled as soon as possible in the c_startup */
-+/* and MCK is switched on the main oscillator.                         */
-+/* PLL initialization is done later in the hw_init() function          */
-+/* ******************************************************************* */
-+#define MASTER_CLOCK          (180000000/2)
-+#define PLL_LOCK_TIMEOUT      1000000
-+
-+#define PLLA_SETTINGS 0x20593F06
-+#define PLLB_SETTINGS 0x10483F0E
-+
-+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
-+#define MCKR_SETTINGS         (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
-+#define MCKR_CSS_SETTINGS     (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
-+
-+/* ******************************************************************* */
-+/* NandFlash Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_SMARTMEDIA_BASE 0x40000000
-+
-+#define AT91_SMART_MEDIA_ALE    (1 << 21)     /* our ALE is AD21 */
-+#define AT91_SMART_MEDIA_CLE    (1 << 22)     /* our CLE is AD22 */
-+
-+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
-+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
-+
-+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
-+
-+
-+/* ******************************************************************** */
-+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 90000000.*/
-+/* Please refer to SMC section in AT91SAM datasheet to learn how      */
-+/* to generate these values.                                          */
-+/* ******************************************************************** */
-+#define AT91C_SM_NWE_SETUP    (1 << 0)
-+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
-+#define AT91C_SM_NRD_SETUP    (1 << 16)
-+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
-+  
-+#define AT91C_SM_NWE_PULSE    (3 << 0)
-+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
-+#define AT91C_SM_NRD_PULSE    (3 << 16)
-+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
-+  
-+#define AT91C_SM_NWE_CYCLE    (5 << 0)
-+#define AT91C_SM_NRD_CYCLE    (5 << 16)
-+#define AT91C_SM_TDF          (2 << 16)
-+
-+/* ******************************************************************* */
-+/* BootStrap Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define IMG_ADDRESS           0x20000         /* Image Address in NandFlash */
-+#define       IMG_SIZE                0x40000         /* Image Size in NandFlash    */
-+
-+#define MACH_TYPE             0x6AD           /* USB-A9260 */
-+#define JUMP_ADDR             0x23F00000      /* Final Jump Address         */
-+
-+/* ******************************************************************* */
-+/* Application Settings                                                */
-+/* ******************************************************************* */
-+#undef CFG_DEBUG
-+#undef CFG_DATAFLASH
-+
-+#define CFG_NANDFLASH
-+#undef        NANDFLASH_SMALL_BLOCKS  /* NANDFLASH_LARGE_BLOCKS used instead */
-+
-+#define CFG_HW_INIT
-+#define CFG_SDRAM
-+
-+#endif        /* _USB_A9260_H */
-diff --git a/board/usb_a9260/usb_a9260.c b/board/usb_a9260/usb_a9260.c
-new file mode 100644
-index 0000000..de30f0b
---- /dev/null
-+++ b/board/usb_a9260/usb_a9260.c
-@@ -0,0 +1,298 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaiimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb_a9260.c
-+ * Object              :
-+ * Creation            : GH Oct 1th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#include "../../include/part.h"
-+#include "../../include/gpio.h"
-+#include "../../include/pmc.h"
-+#include "../../include/debug.h"
-+#include "../../include/sdramc.h"
-+#include "../../include/main.h"
-+#ifdef CFG_NANDFLASH
-+#include "../../include/nandflash.h"
-+#endif
-+#ifdef CFG_DATAFLASH
-+#include "../../include/dataflash.h"
-+#endif
-+
-+static inline unsigned int get_cp15(void)
-+{
-+      unsigned int value;
-+      __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
-+      return value;
-+}
-+
-+static inline void set_cp15(unsigned int value)
-+{
-+      __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
-+}
-+
-+#ifdef CFG_HW_INIT
-+/*----------------------------------------------------------------------------*/
-+/* \fn    hw_init                                                           */
-+/* \brief This function performs very low level HW initialization           */
-+/* This function is invoked as soon as possible during the c_startup        */
-+/* The bss segment must be initialized                                              */
-+/*----------------------------------------------------------------------------*/
-+void hw_init(void)
-+{
-+      unsigned int cp15;
-+      
-+      /* Configure PIOs */
-+      const struct pio_desc hw_pio[] = {
-+#ifdef CFG_DEBUG
-+              {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Disable watchdog */
-+      writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
-+
-+      /* At this stage the main oscillator is supposed to be enabled
-+       * PCK = MCK = MOSC */
-+
-+      /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
-+      pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* PCK = PLLA = 2 * MCK */
-+      pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
-+      /* Switch MCK on PLLA output */
-+      pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure PLLB */
-+      pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure CP15 */
-+      cp15 = get_cp15();
-+      cp15 |= I_CACHE;
-+      set_cp15(cp15);
-+
-+      /* Configure the PIO controller */
-+      pio_setup(hw_pio);
-+
-+      /* Configure the EBI Slave Slot Cycle to 64 */
-+      writel( (readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
-+
-+#ifdef CFG_DEBUG
-+      /* Enable Debug messages on the DBGU */
-+      dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
-+
-+      dbg_print("Start AT91Bootstrap...\n\r");
-+#endif /* CFG_DEBUG */
-+
-+#ifdef CFG_SDRAM
-+      /* Initialize the matrix */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS1A_SDRAMC, AT91C_BASE_CCFG + CCFG_EBICSA);
-+
-+      /* Configure SDRAM Controller */
-+      sdram_init(     AT91C_SDRAMC_NC_9  |
-+                              AT91C_SDRAMC_NR_13 |
-+                              AT91C_SDRAMC_CAS_2 |
-+                              AT91C_SDRAMC_NB_4_BANKS |
-+                              AT91C_SDRAMC_DBW_32_BITS |
-+                              AT91C_SDRAMC_TWR_2 |
-+                              AT91C_SDRAMC_TRC_7 |
-+                              AT91C_SDRAMC_TRP_2 |
-+                              AT91C_SDRAMC_TRCD_2 |
-+                              AT91C_SDRAMC_TRAS_5 |
-+                              AT91C_SDRAMC_TXSR_8,            /* Control Register */
-+                              (MASTER_CLOCK * 7)/1000000,     /* Refresh Timer Register */
-+                              AT91C_SDRAMC_MD_SDRAM);         /* SDRAM (no low power)   */ 
-+
-+
-+#endif /* CFG_SDRAM */
-+}
-+#endif /* CFG_HW_INIT */
-+
-+#ifdef CFG_SDRAM
-+/*------------------------------------------------------------------------------*/
-+/* \fn    sdramc_hw_init                                                      */
-+/* \brief This function performs SDRAMC HW initialization                     */
-+/*------------------------------------------------------------------------------*/
-+void sdramc_hw_init(void)
-+{
-+      /* Configure PIOs */
-+/*    const struct pio_desc sdramc_pio[] = {
-+              {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+*/
-+      /* Configure the SDRAMC PIO controller to output PCK0 */
-+/*    pio_setup(sdramc_pio); */
-+
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
-+
-+}
-+#endif /* CFG_SDRAM */
-+
-+#ifdef CFG_DATAFLASH
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_recovery                                                         */
-+/* \brief This function erases DataFlash Page 0 if USR PB is pressed          */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+void df_recovery(AT91PS_DF pDf)
-+{
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb_pio[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb_pio);
-+      
-+      /* If USR PB is pressed during Boot sequence */
-+      /* Erase DataFlash Page 0*/
-+      if ( !pio_get_value(AT91C_PIN_PB(10)) )
-+              df_page_erase(pDf, 0);
-+#endif
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_hw_init                                                          */
-+/* \brief This function performs DataFlash HW initialization                  */
-+/*------------------------------------------------------------------------------*/
-+void df_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc df_pio[] = {
-+              {"MISO",  AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"MOSI",  AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"SPCK",  AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
-+              {"NPCS0", AT91C_PIN_PA(3), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      pio_setup(df_pio);
-+}
-+#endif /* CFG_DATAFLASH */
-+
-+
-+
-+#ifdef CFG_NANDFLASH
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nand_recovery                                               */
-+/* \brief This function erases NandFlash Block 0 if USR PB is pressed                 */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+static void nand_recovery(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb_pio[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb_pio);
-+      
-+      /* If USR PB is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if (!pio_get_value(AT91C_PIN_PB(10)) )
-+              AT91F_NandEraseBlock0();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_hw_init                                                   */
-+/* \brief NandFlash HW init                                                   */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc nand_pio[] = {
-+              {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
-+              {"NANDCS",  AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
-+              {(char *) 0, 0, 0,  PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
-+                  
-+      /* Configure SMC CS3 */
-+      writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
-+      writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
-+      writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE)                                                , AT91C_BASE_SMC + SMC_CYCLE3);
-+      writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE | 
-+              AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF)                                                , AT91C_BASE_SMC + SMC_CTRL3);
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(nand_pio);
-+      
-+      nand_recovery();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_16bits_dbw_init                                               */
-+/* \brief Configure SMC in 16 bits mode                                               */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_16bits_dbw_init(void)
-+{
-+      writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_8bits_dbw_init                                                */
-+/* \brief Configure SMC in 8 bits mode                                                */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_8bits_dbw_init(void)
-+{
-+      writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+
-+#endif /* #ifdef CFG_NANDFLASH */
-diff --git a/crt0_gnu.S b/crt0_gnu.S
-index 042b617..002feef 100644
---- a/crt0_gnu.S
-+++ b/crt0_gnu.S
-@@ -106,6 +106,13 @@ _relocate_to_sram:
- #endif /* CFG_NORFLASH */
- _setup_clocks:
-+/* Test if main osc is bypassed */
-+      ldr     r0,=AT91C_PMC_MOR
-+      ldr     r1, [r0]
-+      ldr     r2,=AT91C_CKGR_OSCBYPASS 
-+      ands    r1, r1, r2
-+      bne     _init_data      /* branch if OSCBYPASS=1 */
-+
- /* Test if main oscillator is enabled */
-       ldr     r0,=AT91C_PMC_SR
-       ldr     r1, [r0]
-diff --git a/include/part.h b/include/part.h
-index ba5985a..212789f 100644
---- a/include/part.h
-+++ b/include/part.h
-@@ -35,7 +35,11 @@
- #ifdef AT91SAM9260
- #include "AT91SAM9260_inc.h"
--#include "at91sam9260ek.h"
-+      #ifdef at91sam9260ek
-+      #include "at91sam9260ek.h"
-+      #elif usb_a9260
-+      #include "usb-a9260.h"
-+      #endif
- #endif
- #ifdef AT91SAM9XE
--- 
-1.7.9.5
-
diff --git a/board/calao/usb-a9260/linux-3.7.4.config b/board/calao/usb-a9260/linux-3.7.4.config
deleted file mode 100644 (file)
index c466bdc..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-CONFIG_EXPERIMENTAL=y
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_ARCH_AT91=y
-CONFIG_ARCH_AT91SAM9260=y
-CONFIG_MACH_USB_A9260=y
-CONFIG_AT91_SLOW_CLOCK=y
-# CONFIG_ARM_THUMB is not set
-CONFIG_AEABI=y
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="mem=64M console=ttyS0,115200"
-CONFIG_FPE_NWFPE=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_IPV6 is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_DATAFLASH=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ATMEL=y
-CONFIG_MTD_UBI=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_SCSI=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_NETDEVICES=y
-CONFIG_MII=y
-CONFIG_MACB=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_EVDEV=y
-CONFIG_INPUT_EVBUG=y
-# CONFIG_KEYBOARD_ATKBD is not set
-CONFIG_KEYBOARD_GPIO=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_SPI=y
-CONFIG_SPI_ATMEL=y
-# CONFIG_HWMON is not set
-# CONFIG_USB_HID is not set
-CONFIG_USB=y
-CONFIG_USB_MON=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_ETH=m
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-CONFIG_EXT2_FS=y
-CONFIG_FUSE_FS=m
-CONFIG_VFAT_FS=y
-CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_UBIFS_FS=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_DEBUG_KERNEL=y
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_LL=y
diff --git a/board/calao/usb-a9263/at91bootstrap-1.16-usb-a9263.patch b/board/calao/usb-a9263/at91bootstrap-1.16-usb-a9263.patch
deleted file mode 100644 (file)
index 5798930..0000000
+++ /dev/null
@@ -1,851 +0,0 @@
-From 74796655212d321f50ab89e8c5570245901f4cba Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Thu, 5 Jul 2012 18:44:07 +0200
-Subject: [PATCH] Add support for the Calao-systems USB-A9263
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- board/usb_a9263/dataflash/Makefile    |  115 +++++++++++++
- board/usb_a9263/dataflash/usb-a9263.h |   97 +++++++++++
- board/usb_a9263/nandflash/Makefile    |  117 ++++++++++++++
- board/usb_a9263/nandflash/usb-a9263.h |  116 +++++++++++++
- board/usb_a9263/usb_a9263.c           |  285 +++++++++++++++++++++++++++++++++
- crt0_gnu.S                            |    7 +
- driver/dataflash.c                    |    6 +-
- include/part.h                        |    6 +-
- 8 files changed, 745 insertions(+), 4 deletions(-)
- create mode 100644 board/usb_a9263/dataflash/Makefile
- create mode 100644 board/usb_a9263/dataflash/usb-a9263.h
- create mode 100644 board/usb_a9263/nandflash/Makefile
- create mode 100644 board/usb_a9263/nandflash/usb-a9263.h
- create mode 100644 board/usb_a9263/usb_a9263.c
-
-diff --git a/board/usb_a9263/dataflash/Makefile b/board/usb_a9263/dataflash/Makefile
-new file mode 100644
-index 0000000..332685e
---- /dev/null
-+++ b/board/usb_a9263/dataflash/Makefile
-@@ -0,0 +1,115 @@
-+# TODO: set this appropriately for your local toolchain
-+#SHELL=C:\CYGWIN_REP\dwn_071004\bin\BASH.exe
-+CROSS_COMPILE=arm-elf-
-+#CROSS_COMPILE = arm-softfloat-linux-gnu-
-+
-+TOOLCHAIN=gcc
-+
-+BOOTSTRAP_PATH=../../..
-+
-+# DataFlashBoot Configuration for USB-A9263
-+
-+# Target name (case sensitive!!!)
-+TARGET=AT91SAM9263
-+# Board name (case sensitive!!!)
-+BOARD=usb_a9263
-+# Link Address and Top_of_Memory
-+LINK_ADDR=0x300000
-+TOP_OF_MEMORY=0x314000
-+# Name of current directory
-+PROJECT=dataflash
-+
-+ifndef BOOT_NAME
-+BOOT_NAME=$(PROJECT)_$(BOARD)
-+endif
-+
-+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+
-+AS=$(CROSS_COMPILE)gcc
-+CC=$(CROSS_COMPILE)gcc
-+LD=$(CROSS_COMPILE)gcc
-+NM= $(CROSS_COMPILE)nm
-+SIZE=$(CROSS_COMPILE)size
-+OBJCOPY=$(CROSS_COMPILE)objcopy
-+OBJDUMP=$(CROSS_COMPILE)objdump
-+CCFLAGS=-g -mcpu=arm9 -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
-+ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
-+
-+# Linker flags.
-+#  -Wl,...:     tell GCC to pass this to linker.
-+#    -Map:      create map file
-+#    --cref:    add cross reference to map file
-+LDFLAGS+=-nostartfiles -nostdlib  -Wl,-Map=$(BOOT_NAME).map,--cref
-+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
-+OBJS=crt0_gnu.o
-+
-+endif
-+
-+OBJS+=\
-+      $(BOARD).o \
-+      main.o \
-+      gpio.o \
-+      pmc.o \
-+      debug.o \
-+      sdramc.o \
-+      dataflash.o \
-+      _udivsi3.o \
-+      _umodsi3.o \
-+      div0.o \
-+      udiv.o \
-+      string.o
-+
-+rebuild: clean all
-+
-+all:  $(BOOT_NAME)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+$(BOOT_NAME): $(OBJS)
-+      $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
-+      $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
-+endif
-+      
-+      
-+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
-+
-+main.o: $(BOOTSTRAP_PATH)/main.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
-+
-+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
-+
-+pmc.o:  $(BOOTSTRAP_PATH)/driver/pmc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
-+
-+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
-+
-+sdramc.o:  $(BOOTSTRAP_PATH)/driver/sdramc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
-+
-+dataflash.o:  $(BOOTSTRAP_PATH)/driver/dataflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
-+
-+crt0_gnu.o:  $(BOOTSTRAP_PATH)/crt0_gnu.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
-+
-+div0.o:  $(BOOTSTRAP_PATH)/lib/div0.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
-+
-+string.o:  $(BOOTSTRAP_PATH)/lib/string.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
-+
-+udiv.o:  $(BOOTSTRAP_PATH)/lib/udiv.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
-+
-+_udivsi3.o:  $(BOOTSTRAP_PATH)/lib/_udivsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
-+
-+_umodsi3.o:  $(BOOTSTRAP_PATH)/lib/_umodsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
-+
-+clean:
-+      rm -f *.o *.bin *.elf *.map
-diff --git a/board/usb_a9263/dataflash/usb-a9263.h b/board/usb_a9263/dataflash/usb-a9263.h
-new file mode 100644
-index 0000000..40a3af8
---- /dev/null
-+++ b/board/usb_a9263/dataflash/usb-a9263.h
-@@ -0,0 +1,97 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb-a9263.h
-+ * Object              :
-+ * Creation            : GH Jun 28th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#ifndef _USB_A9263_H
-+#define _USB_A9263_H
-+
-+/* ******************************************************************* */
-+/* PMC Settings                                                        */
-+/*                                                                     */
-+/* The main oscillator is enabled as soon as possible in the c_startup */
-+/* and MCK is switched on the main oscillator.                         */
-+/* PLL initialization is done later in the hw_init() function          */
-+/* ******************************************************************* */
-+#define MASTER_CLOCK          (180000000/2)
-+#define PLL_LOCK_TIMEOUT      1000000
-+
-+#define PLLA_SETTINGS 0x20593F06
-+#define PLLB_SETTINGS 0x10483F0E
-+
-+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
-+#define MCKR_SETTINGS         (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
-+#define MCKR_CSS_SETTINGS     (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
-+
-+/* ******************************************************************* */
-+/* DataFlash Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_BASE_SPI        AT91C_BASE_SPI0
-+#define AT91C_ID_SPI  AT91C_ID_SPI0
-+
-+/* SPI CLOCK */
-+#define AT91C_SPI_CLK                  8000000
-+/* AC characteristics */
-+/* DLYBS = tCSS= 250ns min and DLYBCT = tCSH = 250ns */
-+#define DATAFLASH_TCSS                (0x1a << 16)    /* 250ns min (tCSS) <=> 12/48000000 = 250ns */
-+#define DATAFLASH_TCHS                (0x1 << 24)     /* 250ns min (tCSH) <=> (64*1+SCBR)/(2*48000000) */
-+
-+#define DF_CS_SETTINGS                (AT91C_SPI_NCPHA | (AT91C_SPI_DLYBS & DATAFLASH_TCSS) | (AT91C_SPI_DLYBCT & DATAFLASH_TCHS) | ((MASTER_CLOCK / AT91C_SPI_CLK) << 8))
-+
-+/* ******************************************************************* */
-+/* SDRAMC Settings                                                     */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_BASE_SDRAMC     AT91C_BASE_SDRAMC0
-+#define AT91C_EBI_SDRAM               AT91C_EBI0_SDRAM
-+
-+/* ******************************************************************* */
-+/* BootStrap Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_SPI_PCS_DATAFLASH               AT91C_SPI_PCS0_DATAFLASH        /* Boot on SPI NCS0 */
-+
-+#define IMG_ADDRESS                   0x4000                  /* Image Address in DataFlash */
-+#define       IMG_SIZE                        0x40000                 /* Image Size in DataFlash    */
-+
-+#define MACH_TYPE                     0x6AE                   /* USB-A9263 */
-+#define JUMP_ADDR                     0x23F00000              /* Final Jump Address         */
-+
-+/* ******************************************************************* */
-+/* Application Settings                                                */
-+/* ******************************************************************* */
-+#define CFG_HW_INIT
-+#define CFG_SDRAM
-+#undef        CFG_DEBUG
-+
-+#define CFG_DATAFLASH
-+
-+#endif        /* _USB_A9263_H */
-diff --git a/board/usb_a9263/nandflash/Makefile b/board/usb_a9263/nandflash/Makefile
-new file mode 100644
-index 0000000..c453098
---- /dev/null
-+++ b/board/usb_a9263/nandflash/Makefile
-@@ -0,0 +1,117 @@
-+# TODO: set this appropriately for your local toolchain
-+#SHELL=C:\CYGWIN_REP\dwn_071004\bin\BASH.exe
-+CROSS_COMPILE=arm-elf-
-+
-+TOOLCHAIN=gcc
-+
-+BOOTSTRAP_PATH=../../..
-+
-+# NandFlashBoot Configuration for USB-A9263
-+
-+# Target name (case sensitive!!!)
-+TARGET=AT91SAM9263
-+# Board name (case sensitive!!!)
-+BOARD=usb_a9263
-+# Link Address and Top_of_Memory
-+LINK_ADDR=0x300000
-+TOP_OF_MEMORY=0x314000
-+# Name of current directory
-+PROJECT=nandflash
-+
-+ifndef BOOT_NAME
-+BOOT_NAME=$(PROJECT)_$(BOARD)
-+endif
-+
-+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+
-+AS=$(CROSS_COMPILE)gcc
-+CC=$(CROSS_COMPILE)gcc
-+LD=$(CROSS_COMPILE)gcc
-+NM= $(CROSS_COMPILE)nm
-+SIZE=$(CROSS_COMPILE)size
-+OBJCOPY=$(CROSS_COMPILE)objcopy
-+OBJDUMP=$(CROSS_COMPILE)objdump
-+CCFLAGS=-g -mcpu=arm9 -O0 -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
-+ASFLAGS=-g -mcpu=arm9 -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
-+
-+# Linker flags.
-+#  -Wl,...:     tell GCC to pass this to linker.
-+#    -Map:      create map file
-+#    --cref:    add cross reference to map file
-+LDFLAGS+=-nostartfiles -nostdlib  -Wl,-Map=$(BOOT_NAME).map,--cref
-+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
-+OBJS=crt0_gnu.o
-+
-+endif
-+
-+OBJS+=\
-+      $(BOARD).o \
-+      main.o \
-+      gpio.o \
-+      pmc.o \
-+      debug.o \
-+      sdramc.o \
-+      nandflash.o \
-+      _udivsi3.o \
-+      _umodsi3.o \
-+      div0.o \
-+      udiv.o \
-+      string.o
-+
-+rebuild: clean all
-+
-+all:  $(BOOT_NAME)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+$(BOOT_NAME): $(OBJS)
-+      $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
-+      $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
-+endif
-+      
-+      
-+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
-+
-+main.o: $(BOOTSTRAP_PATH)/main.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
-+
-+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
-+
-+pmc.o:  $(BOOTSTRAP_PATH)/driver/pmc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
-+
-+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
-+
-+sdramc.o:  $(BOOTSTRAP_PATH)/driver/sdramc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
-+
-+dataflash.o:  $(BOOTSTRAP_PATH)/driver/dataflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
-+
-+nandflash.o:  $(BOOTSTRAP_PATH)/driver/nandflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
-+
-+crt0_gnu.o:  $(BOOTSTRAP_PATH)/crt0_gnu.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
-+
-+div0.o:  $(BOOTSTRAP_PATH)/lib/div0.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
-+
-+string.o:  $(BOOTSTRAP_PATH)/lib/string.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
-+
-+udiv.o:  $(BOOTSTRAP_PATH)/lib/udiv.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
-+
-+_udivsi3.o:  $(BOOTSTRAP_PATH)/lib/_udivsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
-+
-+_umodsi3.o:  $(BOOTSTRAP_PATH)/lib/_umodsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
-+
-+clean:
-+      rm -f *.o *.bin *.elf *.map
-diff --git a/board/usb_a9263/nandflash/usb-a9263.h b/board/usb_a9263/nandflash/usb-a9263.h
-new file mode 100644
-index 0000000..24e2cf1
---- /dev/null
-+++ b/board/usb_a9263/nandflash/usb-a9263.h
-@@ -0,0 +1,116 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb-a9263.h
-+ * Object              :
-+ * Creation            : GH Jun 28th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#ifndef _USB_A9263_H
-+#define _USB_A9263_H
-+
-+/* ******************************************************************* */
-+/* PMC Settings                                                        */
-+/*                                                                     */
-+/* The main oscillator is enabled as soon as possible in the c_startup */
-+/* and MCK is switched on the main oscillator.                         */
-+/* PLL initialization is done later in the hw_init() function          */
-+/* ******************************************************************* */
-+#define MASTER_CLOCK          (180000000/2)
-+#define PLL_LOCK_TIMEOUT      1000000
-+
-+#define PLLA_SETTINGS 0x20593F06
-+#define PLLB_SETTINGS 0x10483F0E
-+
-+/* Switch MCK on PLLA output PCK = PLLA = 2 * MCK */
-+#define MCKR_SETTINGS         (AT91C_PMC_PRES_CLK | AT91C_PMC_MDIV_2)
-+#define MCKR_CSS_SETTINGS     (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
-+
-+/* ******************************************************************* */
-+/* NandFlash Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_SMARTMEDIA_BASE 0x40000000
-+
-+#define AT91_SMART_MEDIA_ALE    (1 << 21)     /* our ALE is AD21 */
-+#define AT91_SMART_MEDIA_CLE    (1 << 22)     /* our CLE is AD22 */
-+
-+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOD_SODR = AT91C_PIO_PD15;} while(0)
-+#define NAND_ENABLE_CE()  do { *(volatile unsigned int *)AT91C_PIOD_CODR = AT91C_PIO_PD15;} while(0)
-+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOA_PDSR & AT91C_PIO_PA22))
-+
-+/* ******************************************************************* */
-+/* SDRAMC Settings                                                     */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_BASE_SDRAMC     AT91C_BASE_SDRAMC0
-+#define AT91C_EBI_SDRAM               AT91C_EBI0_SDRAM
-+
-+/* ******************************************************************** */
-+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 90000000. */
-+/* Please refer to SMC section in AT91SAM9x datasheet to learn how    */
-+/* to generate these values.                                          */
-+/* ******************************************************************** */
-+#define AT91C_SM_NWE_SETUP    (1 << 0)
-+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
-+#define AT91C_SM_NRD_SETUP    (1 << 16)
-+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
-+  
-+#define AT91C_SM_NWE_PULSE    (3 << 0)
-+#define AT91C_SM_NCS_WR_PULSE (3 << 8)
-+#define AT91C_SM_NRD_PULSE    (3 << 16)
-+#define AT91C_SM_NCS_RD_PULSE (3 << 24)
-+  
-+#define AT91C_SM_NWE_CYCLE    (5 << 0)
-+#define AT91C_SM_NRD_CYCLE    (5 << 16)
-+
-+#define AT91C_SM_TDF          (2 << 16)
-+
-+/* ******************************************************************* */
-+/* BootStrap Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define IMG_ADDRESS   0x20000         /* Image Address in NandFlash */
-+#define       IMG_SIZE        0x40000         /* Image Size in NandFlash    */
-+
-+#define MACH_TYPE       0x6AE                 /* USB-A9263 */
-+#define JUMP_ADDR     0x23F00000      /* Final Jump Address         */
-+
-+/* ******************************************************************* */
-+/* Application Settings                                                */
-+/* ******************************************************************* */
-+#undef CFG_DEBUG
-+#undef CFG_DATAFLASH
-+
-+#define CFG_NANDFLASH
-+#undef        NANDFLASH_SMALL_BLOCKS  /* NANDFLASH_LARGE_BLOCKS used instead */
-+
-+#define CFG_HW_INIT
-+#define CFG_SDRAM
-+
-+
-+#endif        /* _USB_A9263_H */
-diff --git a/board/usb_a9263/usb_a9263.c b/board/usb_a9263/usb_a9263.c
-new file mode 100644
-index 0000000..5630f99
---- /dev/null
-+++ b/board/usb_a9263/usb_a9263.c
-@@ -0,0 +1,285 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2006, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaiimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb_a9263.c
-+ * Object              :
-+ * Creation            : GH Jun 28th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#include "../../include/part.h"
-+#include "../../include/gpio.h"
-+#include "../../include/pmc.h"
-+#include "../../include/debug.h"
-+#include "../../include/sdramc.h"
-+#include "../../include/main.h"
-+#ifdef CFG_NANDFLASH
-+#include "../../include/nandflash.h"
-+#endif
-+#ifdef CFG_DATAFLASH
-+#include "../../include/dataflash.h"
-+#endif
-+
-+static inline unsigned int get_cp15(void)
-+{
-+      unsigned int value;
-+      __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
-+      return value;
-+}
-+
-+static inline void set_cp15(unsigned int value)
-+{
-+      __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
-+}
-+
-+
-+#ifdef CFG_HW_INIT
-+/*---------------------------------------------------------------------------- */
-+/* \fn    hw_init                                                            */
-+/* \brief This function performs very low level HW initialization            */
-+/* This function is invoked as soon as possible during the c_startup         */
-+/* The bss segment must be initialized                                               */
-+/*---------------------------------------------------------------------------- */
-+void hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc hw_pio[] = {
-+#ifdef CFG_DEBUG
-+              {"RXD", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"TXD", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Disable watchdog */
-+      writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
-+
-+      /* At this stage the main oscillator is supposed to be enabled
-+       * PCK = MCK = MOSC */
-+
-+      /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
-+      pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* PCK = PLLA = 2 * MCK */
-+      pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
-+      /* Switch MCK on PLLA output */
-+      pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+
-+      /* Configure PLLB */
-+      pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure the PIO controller to output PCK0 */
-+      pio_setup(hw_pio);
-+
-+      /* Configure the EBI0 Slave Slot Cycle to 64 */
-+      writel( (readl((AT91C_BASE_MATRIX + MATRIX_SCFG4)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG4));
-+
-+#ifdef CFG_DEBUG
-+      /* Enable Debug messages on the DBGU */
-+      dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
-+      dbg_print("Start AT91Bootstrap...\n\r");
-+#endif /* CFG_DEBUG */
-+
-+#ifdef CFG_SDRAM
-+      /* Initialize the matrix */
-+      /* VDDIOMSEL = 1 -> Memories are 3.3V powered */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBI0CSA) | (1 << 16) | AT91C_EBI_CS1A_SDRAMC, AT91C_BASE_CCFG + CCFG_EBI0CSA);
-+
-+      /* Configure SDRAM Controller */
-+      sdram_init(     AT91C_SDRAMC_NC_9  |
-+                              AT91C_SDRAMC_NR_13 |
-+                              AT91C_SDRAMC_CAS_2 |
-+                              AT91C_SDRAMC_NB_4_BANKS |
-+                              AT91C_SDRAMC_DBW_32_BITS |
-+                              AT91C_SDRAMC_TWR_2 |
-+                              AT91C_SDRAMC_TRC_7 |
-+                              AT91C_SDRAMC_TRP_2 |
-+                              AT91C_SDRAMC_TRCD_2 |
-+                              AT91C_SDRAMC_TRAS_5 |
-+                              AT91C_SDRAMC_TXSR_8,            /* Control Register       */
-+                              (MASTER_CLOCK * 7)/1000000,     /* Refresh Timer Register */
-+                              AT91C_SDRAMC_MD_SDRAM);         /* SDRAM (no low power)   */ 
-+#endif        /* CFG_SDRAM */
-+}
-+#endif /* CFG_HW_INIT */
-+
-+
-+#ifdef CFG_SDRAM
-+//*----------------------------------------------------------------------------
-+//* \fn    sdramc_hw_init
-+//* \brief This function performs SDRAMC HW initialization
-+//*----------------------------------------------------------------------------*/
-+void sdramc_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc sdramc_pio[] = {
-+              {"D16", AT91C_PIN_PD(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D17", AT91C_PIN_PD(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D18", AT91C_PIN_PD(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D19", AT91C_PIN_PD(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D20", AT91C_PIN_PD(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D21", AT91C_PIN_PD(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D22", AT91C_PIN_PD(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D23", AT91C_PIN_PD(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D24", AT91C_PIN_PD(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D25", AT91C_PIN_PD(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D26", AT91C_PIN_PD(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D27", AT91C_PIN_PD(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D28", AT91C_PIN_PD(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D29", AT91C_PIN_PD(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D30", AT91C_PIN_PD(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D31", AT91C_PIN_PD(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the SDRAMC PIO controller */
-+      pio_setup(sdramc_pio);
-+}
-+#endif
-+
-+#ifdef CFG_DATAFLASH
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_recovery                                                         */
-+/* \brief This function erases DataFlash Page 0 if USER PB is pressed                 */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+void df_recovery(AT91PS_DF pDf)
-+{
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb_pio[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb_pio);
-+      
-+      /* If USER PB is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if ( !pio_get_value(AT91C_PIN_PB(10)) )
-+              df_page_erase(pDf, 0);
-+#endif
-+}
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_hw_init                                                          */
-+/* \brief This function performs DataFlash HW initialization                  */
-+/*------------------------------------------------------------------------------*/
-+void df_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc df_pio[] = {
-+              {"MISO",  AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_B},
-+              {"MOSI",  AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_B},
-+              {"SPCK",  AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_B},
-+              {"NPCS0", AT91C_PIN_PA(5), 0, PIO_DEFAULT, PIO_PERIPH_B},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      pio_setup(df_pio);
-+}
-+#endif /* CFG_DATAFLASH */
-+
-+
-+#ifdef CFG_NANDFLASH
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nand_recovery                                                               */
-+/* \brief This function erases NandFlash Block 0 if USER PB is pressed                */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+static void nand_recovery(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb_pio[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb_pio);
-+      
-+      /* If USER PB is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if (!pio_get_value(AT91C_PIN_PB(10)) )
-+              AT91F_NandEraseBlock0();
-+}
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_hw_init                                                   */
-+/* \brief NandFlash HW init                                                   */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc nand_pio[] = {
-+              {"RDY_BSY", AT91C_PIN_PA(22), 0, PIO_PULLUP, PIO_INPUT},
-+              {"NANDCS",  AT91C_PIN_PD(15), 0, PIO_PULLUP, PIO_OUTPUT},
-+              {(char *) 0, 0, 0,  PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBI0CSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBI0CSA);
-+                  
-+      /* Configure SMC CS3 */
-+      writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC0 + SMC_SETUP3);
-+      writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC0 + SMC_PULSE3);
-+      writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE)                                                , AT91C_BASE_SMC0 + SMC_CYCLE3);
-+      writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE | 
-+              AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF)                                                , AT91C_BASE_SMC0 + SMC_CTRL3);
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOA), PMC_PCER + AT91C_BASE_PMC);
-+      writel((1 << AT91C_ID_PIOCDE), PMC_PCER + AT91C_BASE_PMC);
-+
-+      pio_setup(nand_pio);
-+
-+      nand_recovery();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_16bits_dbw_init                                               */
-+/* \brief Configure SMC in 16 bits mode                                               */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_16bits_dbw_init(void)
-+{
-+      writel(readl(AT91C_BASE_SMC0 + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC0 + SMC_CTRL3);
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_8bits_dbw_init                                                */
-+/* \brief Configure SMC in 8 bits mode                                                */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_8bits_dbw_init(void)
-+{
-+      writel((readl(AT91C_BASE_SMC0 + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC0 + SMC_CTRL3);
-+}
-+
-+#endif /* #ifdef CFG_NANDFLASH */
-+
-+
-diff --git a/crt0_gnu.S b/crt0_gnu.S
-index 042b617..002feef 100644
---- a/crt0_gnu.S
-+++ b/crt0_gnu.S
-@@ -106,6 +106,13 @@ _relocate_to_sram:
- #endif /* CFG_NORFLASH */
- _setup_clocks:
-+/* Test if main osc is bypassed */
-+      ldr     r0,=AT91C_PMC_MOR
-+      ldr     r1, [r0]
-+      ldr     r2,=AT91C_CKGR_OSCBYPASS 
-+      ands    r1, r1, r2
-+      bne     _init_data      /* branch if OSCBYPASS=1 */
-+
- /* Test if main oscillator is enabled */
-       ldr     r0,=AT91C_PMC_SR
-       ldr     r1, [r0]
-diff --git a/driver/dataflash.c b/driver/dataflash.c
-index e28e49e..4de295a 100644
---- a/driver/dataflash.c
-+++ b/driver/dataflash.c
-@@ -293,14 +293,14 @@ static int df_init (AT91PS_DF pDf)
-                       pDf->dfDescription.pages_size = 264;
-                       pDf->dfDescription.page_offset = 9;
-                       break;
--
-+*/
-               case AT45DB021B:
-                       pDf->dfDescription.pages_number = 1024;
-                       pDf->dfDescription.pages_size = 264;
-                       pDf->dfDescription.page_offset = 9;
-                       break;
--              case AT45DB041B:
-+/*            case AT45DB041B:
-                       pDf->dfDescription.pages_number = 2048;
-                       pDf->dfDescription.pages_size = 264;
-                       pDf->dfDescription.page_offset = 9;
-@@ -373,7 +373,7 @@ int load_df(unsigned int pcs, unsigned int img_addr, unsigned int img_size, unsi
-     if (!df_init(pDf))
-         return -1;
--#if defined(AT91SAM9260) || defined(AT91SAM9XE) || defined(AT91SAM9G20)
-+#if defined(AT91SAM9260) || defined(AT91SAM9263) || defined(AT91SAM9XE) || defined(AT91SAM9G20)
-     /* Test if a button has been pressed or not */
-     /* Erase Page 0 to avoid infinite loop */
-     df_recovery(pDf);
-diff --git a/include/part.h b/include/part.h
-index ba5985a..a1863d0 100644
---- a/include/part.h
-+++ b/include/part.h
-@@ -61,7 +61,11 @@
- #ifdef AT91SAM9263
- #include "AT91SAM9263_inc.h"
--#include "at91sam9263ek.h"
-+      #ifdef at91sam9263ek
-+      #include "at91sam9263ek.h"
-+      #elif usb_a9263
-+      #include "usb-a9263.h"
-+      #endif
- #endif
- #ifdef AT91CAP9
--- 
-1.5.6.3
-
diff --git a/board/calao/usb-a9263/linux-3.4.4.config b/board/calao/usb-a9263/linux-3.4.4.config
deleted file mode 100644 (file)
index 8c71231..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-CONFIG_EXPERIMENTAL=y
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_ARCH_AT91=y
-CONFIG_ARCH_AT91SAM9263=y
-CONFIG_MACH_USB_A9263=y
-CONFIG_AT91_SLOW_CLOCK=y
-# CONFIG_ARM_THUMB is not set
-CONFIG_AEABI=y
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="mem=64M console=ttyS0,115200"
-CONFIG_FPE_NWFPE=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_IPV6 is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_DATAFLASH=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ATMEL=y
-CONFIG_MTD_NAND_ATMEL_ECC_SOFT=y
-CONFIG_MTD_UBI=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_SCSI=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_NETDEVICES=y
-CONFIG_MII=y
-CONFIG_MACB=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_EVDEV=y
-CONFIG_INPUT_EVBUG=y
-# CONFIG_KEYBOARD_ATKBD is not set
-CONFIG_KEYBOARD_GPIO=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_SPI=y
-CONFIG_SPI_ATMEL=y
-# CONFIG_HWMON is not set
-# CONFIG_USB_HID is not set
-CONFIG_USB=y
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_MON=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_ETH=m
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-CONFIG_EXT2_FS=y
-CONFIG_FUSE_FS=m
-CONFIG_VFAT_FS=y
-CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_UBIFS_FS=y
-CONFIG_UBIFS_FS_XATTR=y
-CONFIG_UBIFS_FS_ADVANCED_COMPR=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_DEBUG_KERNEL=y
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_LL=y
diff --git a/board/calao/usb-a9g20-lpw/linux-3.4.4.config b/board/calao/usb-a9g20-lpw/linux-3.4.4.config
deleted file mode 100644 (file)
index 56eb04b..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-CONFIG_EXPERIMENTAL=y
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_SLAB=y
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_ARCH_AT91=y
-CONFIG_ARCH_AT91SAM9G20=y
-CONFIG_MACH_USB_A9G20=y
-CONFIG_AT91_SLOW_CLOCK=y
-# CONFIG_ARM_THUMB is not set
-CONFIG_AEABI=y
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_CMDLINE="mem=64M console=ttyS0,115200"
-CONFIG_FPE_NWFPE=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_IPV6 is not set
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLOCK=y
-CONFIG_MTD_DATAFLASH=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ATMEL=y
-CONFIG_MTD_UBI=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_SCSI=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_NETDEVICES=y
-CONFIG_MII=y
-CONFIG_MACB=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_EVDEV=y
-CONFIG_INPUT_EVBUG=y
-# CONFIG_KEYBOARD_ATKBD is not set
-CONFIG_KEYBOARD_GPIO=y
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-CONFIG_SERIAL_ATMEL=y
-CONFIG_SERIAL_ATMEL_CONSOLE=y
-CONFIG_HW_RANDOM=y
-CONFIG_I2C=y
-CONFIG_I2C_GPIO=y
-CONFIG_SPI=y
-CONFIG_SPI_ATMEL=y
-# CONFIG_HWMON is not set
-# CONFIG_USB_HID is not set
-CONFIG_USB=y
-CONFIG_USB_DEVICEFS=y
-CONFIG_USB_MON=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_GADGET=y
-CONFIG_USB_ETH=m
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEDS_TRIGGERS=y
-CONFIG_LEDS_TRIGGER_HEARTBEAT=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_RV3029C2=y
-CONFIG_EXT2_FS=y
-CONFIG_FUSE_FS=m
-CONFIG_VFAT_FS=y
-CONFIG_TMPFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_UBIFS_FS=y
-CONFIG_UBIFS_FS_XATTR=y
-CONFIG_UBIFS_FS_ADVANCED_COMPR=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V3=y
-CONFIG_NFS_V3_ACL=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_DEBUG_KERNEL=y
-CONFIG_DEBUG_USER=y
-CONFIG_DEBUG_LL=y
diff --git a/board/calao/usb-a9g20-lpw/patches/at91bootstrap/0001-usb-a9g20-lpw.patch b/board/calao/usb-a9g20-lpw/patches/at91bootstrap/0001-usb-a9g20-lpw.patch
deleted file mode 100644 (file)
index 06a89ed..0000000
+++ /dev/null
@@ -1,610 +0,0 @@
-From 8d84757d5170969e8bdfebc7951f43c5aa2b05fd Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Fri, 6 Jul 2012 16:32:47 +0200
-Subject: [PATCH] Add support for the Calao-systems USB-A9G20-LPW
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- board/usb_a9g20_lpw/nandflash/Makefile        |  121 ++++++++++
- board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h |  112 +++++++++
- board/usb_a9g20_lpw/usb_a9g20_lpw.c           |  303 +++++++++++++++++++++++++
- crt0_gnu.S                                    |    7 +
- include/part.h                                |    6 +-
- 5 files changed, 548 insertions(+), 1 deletions(-)
- create mode 100644 board/usb_a9g20_lpw/nandflash/Makefile
- create mode 100644 board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h
- create mode 100644 board/usb_a9g20_lpw/usb_a9g20_lpw.c
-
-diff --git a/board/usb_a9g20_lpw/nandflash/Makefile b/board/usb_a9g20_lpw/nandflash/Makefile
-new file mode 100644
-index 0000000..8c9d99a
---- /dev/null
-+++ b/board/usb_a9g20_lpw/nandflash/Makefile
-@@ -0,0 +1,121 @@
-+# TODO: set this appropriately for your local toolchain
-+ifndef ERASE_FCT
-+ERASE_FCT=rm -f
-+endif
-+ifndef CROSS_COMPILE
-+CROSS_COMPILE=arm-elf-
-+endif
-+
-+TOOLCHAIN=gcc
-+
-+BOOTSTRAP_PATH=../../..
-+
-+# NandFlashBoot Configuration for USB-A9G20-LPW
-+
-+# Target name (case sensitive!!!)
-+TARGET=AT91SAM9G20
-+# Board name (case sensitive!!!)
-+BOARD=usb_a9g20_lpw
-+# Link Address and Top_of_Memory
-+LINK_ADDR=0x200000
-+TOP_OF_MEMORY=0x301000
-+# Name of current directory
-+PROJECT=nandflash
-+
-+ifndef BOOT_NAME
-+BOOT_NAME=$(PROJECT)_$(BOARD)
-+endif
-+
-+INCL=./$(BOOTSTRAP_PATH)/board/$(BOARD)/$(PROJECT)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+
-+AS=$(CROSS_COMPILE)gcc
-+CC=$(CROSS_COMPILE)gcc
-+LD=$(CROSS_COMPILE)gcc
-+NM= $(CROSS_COMPILE)nm
-+SIZE=$(CROSS_COMPILE)size
-+OBJCOPY=$(CROSS_COMPILE)objcopy
-+OBJDUMP=$(CROSS_COMPILE)objdump
-+CCFLAGS=-g -mcpu=arm926ej-s -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL)
-+ASFLAGS=-g -mcpu=arm926ej-s -c -Os -Wall -D$(TARGET) -D$(BOARD) -I$(INCL) -DTOP_OF_MEM=$(TOP_OF_MEMORY)
-+
-+# Linker flags.
-+#  -Wl,...:     tell GCC to pass this to linker.
-+#    -Map:      create map file
-+#    --cref:    add cross reference to map file
-+LDFLAGS+=-nostartfiles -nostdlib -Wl,-Map=$(BOOT_NAME).map,--cref
-+LDFLAGS+=-T $(BOOTSTRAP_PATH)/elf32-littlearm.lds -Ttext $(LINK_ADDR)
-+OBJS=crt0_gnu.o
-+
-+endif
-+
-+OBJS+=\
-+      $(BOARD).o \
-+      main.o \
-+      gpio.o \
-+      pmc.o \
-+      debug.o \
-+      sdramc.o \
-+      nandflash.o \
-+      _udivsi3.o \
-+      _umodsi3.o \
-+      div0.o \
-+      udiv.o \
-+      string.o
-+
-+rebuild: clean all
-+
-+all:  $(BOOT_NAME)
-+
-+ifeq ($(TOOLCHAIN), gcc)
-+$(BOOT_NAME): $(OBJS)
-+      $(LD) $(LDFLAGS) -n -o $(BOOT_NAME).elf $(OBJS)
-+      $(OBJCOPY) --strip-debug --strip-unneeded $(BOOT_NAME).elf -O binary $(BOOT_NAME).bin
-+endif
-+
-+
-+$(BOARD).o: $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/board/$(BOARD)/$(BOARD).c -o $(BOARD).o
-+
-+main.o: $(BOOTSTRAP_PATH)/main.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/main.c -o main.o
-+
-+gpio.o: $(BOOTSTRAP_PATH)/driver/gpio.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/gpio.c -o gpio.o
-+
-+pmc.o:  $(BOOTSTRAP_PATH)/driver/pmc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/pmc.c -o pmc.o
-+
-+debug.o: $(BOOTSTRAP_PATH)/driver/debug.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/debug.c -o debug.o
-+
-+sdramc.o:  $(BOOTSTRAP_PATH)/driver/sdramc.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/sdramc.c -o sdramc.o
-+
-+dataflash.o:  $(BOOTSTRAP_PATH)/driver/dataflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/dataflash.c -o dataflash.o
-+
-+nandflash.o:  $(BOOTSTRAP_PATH)/driver/nandflash.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/driver/nandflash.c -o nandflash.o
-+
-+crt0_gnu.o:  $(BOOTSTRAP_PATH)/crt0_gnu.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/crt0_gnu.S -o crt0_gnu.o
-+
-+div0.o:  $(BOOTSTRAP_PATH)/lib/div0.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/div0.c -o div0.o
-+
-+string.o:  $(BOOTSTRAP_PATH)/lib/string.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/string.c -o string.o
-+
-+udiv.o:  $(BOOTSTRAP_PATH)/lib/udiv.c 
-+      $(CC) -c $(CCFLAGS) $(BOOTSTRAP_PATH)/lib/udiv.c -o udiv.o
-+
-+_udivsi3.o:  $(BOOTSTRAP_PATH)/lib/_udivsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_udivsi3.S -o _udivsi3.o
-+
-+_umodsi3.o:  $(BOOTSTRAP_PATH)/lib/_umodsi3.S
-+      $(AS) $(ASFLAGS) $(BOOTSTRAP_PATH)/lib/_umodsi3.S -o _umodsi3.o
-+
-+clean:
-+      $(ERASE_FCT) *.o *.bin *.elf *.map
-diff --git a/board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h b/board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h
-new file mode 100644
-index 0000000..c0bdc6e
---- /dev/null
-+++ b/board/usb_a9g20_lpw/nandflash/usb-a9g20-lpw.h
-@@ -0,0 +1,112 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2008, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb-a9g20-lpw.h
-+ * Object              :
-+ * Creation            : GH July 6th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#ifndef _USB_A9G20_LPW_H
-+#define _USB_A9G20_LPW_H
-+
-+/* ******************************************************************* */
-+/* PMC Settings                                                        */
-+/*                                                                     */
-+/* The main oscillator is enabled as soon as possible in the c_startup */
-+/* and MCK is switched on the main oscillator.                         */
-+/* PLL initialization is done later in the hw_init() function          */
-+/* ******************************************************************* */
-+#define MASTER_CLOCK          (133000000)
-+#define PLL_LOCK_TIMEOUT      1000000
-+
-+/* Set PLLA to 798Mhz */
-+#define PLLA_SETTINGS 0x20843F02
-+#define PLLB_SETTINGS 0x100F3F02
-+
-+/* Switch MCK on PLLA output PCK = PLLA/2 = 3 * MCK */
-+#define MCKR_SETTINGS         0x1300
-+#define MCKR_CSS_SETTINGS     (AT91C_PMC_CSS_PLLA_CLK | MCKR_SETTINGS)
-+
-+/* ******************************************************************* */
-+/* NandFlash Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define AT91C_SMARTMEDIA_BASE 0x40000000
-+
-+#define AT91_SMART_MEDIA_ALE    (1 << 21)     /* our ALE is AD21 */
-+#define AT91_SMART_MEDIA_CLE    (1 << 22)     /* our CLE is AD22 */
-+
-+#define NAND_DISABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_SODR = AT91C_PIO_PC14;} while(0)
-+#define NAND_ENABLE_CE() do { *(volatile unsigned int *)AT91C_PIOC_CODR = AT91C_PIO_PC14;} while(0)
-+
-+#define NAND_WAIT_READY() while (!(*(volatile unsigned int *)AT91C_PIOC_PDSR & AT91C_PIO_PC13))
-+
-+
-+/* ******************************************************************** */
-+/* SMC Chip Select 3 Timings for NandFlash for MASTER_CLOCK = 133000000.*/
-+/* Please refer to SMC section in AT91SAM9 datasheet to learn how     */
-+/* to generate these values.                                          */
-+/* ******************************************************************** */
-+#define AT91C_SM_NWE_SETUP    (2 << 0)
-+#define AT91C_SM_NCS_WR_SETUP (0 << 8)
-+#define AT91C_SM_NRD_SETUP    (2 << 16)
-+#define AT91C_SM_NCS_RD_SETUP (0 << 24)
-+  
-+#define AT91C_SM_NWE_PULSE    (4 << 0)
-+#define AT91C_SM_NCS_WR_PULSE (4 << 8)
-+#define AT91C_SM_NRD_PULSE    (4 << 16)
-+#define AT91C_SM_NCS_RD_PULSE (4 << 24)
-+  
-+#define AT91C_SM_NWE_CYCLE    (7 << 0)
-+#define AT91C_SM_NRD_CYCLE    (7 << 16)
-+
-+#define AT91C_SM_TDF          (3 << 16)
-+
-+/* ******************************************************************* */
-+/* BootStrap Settings                                                  */
-+/*                                                                     */
-+/* ******************************************************************* */
-+#define IMG_ADDRESS           0x20000                 /* Image Address in NandFlash */
-+#define       IMG_SIZE                0x40000                 /* Image Size in NandFlash */
-+
-+#define MACH_TYPE             0x731                   /* USB-A9G20 */
-+#define JUMP_ADDR             0x23F00000              /* Final Jump Address */
-+
-+/* ******************************************************************* */
-+/* Application Settings                                                */
-+/* ******************************************************************* */
-+#undef CFG_DEBUG
-+#undef CFG_DATAFLASH
-+
-+#define CFG_NANDFLASH
-+#undef        NANDFLASH_SMALL_BLOCKS  /* NANDFLASH_LARGE_BLOCKS used instead */
-+#undef  CFG_NANDFLASH_RECOVERY
-+
-+#define       CFG_SDRAM
-+#define       CFG_HW_INIT
-+
-+#endif        /* _USB_A9G20_LPW_H */
-diff --git a/board/usb_a9g20_lpw/usb_a9g20_lpw.c b/board/usb_a9g20_lpw/usb_a9g20_lpw.c
-new file mode 100644
-index 0000000..c372307
---- /dev/null
-+++ b/board/usb_a9g20_lpw/usb_a9g20_lpw.c
-@@ -0,0 +1,303 @@
-+/* ----------------------------------------------------------------------------
-+ *         ATMEL Microcontroller Software Support  -  ROUSSET  -
-+ * ----------------------------------------------------------------------------
-+ * Copyright (c) 2008, Atmel Corporation
-+
-+ * All rights reserved.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions are met:
-+ *
-+ * - Redistributions of source code must retain the above copyright notice,
-+ * this list of conditions and the disclaimer below.
-+ *
-+ * Atmel's name may not be used to endorse or promote products derived from
-+ * this software without specific prior written permission.
-+ *
-+ * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
-+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
-+ * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
-+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-+ * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-+ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ * ----------------------------------------------------------------------------
-+ * File Name           : usb_a9g20_lpw.c
-+ * Object              :
-+ * Creation            : GH July 6th 2012
-+ *-----------------------------------------------------------------------------
-+ */
-+#include "../../include/part.h"
-+#include "../../include/gpio.h"
-+#include "../../include/pmc.h"
-+#include "../../include/debug.h"
-+#include "../../include/sdramc.h"
-+#include "../../include/main.h"
-+#ifdef CFG_NANDFLASH
-+#include "../../include/nandflash.h"
-+#endif
-+#ifdef CFG_DATAFLASH
-+#include "../../include/dataflash.h"
-+#endif
-+
-+static inline unsigned int get_cp15(void)
-+{
-+      unsigned int value;
-+      __asm__("mrc p15, 0, %0, c1, c0, 0" : "=r" (value));
-+      return value;
-+}
-+
-+static inline void set_cp15(unsigned int value)
-+{
-+      __asm__("mcr p15, 0, %0, c1, c0, 0" : : "r" (value));
-+}
-+
-+#ifdef CFG_HW_INIT
-+/*----------------------------------------------------------------------------*/
-+/* \fn    hw_init                                                           */
-+/* \brief This function performs very low level HW initialization           */
-+/* This function is invoked as soon as possible during the c_startup        */
-+/* The bss segment must be initialized                                              */
-+/*----------------------------------------------------------------------------*/
-+void hw_init(void)
-+{
-+      unsigned int cp15;
-+      
-+      /* Configure PIOs */
-+      const struct pio_desc hw_pio[] = {
-+#ifdef CFG_DEBUG
-+              {"RXD", AT91C_PIN_PB(14), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"TXD", AT91C_PIN_PB(15), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Disable watchdog */
-+      writel(AT91C_WDTC_WDDIS, AT91C_BASE_WDTC + WDTC_WDMR);
-+
-+      /* At this stage the main oscillator is supposed to be enabled
-+       * PCK = MCK = MOSC */
-+      writel(0x00, AT91C_BASE_PMC + PMC_PLLICPR);
-+
-+      /* Configure PLLA = MOSC * (PLL_MULA + 1) / PLL_DIVA */
-+      pmc_cfg_plla(PLLA_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* PCK = PLLA/2 = 3 * MCK */
-+      pmc_cfg_mck(MCKR_SETTINGS, PLL_LOCK_TIMEOUT);
-+      /* Switch MCK on PLLA output */
-+      pmc_cfg_mck(MCKR_CSS_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure PLLB */
-+      pmc_cfg_pllb(PLLB_SETTINGS, PLL_LOCK_TIMEOUT);
-+
-+      /* Configure CP15 */
-+      cp15 = get_cp15();
-+      cp15 |= I_CACHE;
-+      set_cp15(cp15);
-+
-+      /* Configure the PIO controller */
-+      pio_setup(hw_pio);
-+
-+      /* Configure the EBI Slave Slot Cycle to 64 */
-+      writel((readl((AT91C_BASE_MATRIX + MATRIX_SCFG3)) & ~0xFF) | 0x40, (AT91C_BASE_MATRIX + MATRIX_SCFG3));
-+
-+#ifdef CFG_DEBUG
-+      /* Enable Debug messages on the DBGU */
-+      dbg_init(BAUDRATE(MASTER_CLOCK, 115200));
-+
-+      dbg_print("Start AT91Bootstrap...\n\r");
-+#endif /* CFG_DEBUG */
-+
-+#ifdef CFG_SDRAM
-+      /* Initialize the matrix (VDDIOSEL=0: memory voltage = 1.8V ) */
-+      writel((readl(AT91C_BASE_CCFG + CCFG_EBICSA) & ~0x00010000) | AT91C_EBI_CS1A_SDRAMC , AT91C_BASE_CCFG + CCFG_EBICSA);
-+
-+      /* Configure SDRAM Controller */
-+      sdram_init(     AT91C_SDRAMC_NC_9  |
-+                              AT91C_SDRAMC_NR_13 |
-+                              AT91C_SDRAMC_CAS_3 |
-+                              AT91C_SDRAMC_NB_4_BANKS |
-+                              AT91C_SDRAMC_DBW_32_BITS |
-+                              AT91C_SDRAMC_TWR_3 |
-+                              AT91C_SDRAMC_TRC_9 |
-+                              AT91C_SDRAMC_TRP_3 |
-+                              AT91C_SDRAMC_TRCD_3 |
-+                              AT91C_SDRAMC_TRAS_6 |
-+                              AT91C_SDRAMC_TXSR_10,           /* Control Register */
-+                              (MASTER_CLOCK * 7)/1000000,     /* Refresh Timer Register */
-+                                AT91C_SDRAMC_MD_SDRAM);         /* SDRAM (no low power)   */
-+
-+#endif /* CFG_SDRAM */
-+}
-+#endif /* CFG_HW_INIT */
-+
-+#ifdef CFG_SDRAM
-+/*------------------------------------------------------------------------------*/
-+/* \fn    sdramc_hw_init                                                      */
-+/* \brief This function performs SDRAMC HW initialization                     */
-+/*------------------------------------------------------------------------------*/
-+void sdramc_hw_init(void)
-+{
-+      /* Configure PIOs */
-+/*    const struct pio_desc sdramc_pio[] = {
-+              {"D16", AT91C_PIN_PC(16), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D17", AT91C_PIN_PC(17), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D18", AT91C_PIN_PC(18), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D19", AT91C_PIN_PC(19), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D20", AT91C_PIN_PC(20), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D21", AT91C_PIN_PC(21), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D22", AT91C_PIN_PC(22), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D23", AT91C_PIN_PC(23), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D24", AT91C_PIN_PC(24), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D25", AT91C_PIN_PC(25), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D26", AT91C_PIN_PC(26), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D27", AT91C_PIN_PC(27), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D28", AT91C_PIN_PC(28), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D29", AT91C_PIN_PC(29), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D30", AT91C_PIN_PC(30), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"D31", AT91C_PIN_PC(31), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+*/
-+      /* Configure the SDRAMC PIO controller to output PCK0 */
-+/*    pio_setup(sdramc_pio); */
-+
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_ASR(0));
-+      writel(0xFFFF0000, AT91C_BASE_PIOC + PIO_PDR(0));
-+
-+}
-+#endif /* CFG_SDRAM */
-+
-+#ifdef CFG_DATAFLASH
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_recovery                                                         */
-+/* \brief This function erases DataFlash Page 0 if USR PB is pressed          */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+void df_recovery(AT91PS_DF pDf)
-+{
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS1_DATAFLASH)
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb);
-+      
-+      /* If USR PB is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if ( !pio_get_value(AT91C_PIN_PB(10)) )
-+              df_page_erase(pDf, 0);
-+#endif
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    df_hw_init                                                          */
-+/* \brief This function performs DataFlash HW initialization                  */
-+/*------------------------------------------------------------------------------*/
-+void df_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc df_pio[] = {
-+              {"MISO",  AT91C_PIN_PA(0), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"MOSI",  AT91C_PIN_PA(1), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+              {"SPCK",  AT91C_PIN_PA(2), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS0_DATAFLASH)
-+              {"NPCS0", AT91C_PIN_PA(3), 0, PIO_DEFAULT, PIO_PERIPH_A},
-+#endif
-+#if (AT91C_SPI_PCS_DATAFLASH == AT91C_SPI_PCS1_DATAFLASH)
-+              {"NPCS1", AT91C_PIN_PC(11), 0, PIO_DEFAULT, PIO_PERIPH_B},
-+#endif
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      pio_setup(df_pio);
-+}
-+#endif /* CFG_DATAFLASH */
-+
-+
-+
-+#ifdef CFG_NANDFLASH
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nand_recovery                                               */
-+/* \brief This function erases NandFlash Block 0 if USER PB is pressed                */
-+/*        during boot sequence                                                        */
-+/*------------------------------------------------------------------------------*/
-+#ifdef CFG_NANDFLASH_RECOVERY
-+static void nand_recovery(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc usrpb[] = {
-+              {"USRPB", AT91C_PIN_PB(10), 0, PIO_PULLUP, PIO_INPUT},
-+              {(char *) 0, 0, 0, PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOB), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(usrpb);
-+      
-+      /* If USER PB is pressed during Boot sequence */
-+      /* Erase NandFlash block 0*/
-+      if (!pio_get_value(AT91C_PIN_PB(10)) )
-+              AT91F_NandEraseBlock0();
-+}
-+#else
-+static void nand_recovery(void) {}
-+#endif
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_hw_init                                                   */
-+/* \brief NandFlash HW init                                                   */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_hw_init(void)
-+{
-+      /* Configure PIOs */
-+      const struct pio_desc nand_pio[] = {
-+              {"RDY_BSY", AT91C_PIN_PC(13), 0, PIO_PULLUP, PIO_INPUT},
-+              {"NANDCS",  AT91C_PIN_PC(14), 0, PIO_PULLUP, PIO_OUTPUT},
-+              {(char *) 0, 0, 0,  PIO_DEFAULT, PIO_PERIPH_A},
-+      };
-+
-+      /* Setup Smart Media, first enable the address range of CS3 in HMATRIX user interface */
-+      writel(readl(AT91C_BASE_CCFG + CCFG_EBICSA) | AT91C_EBI_CS3A_SM, AT91C_BASE_CCFG + CCFG_EBICSA);
-+                  
-+      /* Configure SMC CS3 */
-+      writel((AT91C_SM_NWE_SETUP | AT91C_SM_NCS_WR_SETUP | AT91C_SM_NRD_SETUP | AT91C_SM_NCS_RD_SETUP), AT91C_BASE_SMC + SMC_SETUP3);
-+      writel((AT91C_SM_NWE_PULSE | AT91C_SM_NCS_WR_PULSE | AT91C_SM_NRD_PULSE | AT91C_SM_NCS_RD_PULSE), AT91C_BASE_SMC + SMC_PULSE3);
-+      writel((AT91C_SM_NWE_CYCLE | AT91C_SM_NRD_CYCLE)                                                , AT91C_BASE_SMC + SMC_CYCLE3);
-+      writel((AT91C_SMC_READMODE | AT91C_SMC_WRITEMODE | AT91C_SMC_NWAITM_NWAIT_DISABLE | 
-+              AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS | AT91C_SM_TDF)                                                , AT91C_BASE_SMC + SMC_CTRL3);
-+
-+      /* Configure the PIO controller */
-+      writel((1 << AT91C_ID_PIOC), PMC_PCER + AT91C_BASE_PMC);
-+      pio_setup(nand_pio);
-+      
-+      nand_recovery();
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_16bits_dbw_init                                               */
-+/* \brief Configure SMC in 16 bits mode                                               */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_16bits_dbw_init(void)
-+{
-+      writel(readl(AT91C_BASE_SMC + SMC_CTRL3) | AT91C_SMC_DBW_WIDTH_SIXTEEN_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+/*------------------------------------------------------------------------------*/
-+/* \fn    nandflash_cfg_8bits_dbw_init                                                */
-+/* \brief Configure SMC in 8 bits mode                                                */
-+/*------------------------------------------------------------------------------*/
-+void nandflash_cfg_8bits_dbw_init(void)
-+{
-+      writel((readl(AT91C_BASE_SMC + SMC_CTRL3) & ~(AT91C_SMC_DBW)) | AT91C_SMC_DBW_WIDTH_EIGTH_BITS, AT91C_BASE_SMC + SMC_CTRL3);
-+}
-+
-+#endif /* #ifdef CFG_NANDFLASH */
-diff --git a/crt0_gnu.S b/crt0_gnu.S
-index 042b617..002feef 100644
---- a/crt0_gnu.S
-+++ b/crt0_gnu.S
-@@ -106,6 +106,13 @@ _relocate_to_sram:
- #endif /* CFG_NORFLASH */
- _setup_clocks:
-+/* Test if main osc is bypassed */
-+      ldr     r0,=AT91C_PMC_MOR
-+      ldr     r1, [r0]
-+      ldr     r2,=AT91C_CKGR_OSCBYPASS 
-+      ands    r1, r1, r2
-+      bne     _init_data      /* branch if OSCBYPASS=1 */
-+
- /* Test if main oscillator is enabled */
-       ldr     r0,=AT91C_PMC_SR
-       ldr     r1, [r0]
-diff --git a/include/part.h b/include/part.h
-index ba5985a..1d7392a 100644
---- a/include/part.h
-+++ b/include/part.h
-@@ -46,7 +46,11 @@
- #ifdef AT91SAM9G20
- #include "AT91SAM9260_inc.h"
--#include "at91sam9g20ek.h"
-+      #ifdef at91sam9g20ek
-+      #include "at91sam9g20ek.h"
-+      #elif usb_a9g20_lpw
-+      #include "usb-a9g20-lpw.h"
-+      #endif
- #endif
- #ifdef AT91SAM9261
--- 
-1.5.6.3
-
diff --git a/board/calao/usb-a9g20-lpw/patches/barebox/0001-usb-a9g20-lpw.patch b/board/calao/usb-a9g20-lpw/patches/barebox/0001-usb-a9g20-lpw.patch
deleted file mode 100644 (file)
index cea8bb8..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/arch/arm/configs/usb_a9g20_defconfig b/arch/arm/configs/usb_a9g20_defconfig
-index 30bf380..7716e0e 100644
---- a/arch/arm/configs/usb_a9g20_defconfig
-+++ b/arch/arm/configs/usb_a9g20_defconfig
-@@ -15,6 +15,7 @@ CONFIG_HUSH_FANCY_PROMPT=y
- CONFIG_CMDLINE_EDITING=y
- CONFIG_AUTO_COMPLETE=y
- CONFIG_MENU=y
-+# CONFIG_ERRNO_MESSAGES is not set
- # CONFIG_CONSOLE_ACTIVATE_FIRST is not set
- CONFIG_CONSOLE_ACTIVATE_ALL=y
- CONFIG_PARTITION=y
diff --git a/board/congatec/qmx6/readme.txt b/board/congatec/qmx6/readme.txt
deleted file mode 100644 (file)
index d2e0dca..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-This is the minimal buildroot support for the Congatec QMX6 Qseven CoM
-
-conga-QMX6 is based on the freescale iMX6 SoC. For more information please
-have a look at http://www.congatec.com/products/qseven/conga-qmx6.html
-
-The configuration is based on the currently latest kernel release from
-Congatec's git repository which is based on 3.0.35. The bootloader u-boot
-is preconfigured on the CPU module and does not need to be replaced.
-
-To build the default configuration you only have to:
-
-       make qmx6_defconfig && make
-
-You will need a microSD card of sufficient size and the first or only
-partition configured as Linux type.
-
-To transfer the system to the card do:
-
-       $ sudo dd if=output/images/rootfs.ext2 of=/dev/sdX1
-
-You can optionally extend the filesystem size to the whole partition:
-
-       $ sudo resize2fs /dev/sdX1
-
-You can also update the card image without completely rewriting it:
-
-       $ sudo mount /dev/sdX1 /mnt
-       $ sudo tar xf output/images/rootfs.tar -C /mnt
-       $ sudo umount /mnt
-
-Connect a terminal program to the rs232 connector marked "CONSOLE"
-with baudrate set to 115200, insert the microSD card into the socket
-on the CPU module and power the board to watch the system boot.
-
-Booting from the SD card slot on the base board is currently not
-supported.
diff --git a/board/freescale/imx31_3stack/linux.fragment b/board/freescale/imx31_3stack/linux.fragment
new file mode 100644 (file)
index 0000000..beb6b46
--- /dev/null
@@ -0,0 +1 @@
+# CONFIG_FB_MXS is not set
diff --git a/board/freescale/p2020ds/linux-3.12.config b/board/freescale/p2020ds/linux-3.12.config
deleted file mode 100644 (file)
index 7181a6d..0000000
+++ /dev/null
@@ -1,374 +0,0 @@
-CONFIG_PPC_85xx=y
-CONFIG_PHYS_64BIT=y
-CONFIG_SMP=y
-CONFIG_NR_CPUS=8
-CONFIG_SYSVIPC=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_FHANDLE=y
-CONFIG_AUDIT=y
-CONFIG_IRQ_DOMAIN_DEBUG=y
-CONFIG_NO_HZ_IDLE=y
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_BSD_PROCESS_ACCT=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
-CONFIG_LOG_BUF_SHIFT=16
-CONFIG_CGROUPS=y
-CONFIG_NAMESPACES=y
-CONFIG_EXPERT=y
-CONFIG_KALLSYMS_ALL=y
-# CONFIG_SLUB_DEBUG is not set
-# CONFIG_COMPAT_BRK is not set
-CONFIG_MODULES=y
-CONFIG_MODULE_UNLOAD=y
-CONFIG_MODVERSIONS=y
-# CONFIG_BLK_DEV_BSG is not set
-CONFIG_PARTITION_ADVANCED=y
-CONFIG_MAC_PARTITION=y
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_POWERNV_MSI is not set
-CONFIG_MPC85xx_DS=y
-CONFIG_HIGHMEM=y
-CONFIG_HOTPLUG_CPU=y
-CONFIG_IRQ_ALL_CPUS=y
-CONFIG_FORCE_MAX_ZONEORDER=12
-# CONFIG_SUSPEND is not set
-CONFIG_PCI=y
-CONFIG_PCIEPORTBUS=y
-CONFIG_PCI_MSI=y
-CONFIG_RAPIDIO=y
-CONFIG_NET=y
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-CONFIG_XFRM_USER=y
-CONFIG_NET_KEY=m
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_IP_MULTIPLE_TABLES=y
-CONFIG_IP_ROUTE_MULTIPATH=y
-CONFIG_IP_ROUTE_VERBOSE=y
-CONFIG_IP_PNP=y
-CONFIG_IP_PNP_DHCP=y
-CONFIG_IP_PNP_BOOTP=y
-CONFIG_IP_PNP_RARP=y
-CONFIG_NET_IPIP=y
-CONFIG_IP_MROUTE=y
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-CONFIG_INET_ESP=m
-CONFIG_INET_XFRM_MODE_TRANSPORT=m
-CONFIG_INET_XFRM_MODE_TUNNEL=m
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-CONFIG_NETWORK_SECMARK=y
-CONFIG_NETFILTER=y
-CONFIG_NF_CONNTRACK=m
-CONFIG_NF_CONNTRACK_SECMARK=y
-CONFIG_NF_CONNTRACK_ZONES=y
-CONFIG_NF_CONNTRACK_EVENTS=y
-CONFIG_NF_CONNTRACK_TIMEOUT=y
-CONFIG_NF_CONNTRACK_TIMESTAMP=y
-CONFIG_NF_CT_PROTO_DCCP=m
-CONFIG_NF_CT_PROTO_UDPLITE=m
-CONFIG_NF_CONNTRACK_AMANDA=m
-CONFIG_NF_CONNTRACK_FTP=m
-CONFIG_NF_CONNTRACK_H323=m
-CONFIG_NF_CONNTRACK_IRC=m
-CONFIG_NF_CONNTRACK_NETBIOS_NS=m
-CONFIG_NF_CONNTRACK_SNMP=m
-CONFIG_NF_CONNTRACK_PPTP=m
-CONFIG_NF_CONNTRACK_SANE=m
-CONFIG_NF_CONNTRACK_SIP=m
-CONFIG_NF_CONNTRACK_TFTP=m
-CONFIG_NF_CT_NETLINK=m
-CONFIG_NF_CT_NETLINK_TIMEOUT=m
-CONFIG_NF_CT_NETLINK_HELPER=m
-CONFIG_NETFILTER_NETLINK_QUEUE_CT=y
-CONFIG_NETFILTER_XT_TARGET_AUDIT=m
-CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
-CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
-CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
-CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
-CONFIG_NETFILTER_XT_TARGET_DSCP=m
-CONFIG_NETFILTER_XT_TARGET_HMARK=m
-CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
-CONFIG_NETFILTER_XT_TARGET_LED=m
-CONFIG_NETFILTER_XT_TARGET_LOG=m
-CONFIG_NETFILTER_XT_TARGET_MARK=m
-CONFIG_NETFILTER_XT_TARGET_NFLOG=m
-CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
-CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
-CONFIG_NETFILTER_XT_TARGET_TEE=m
-CONFIG_NETFILTER_XT_TARGET_TPROXY=m
-CONFIG_NETFILTER_XT_TARGET_TRACE=m
-CONFIG_NETFILTER_XT_TARGET_SECMARK=m
-CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
-CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
-CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
-CONFIG_NETFILTER_XT_MATCH_BPF=m
-CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
-CONFIG_NETFILTER_XT_MATCH_COMMENT=m
-CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
-CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
-CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
-CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
-CONFIG_NETFILTER_XT_MATCH_CPU=m
-CONFIG_NETFILTER_XT_MATCH_DCCP=m
-CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
-CONFIG_NETFILTER_XT_MATCH_DSCP=m
-CONFIG_NETFILTER_XT_MATCH_ESP=m
-CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
-CONFIG_NETFILTER_XT_MATCH_HELPER=m
-CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
-CONFIG_NETFILTER_XT_MATCH_LENGTH=m
-CONFIG_NETFILTER_XT_MATCH_LIMIT=m
-CONFIG_NETFILTER_XT_MATCH_MAC=m
-CONFIG_NETFILTER_XT_MATCH_MARK=m
-CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
-CONFIG_NETFILTER_XT_MATCH_NFACCT=m
-CONFIG_NETFILTER_XT_MATCH_OSF=m
-CONFIG_NETFILTER_XT_MATCH_OWNER=m
-CONFIG_NETFILTER_XT_MATCH_POLICY=m
-CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
-CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
-CONFIG_NETFILTER_XT_MATCH_QUOTA=m
-CONFIG_NETFILTER_XT_MATCH_RATEEST=m
-CONFIG_NETFILTER_XT_MATCH_REALM=m
-CONFIG_NETFILTER_XT_MATCH_RECENT=m
-CONFIG_NETFILTER_XT_MATCH_SOCKET=m
-CONFIG_NETFILTER_XT_MATCH_STATE=m
-CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
-CONFIG_NETFILTER_XT_MATCH_STRING=m
-CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
-CONFIG_NETFILTER_XT_MATCH_TIME=m
-CONFIG_NETFILTER_XT_MATCH_U32=m
-CONFIG_NF_CONNTRACK_IPV4=m
-CONFIG_IP_NF_IPTABLES=m
-CONFIG_IP_NF_MATCH_AH=m
-CONFIG_IP_NF_MATCH_ECN=m
-CONFIG_IP_NF_MATCH_RPFILTER=m
-CONFIG_IP_NF_MATCH_TTL=m
-CONFIG_IP_NF_FILTER=m
-CONFIG_IP_NF_TARGET_REJECT=m
-CONFIG_IP_NF_TARGET_SYNPROXY=m
-CONFIG_IP_NF_TARGET_ULOG=m
-CONFIG_NF_NAT_IPV4=m
-CONFIG_IP_NF_TARGET_MASQUERADE=m
-CONFIG_IP_NF_TARGET_NETMAP=m
-CONFIG_IP_NF_TARGET_REDIRECT=m
-CONFIG_IP_NF_MANGLE=m
-CONFIG_IP_NF_TARGET_CLUSTERIP=m
-CONFIG_IP_NF_TARGET_ECN=m
-CONFIG_IP_NF_TARGET_TTL=m
-CONFIG_IP_NF_RAW=m
-CONFIG_IP_NF_ARPTABLES=m
-CONFIG_IP_NF_ARPFILTER=m
-CONFIG_IP_NF_ARP_MANGLE=m
-CONFIG_NF_CONNTRACK_IPV6=m
-CONFIG_IP6_NF_IPTABLES=m
-CONFIG_IP6_NF_MATCH_AH=m
-CONFIG_IP6_NF_MATCH_EUI64=m
-CONFIG_IP6_NF_MATCH_FRAG=m
-CONFIG_IP6_NF_MATCH_OPTS=m
-CONFIG_IP6_NF_MATCH_HL=m
-CONFIG_IP6_NF_MATCH_IPV6HEADER=m
-CONFIG_IP6_NF_MATCH_MH=m
-CONFIG_IP6_NF_MATCH_RPFILTER=m
-CONFIG_IP6_NF_MATCH_RT=m
-CONFIG_IP6_NF_TARGET_HL=m
-CONFIG_IP6_NF_FILTER=m
-CONFIG_IP6_NF_TARGET_REJECT=m
-CONFIG_IP6_NF_TARGET_SYNPROXY=m
-CONFIG_IP6_NF_MANGLE=m
-CONFIG_IP6_NF_RAW=m
-CONFIG_NF_NAT_IPV6=m
-CONFIG_IP6_NF_TARGET_MASQUERADE=m
-CONFIG_IP6_NF_TARGET_NPT=m
-CONFIG_IP_SCTP=m
-CONFIG_BRIDGE=m
-CONFIG_CFG80211=m
-CONFIG_MAC80211=m
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-# CONFIG_FW_LOADER_USER_HELPER is not set
-CONFIG_MTD=y
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_BLOCK=y
-CONFIG_FTL=y
-CONFIG_MTD_CFI=y
-CONFIG_MTD_CFI_INTELEXT=y
-CONFIG_MTD_CFI_AMDSTD=y
-CONFIG_MTD_PHYSMAP_OF=y
-CONFIG_MTD_M25P80=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_FSL_ELBC=y
-CONFIG_MTD_NAND_FSL_IFC=y
-CONFIG_MTD_UBI=y
-CONFIG_PROC_DEVICETREE=y
-CONFIG_BLK_DEV_LOOP=y
-CONFIG_BLK_DEV_NBD=y
-CONFIG_EEPROM_LEGACY=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_CHR_DEV_ST=y
-CONFIG_BLK_DEV_SR=y
-CONFIG_CHR_DEV_SG=y
-CONFIG_SCSI_MULTI_LUN=y
-CONFIG_SCSI_LOGGING=y
-CONFIG_ATA=y
-CONFIG_SATA_AHCI=y
-CONFIG_SATA_FSL=y
-CONFIG_SATA_SIL24=y
-CONFIG_PATA_ALI=y
-CONFIG_MD=y
-CONFIG_BLK_DEV_MD=y
-CONFIG_MD_LINEAR=y
-CONFIG_MD_RAID0=y
-CONFIG_MD_RAID1=y
-CONFIG_MD_RAID10=y
-CONFIG_MD_RAID456=y
-CONFIG_MD_MULTIPATH=y
-CONFIG_BCACHE=y
-CONFIG_BLK_DEV_DM=m
-CONFIG_DM_CRYPT=m
-CONFIG_DM_SNAPSHOT=m
-CONFIG_DM_THIN_PROVISIONING=m
-CONFIG_DM_CACHE=m
-CONFIG_DM_MIRROR=m
-CONFIG_DM_RAID=m
-CONFIG_DM_ZERO=m
-CONFIG_DM_MULTIPATH=m
-CONFIG_NETDEVICES=y
-CONFIG_DUMMY=y
-CONFIG_TUN=y
-CONFIG_NET_TULIP=y
-CONFIG_GIANFAR=y
-CONFIG_E1000E=y
-CONFIG_AT803X_PHY=y
-CONFIG_ATHEROS_PHY=y
-CONFIG_MARVELL_PHY=y
-CONFIG_DAVICOM_PHY=y
-CONFIG_CICADA_PHY=y
-CONFIG_VITESSE_PHY=y
-CONFIG_DP8384x_PHY=y
-CONFIG_FIXED_PHY=y
-CONFIG_PPP=m
-CONFIG_PPP_BSDCOMP=m
-CONFIG_PPP_DEFLATE=m
-CONFIG_PPP_FILTER=y
-CONFIG_PPP_MPPE=m
-CONFIG_PPP_MULTILINK=y
-CONFIG_PPPOE=m
-CONFIG_PPP_ASYNC=m
-CONFIG_PPP_SYNC_TTY=m
-CONFIG_ATH_CARDS=m
-CONFIG_ATH9K=m
-CONFIG_ATH9K_HTC=m
-CONFIG_RT2X00=m
-CONFIG_RT2800PCI=m
-CONFIG_RT73USB=m
-CONFIG_RT2800USB=m
-CONFIG_RT2800USB_RT3573=y
-CONFIG_RT2800USB_RT53XX=y
-CONFIG_RT2800USB_RT55XX=y
-# CONFIG_RTL_CARDS is not set
-# CONFIG_INPUT_MOUSEDEV is not set
-# CONFIG_INPUT_KEYBOARD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_SERIO is not set
-CONFIG_VT_HW_CONSOLE_BINDING=y
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=2
-CONFIG_SERIAL_8250_RUNTIME_UARTS=2
-CONFIG_SERIAL_8250_MANY_PORTS=y
-CONFIG_SERIAL_8250_DETECT_IRQ=y
-CONFIG_SERIAL_8250_RSA=y
-CONFIG_NVRAM=y
-CONFIG_I2C=y
-CONFIG_I2C_CHARDEV=y
-CONFIG_I2C_MPC=y
-CONFIG_SPI=y
-CONFIG_SPI_FSL_SPI=y
-CONFIG_SPI_FSL_ESPI=y
-CONFIG_GPIOLIB=y
-CONFIG_GPIO_MPC8XXX=y
-# CONFIG_HWMON is not set
-# CONFIG_VGA_ARB is not set
-# CONFIG_VGA_CONSOLE is not set
-CONFIG_SOUND=m
-CONFIG_SND=m
-CONFIG_SND_HRTIMER=m
-# CONFIG_SND_SUPPORT_OLD_API is not set
-# CONFIG_SND_DRIVERS is not set
-CONFIG_SND_INTEL8X0=m
-# CONFIG_SND_PPC is not set
-# CONFIG_SND_SPI is not set
-# CONFIG_SND_USB is not set
-# CONFIG_HID_GENERIC is not set
-# CONFIG_USB_HID is not set
-CONFIG_USB=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_FSL=y
-CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
-CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
-CONFIG_USB_STORAGE=y
-CONFIG_MMC=y
-CONFIG_MMC_SDHCI=y
-CONFIG_MMC_SDHCI_PLTFM=y
-CONFIG_MMC_SDHCI_OF_ESDHC=y
-CONFIG_EDAC=y
-CONFIG_EDAC_MM_EDAC=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_CMOS=y
-CONFIG_DMADEVICES=y
-CONFIG_FSL_DMA=y
-CONFIG_EXT4_FS=y
-CONFIG_EXT4_FS_POSIX_ACL=y
-CONFIG_EXT4_FS_SECURITY=y
-CONFIG_FANOTIFY=y
-CONFIG_FUSE_FS=m
-CONFIG_VFAT_FS=y
-CONFIG_PROC_KCORE=y
-CONFIG_TMPFS=y
-CONFIG_HUGETLBFS=y
-CONFIG_JFFS2_FS=y
-CONFIG_JFFS2_SUMMARY=y
-CONFIG_JFFS2_FS_XATTR=y
-CONFIG_UBIFS_FS=y
-CONFIG_SQUASHFS=y
-CONFIG_SQUASHFS_XATTR=y
-CONFIG_SQUASHFS_LZO=y
-CONFIG_SQUASHFS_XZ=y
-CONFIG_NFS_FS=y
-CONFIG_NFS_V4=y
-CONFIG_ROOT_NFS=y
-CONFIG_NFSD=m
-CONFIG_CIFS=m
-CONFIG_CIFS_XATTR=y
-CONFIG_CIFS_POSIX=y
-# CONFIG_CIFS_DEBUG is not set
-CONFIG_CIFS_SMB2=y
-CONFIG_CIFS_FSCACHE=y
-CONFIG_NLS_CODEPAGE_437=y
-CONFIG_NLS_CODEPAGE_850=y
-CONFIG_NLS_ISO8859_1=y
-CONFIG_NLS_UTF8=m
-CONFIG_CRC_T10DIF=y
-CONFIG_DEBUG_INFO=y
-CONFIG_DEBUG_FS=y
-CONFIG_MAGIC_SYSRQ=y
-CONFIG_DETECT_HUNG_TASK=y
-CONFIG_CRYPTO_CBC=y
-CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256=y
-CONFIG_CRYPTO_SHA512=y
-CONFIG_CRYPTO_DES=y
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-CONFIG_CRYPTO_DEV_TALITOS=y
diff --git a/board/freescale/p2020ds/linux-fix-c6187597-breakage.patch b/board/freescale/p2020ds/linux-fix-c6187597-breakage.patch
deleted file mode 100644 (file)
index 598f92d..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-From: Nikita Yushchenko <nyushchenko@dev.rtsoft.ru>
-Subject: [PATCH] usb: pci-quirks: do not access OHCI_FMINTERVAL register on ULI hw
-
-This access causes hang on Freescale P2020DS board (that has OHCI
-provided by ULI 1533 chip).
-
-Since preserving OHCI_FMINTERVAL was originally done only for NVIDIA
-hardware and only later (in c6187597) was turned unconditional, and
-c6187597 commit message again mentions only NVIDIA, I think it should be
-safe to disable preserving OHCI_FMINTERVAL if device vendor is ULI.
-
-Signed-off-by: Nikita Yushchenko <nyushchenko@dev.rtsoft.ru>
----
- drivers/usb/host/pci-quirks.c |    8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb/host/pci-quirks.c
-index 00661d3..5acbd5b 100644
---- a/drivers/usb/host/pci-quirks.c
-+++ b/drivers/usb/host/pci-quirks.c
-@@ -571,7 +571,7 @@ static void quirk_usb_handoff_ohci(struct pci_dev *pdev)
- {
-       void __iomem *base;
-       u32 control;
--      u32 fminterval;
-+      u32 uninitialized_var(fminterval);
-       int cnt;
-       if (!mmio_resource_enabled(pdev, 0))
-@@ -619,7 +619,8 @@ static void quirk_usb_handoff_ohci(struct pci_dev *pdev)
-       }
-       /* software reset of the controller, preserving HcFmInterval */
--      fminterval = readl(base + OHCI_FMINTERVAL);
-+      if (pdev->vendor != PCI_VENDOR_ID_AL)
-+              fminterval = readl(base + OHCI_FMINTERVAL);
-       writel(OHCI_HCR, base + OHCI_CMDSTATUS);
-       /* reset requires max 10 us delay */
-@@ -628,7 +629,8 @@ static void quirk_usb_handoff_ohci(struct pci_dev *pdev)
-                       break;
-               udelay(1);
-       }
--      writel(fminterval, base + OHCI_FMINTERVAL);
-+      if (pdev->vendor != PCI_VENDOR_ID_AL)
-+              writel(fminterval, base + OHCI_FMINTERVAL);
-       /* Now the controller is safely in SUSPEND and nothing can wake it up */
-       iounmap(base);
--- 
-1.7.10.4
diff --git a/board/freescale/p2020ds/readme.txt b/board/freescale/p2020ds/readme.txt
deleted file mode 100644 (file)
index a9735b0..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-You'll need to program the files created by buildroot into the flash.
-The fast way is to tftp transfer the files via one of the network interfaces.
-
-Alternatively you can transfer the files via serial console with an Ymodem
-file transfer from your terminal program by using a "loady" command
-from the u-boot prompt instead of the "tftp ..." commands stated below.
-Beware that serial console file transfers are quite slow!
-
-1. Program the DTB to NOR flash
-
-   => tftp ${loadaddr} p2020ds.dtb
-   => erase 0xeff00000 0xeff7ffff
-   => cp.b ${loadaddr} 0xeff00000 ${filesize}
-
-2. Program the kernel to NOR flash
-
-   => tftp ${loadaddr} uImage
-   => erase 0xec000000 0xec3fffff
-   => cp.b ${loadaddr} 0xec000000 ${filesize}
-
-3. Program the root filesystem to NOR flash
-
-   => tftp ${loadaddr} rootfs.jffs2
-   => erase 0xec400000 0xeeffffff
-   => cp.b ${loadaddr} 0xec400000 ${filesize}
-
-4. Booting your new system
-
-   => setenv jffs2boot 'setenv bootargs root=/dev/mtdblock4 rootfstype=jffs2 rw console=ttyS0,115200;bootm ec000000 - eff00000'
-
-   If you want to set this boot option as default:
-
-   => setenv bootcmd 'run jffs2boot'
-   => saveenv
-
-   ...or for a single boot:
-
-   => run jffs2boot
-
-   You can login with user "root".
index 070fcbbb32569c3e6d9fd77420051205074b1813..3bd88a6e391f61a34c5b7208d2c3b52f44e53352 100644 (file)
@@ -1,6 +1,6 @@
 Run the emulation with:
 
-  qemu-system-ppc -M g3beige -kernel output/images/vmlinux -hda -drive file=output/images/rootfs.ext2,format=raw -append "console=ttyS0 root=/dev/hda" -serial stdio -net nic,model=rtl8139 -net user
+  qemu-system-ppc -M g3beige -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -append "console=ttyS0 root=/dev/hda" -serial stdio -net nic,model=rtl8139 -net user
 
 The login prompt will appear in the terminal that started Qemu. The
 graphical window is the framebuffer.
diff --git a/board/roseapplepi/patches/linux/0002-kernel-add-support-for-gcc-5.patch b/board/roseapplepi/patches/linux/0002-kernel-add-support-for-gcc-5.patch
new file mode 100644 (file)
index 0000000..8d3c703
--- /dev/null
@@ -0,0 +1,99 @@
+From 96b4fb75d15be65edc5494579e4a944534042f99 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sasha.levin@oracle.com>
+Date: Mon, 13 Oct 2014 15:51:05 -0700
+Subject: [PATCH] kernel: add support for gcc 5
+
+We're missing include/linux/compiler-gcc5.h which is required now
+because gcc branched off to v5 in trunk.
+
+Just copy the relevant bits out of include/linux/compiler-gcc4.h,
+no new code is added as of now.
+
+This fixes a build error when using gcc 5.
+
+Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
+Cc: <stable@vger.kernel.org>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+(cherry picked from commit 71458cfc782eafe4b27656e078d379a34e472adf)
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ include/linux/compiler-gcc5.h | 66 +++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 66 insertions(+)
+ create mode 100644 include/linux/compiler-gcc5.h
+
+diff --git a/include/linux/compiler-gcc5.h b/include/linux/compiler-gcc5.h
+new file mode 100644
+index 0000000..cdd1cc2
+--- /dev/null
++++ b/include/linux/compiler-gcc5.h
+@@ -0,0 +1,66 @@
++#ifndef __LINUX_COMPILER_H
++#error "Please don't include <linux/compiler-gcc5.h> directly, include <linux/compiler.h> instead."
++#endif
++
++#define __used                                __attribute__((__used__))
++#define __must_check                  __attribute__((warn_unused_result))
++#define __compiler_offsetof(a, b)     __builtin_offsetof(a, b)
++
++/* Mark functions as cold. gcc will assume any path leading to a call
++   to them will be unlikely.  This means a lot of manual unlikely()s
++   are unnecessary now for any paths leading to the usual suspects
++   like BUG(), printk(), panic() etc. [but let's keep them for now for
++   older compilers]
++
++   Early snapshots of gcc 4.3 don't support this and we can't detect this
++   in the preprocessor, but we can live with this because they're unreleased.
++   Maketime probing would be overkill here.
++
++   gcc also has a __attribute__((__hot__)) to move hot functions into
++   a special section, but I don't see any sense in this right now in
++   the kernel context */
++#define __cold                        __attribute__((__cold__))
++
++#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
++
++#ifndef __CHECKER__
++# define __compiletime_warning(message) __attribute__((warning(message)))
++# define __compiletime_error(message) __attribute__((error(message)))
++#endif /* __CHECKER__ */
++
++/*
++ * Mark a position in code as unreachable.  This can be used to
++ * suppress control flow warnings after asm blocks that transfer
++ * control elsewhere.
++ *
++ * Early snapshots of gcc 4.5 don't support this and we can't detect
++ * this in the preprocessor, but we can live with this because they're
++ * unreleased.  Really, we need to have autoconf for the kernel.
++ */
++#define unreachable() __builtin_unreachable()
++
++/* Mark a function definition as prohibited from being cloned. */
++#define __noclone     __attribute__((__noclone__))
++
++/*
++ * Tell the optimizer that something else uses this function or variable.
++ */
++#define __visible __attribute__((externally_visible))
++
++/*
++ * GCC 'asm goto' miscompiles certain code sequences:
++ *
++ *   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.)
++ */
++#define asm_volatile_goto(x...)       do { asm goto(x); asm (""); } while (0)
++
++#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
++#define __HAVE_BUILTIN_BSWAP32__
++#define __HAVE_BUILTIN_BSWAP64__
++#define __HAVE_BUILTIN_BSWAP16__
++#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */
+-- 
+2.10.2
+
diff --git a/board/roseapplepi/patches/linux/0003-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch b/board/roseapplepi/patches/linux/0003-ARM-8158-1-LLVMLinux-use-static-inline-in-ARM-ftrace.patch
new file mode 100644 (file)
index 0000000..da38f26
--- /dev/null
@@ -0,0 +1,54 @@
+From 8ac9a3f6dbf00d861134bea3f2c930defed6311a Mon Sep 17 00:00:00 2001
+From: Behan Webster <behanw@converseincode.com>
+Date: Wed, 24 Sep 2014 01:06:46 +0100
+Subject: [PATCH] ARM: 8158/1: LLVMLinux: use static inline in ARM ftrace.h
+
+With compilers which follow the C99 standard (like modern versions of gcc and
+clang), "extern inline" does the wrong thing (emits code for an externally
+linkable version of the inline function). In this case using static inline
+and removing the NULL version of return_address in return_address.c does
+the right thing.
+
+Signed-off-by: Behan Webster <behanw@converseincode.com>
+Reviewed-by: Mark Charlebois <charlebm@gmail.com>
+Acked-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
+(cherry picked from commit aeea3592a13bf12861943e44fc48f1f270941f8d)
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ arch/arm/include/asm/ftrace.h    | 2 +-
+ arch/arm/kernel/return_address.c | 5 -----
+ 2 files changed, 1 insertion(+), 6 deletions(-)
+
+diff --git a/arch/arm/include/asm/ftrace.h b/arch/arm/include/asm/ftrace.h
+index f89515a..2bb8cac 100644
+--- a/arch/arm/include/asm/ftrace.h
++++ b/arch/arm/include/asm/ftrace.h
+@@ -45,7 +45,7 @@ void *return_address(unsigned int);
+ #else
+-extern inline void *return_address(unsigned int level)
++static inline void *return_address(unsigned int level)
+ {
+       return NULL;
+ }
+diff --git a/arch/arm/kernel/return_address.c b/arch/arm/kernel/return_address.c
+index 2f8f523..a3b587f 100755
+--- a/arch/arm/kernel/return_address.c
++++ b/arch/arm/kernel/return_address.c
+@@ -63,11 +63,6 @@ void *return_address(unsigned int level)
+ //#warning "TODO: return_address should use unwind tables"
+ //#endif
+-void *return_address(unsigned int level)
+-{
+-      return NULL;
+-}
+-
+ #endif /* if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) / else */
+ EXPORT_SYMBOL_GPL(return_address);
+-- 
+2.10.2
+
diff --git a/board/roseapplepi/patches/linux/0004-Fix-compile-errors-with-gcc5.patch b/board/roseapplepi/patches/linux/0004-Fix-compile-errors-with-gcc5.patch
new file mode 100644 (file)
index 0000000..d76e285
--- /dev/null
@@ -0,0 +1,121 @@
+From ef34609395c72a1e777ef9c3fb6ce60aa92976bb Mon Sep 17 00:00:00 2001
+From: Marco Franceschetti <vonfritz1@gmail.com>
+Date: Sun, 13 Mar 2016 09:44:54 +0100
+Subject: [PATCH] Fix compile errors with gcc5
+
+(cherry picked from commit e824d45043efd49607f66c89c921b07c1523bf9e)
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ drivers/net/wireless/actions/rtl8188etv/include/ieee80211.h    | 6 +++---
+ drivers/net/wireless/actions/rtl8723bs/include/ieee80211.h     | 6 +++---
+ drivers/net/wireless/actions/rtl8723bs_vq0/include/ieee80211.h | 6 +++---
+ drivers/net/wireless/actions/rtl8723bu/include/ieee80211.h     | 6 +++---
+ 4 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/drivers/net/wireless/actions/rtl8188etv/include/ieee80211.h b/drivers/net/wireless/actions/rtl8188etv/include/ieee80211.h
+index fc293c4..0898cd4 100755
+--- a/drivers/net/wireless/actions/rtl8188etv/include/ieee80211.h
++++ b/drivers/net/wireless/actions/rtl8188etv/include/ieee80211.h
+@@ -1314,18 +1314,18 @@ enum ieee80211_state {
+ (((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
+ (((Addr[5]) & 0xff) == 0xff))
+ #else
+-extern __inline int is_multicast_mac_addr(const u8 *addr)
++static __inline int is_multicast_mac_addr(const u8 *addr)
+ {
+         return ((addr[0] != 0xff) && (0x01 & addr[0]));
+ }
+-extern __inline int is_broadcast_mac_addr(const u8 *addr)
++static __inline int is_broadcast_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) &&   \
+               (addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
+ }
+-extern __inline int is_zero_mac_addr(const u8 *addr)
++static __inline int is_zero_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0x00) && (addr[1] == 0x00) && (addr[2] == 0x00) &&   \
+               (addr[3] == 0x00) && (addr[4] == 0x00) && (addr[5] == 0x00));
+diff --git a/drivers/net/wireless/actions/rtl8723bs/include/ieee80211.h b/drivers/net/wireless/actions/rtl8723bs/include/ieee80211.h
+index 09475ef..56e0f5a 100755
+--- a/drivers/net/wireless/actions/rtl8723bs/include/ieee80211.h
++++ b/drivers/net/wireless/actions/rtl8723bs/include/ieee80211.h
+@@ -1318,18 +1318,18 @@ enum ieee80211_state {
+ (((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
+ (((Addr[5]) & 0xff) == 0xff))
+ #else
+-extern __inline int is_multicast_mac_addr(const u8 *addr)
++static __inline int is_multicast_mac_addr(const u8 *addr)
+ {
+         return ((addr[0] != 0xff) && (0x01 & addr[0]));
+ }
+-extern __inline int is_broadcast_mac_addr(const u8 *addr)
++static __inline int is_broadcast_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) &&   \
+               (addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
+ }
+-extern __inline int is_zero_mac_addr(const u8 *addr)
++static __inline int is_zero_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0x00) && (addr[1] == 0x00) && (addr[2] == 0x00) &&   \
+               (addr[3] == 0x00) && (addr[4] == 0x00) && (addr[5] == 0x00));
+diff --git a/drivers/net/wireless/actions/rtl8723bs_vq0/include/ieee80211.h b/drivers/net/wireless/actions/rtl8723bs_vq0/include/ieee80211.h
+index 5dfc421..95144b6 100755
+--- a/drivers/net/wireless/actions/rtl8723bs_vq0/include/ieee80211.h
++++ b/drivers/net/wireless/actions/rtl8723bs_vq0/include/ieee80211.h
+@@ -1314,18 +1314,18 @@ enum ieee80211_state {
+ (((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
+ (((Addr[5]) & 0xff) == 0xff))
+ #else
+-extern __inline int is_multicast_mac_addr(const u8 *addr)
++static __inline int is_multicast_mac_addr(const u8 *addr)
+ {
+         return ((addr[0] != 0xff) && (0x01 & addr[0]));
+ }
+-extern __inline int is_broadcast_mac_addr(const u8 *addr)
++static __inline int is_broadcast_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) &&   \
+               (addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
+ }
+-extern __inline int is_zero_mac_addr(const u8 *addr)
++static __inline int is_zero_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0x00) && (addr[1] == 0x00) && (addr[2] == 0x00) &&   \
+               (addr[3] == 0x00) && (addr[4] == 0x00) && (addr[5] == 0x00));
+diff --git a/drivers/net/wireless/actions/rtl8723bu/include/ieee80211.h b/drivers/net/wireless/actions/rtl8723bu/include/ieee80211.h
+index 09475ef..56e0f5a 100755
+--- a/drivers/net/wireless/actions/rtl8723bu/include/ieee80211.h
++++ b/drivers/net/wireless/actions/rtl8723bu/include/ieee80211.h
+@@ -1318,18 +1318,18 @@ enum ieee80211_state {
+ (((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
+ (((Addr[5]) & 0xff) == 0xff))
+ #else
+-extern __inline int is_multicast_mac_addr(const u8 *addr)
++static __inline int is_multicast_mac_addr(const u8 *addr)
+ {
+         return ((addr[0] != 0xff) && (0x01 & addr[0]));
+ }
+-extern __inline int is_broadcast_mac_addr(const u8 *addr)
++static __inline int is_broadcast_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) &&   \
+               (addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
+ }
+-extern __inline int is_zero_mac_addr(const u8 *addr)
++static __inline int is_zero_mac_addr(const u8 *addr)
+ {
+       return ((addr[0] == 0x00) && (addr[1] == 0x00) && (addr[2] == 0x00) &&   \
+               (addr[3] == 0x00) && (addr[4] == 0x00) && (addr[5] == 0x00));
+-- 
+2.10.2
+
index 73d790fede107ec8d763740e1852d287a3cf9123..efb70dcdf594fc4d84363935cc01e53ed98ae47c 100644 (file)
@@ -11,7 +11,7 @@ config BR2_TARGET_BOOT_WRAPPER_AARCH64
          possible to start an Aarch64 kernel inside the available
          software simulators for the Aarch64 architecture.
 
-         git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/boot-wrapper-aarch64.git
+         git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git
 
 if BR2_TARGET_BOOT_WRAPPER_AARCH64
 
index a46937538d325205f266b34e95fa6317a378afe9..601cfab314a7e9938601725679c1f5ec5984070b 100644 (file)
@@ -5,7 +5,7 @@
 ################################################################################
 
 BOOT_WRAPPER_AARCH64_VERSION = 4266507a84f8c06452109d38e0350d4759740694
-BOOT_WRAPPER_AARCH64_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/boot-wrapper-aarch64.git
+BOOT_WRAPPER_AARCH64_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git
 BOOT_WRAPPER_AARCH64_LICENSE = BSD3c
 BOOT_WRAPPER_AARCH64_LICENSE_FILES = LICENSE.txt
 BOOT_WRAPPER_AARCH64_DEPENDENCIES = linux
index 3e347c108429abafcd14973a3cae7e0be597b9b1..6b9d5445462219bb99632d7c8dfcf3cfdc7f8e22 100644 (file)
@@ -223,6 +223,7 @@ define UBOOT_INSTALL_IMAGES_CMDS
                cat $(call qstrip,$(BR2_TARGET_UBOOT_ENVIMAGE_SOURCE)) | \
                        $(HOST_DIR)/usr/bin/mkenvimage -s $(BR2_TARGET_UBOOT_ENVIMAGE_SIZE) \
                        $(if $(BR2_TARGET_UBOOT_ENVIMAGE_REDUNDANT),-r) \
+                       $(if $(filter BIG,$(BR2_ENDIAN)),-b) \
                        -o $(BINARIES_DIR)/uboot-env.bin -)
 endef
 
index 708f20bea3552b1700b9fda441b1a23d3a416d35..31fb52897b19fe1aa630bf31f7f6a52d8dc9b919 100644 (file)
@@ -13,7 +13,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
 # Kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.22"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.30"
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/armadeus/apf28/linux-4.4.config"
 BR2_LINUX_KERNEL_UIMAGE=y
index f70593b05d7f54d08508470908dd29d3f28c7538..e834626713923e89409842419078ff6842cc6294 100644 (file)
@@ -3,7 +3,7 @@ BR2_arm=y
 BR2_cortex_a8=y
 
 # Linux headers same as kernel, a 3.12 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_12=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4=y
 
 # System
 BR2_TARGET_GENERIC_HOSTNAME="apf51"
@@ -13,9 +13,9 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc2"
 # Kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.12.6"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.4.30"
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/armadeus/apf51/linux-3.12.config"
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/armadeus/apf51/linux-4.4.config"
 BR2_LINUX_KERNEL_UIMAGE=y
 BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x90008000"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
index 92bb07116fd9edd7022b15d6b7f10108c6cf375f..d91fcb0549de968c175a3a7e5123c6c8f0721e37 100644 (file)
@@ -2,26 +2,32 @@
 BR2_arm=y
 BR2_arm926t=y
 
-# Linux headers same as kernel, a 3.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_9=y
+# Linux headers same as kernel, a 4.8 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_8=y
 
-# Packages
-BR2_PACKAGE_HOST_SAM_BA=y
+# Kernel
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.6"
+BR2_LINUX_KERNEL_DEFCONFIG="at91_dt"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91sam9260ek"
 
 # Filesystem
 BR2_TARGET_ROOTFS_UBIFS=y
 BR2_TARGET_ROOTFS_UBI=y
 
 # Bootloaders
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_BOARD="at91sam9260ek"
-BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
-BR2_TARGET_BAREBOX=y
-BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="at91sam9260ek"
+BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.7"
+BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="at91sam9260eknf_uboot"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="at91sam9260ek_nandflash"
 
-# Kernel
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.9.1"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/atmel/at91sam9260ek/linux-3.9.config"
+# Host packages
+BR2_PACKAGE_HOST_SAM_BA=y
index 4ed5a9b0b94c955774a9feee686bdcdfcefab923..15a8d879b7a3121ec8d85a81c91fe836e72e13a5 100644 (file)
@@ -2,28 +2,31 @@
 BR2_arm=y
 BR2_arm926t=y
 
-# Linux headers same as kernel, a 3.1 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_1=y
-
-# Host utilities
-#
-BR2_PACKAGE_HOST_SAM_BA=y
-
-# First stage bootloader
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_BOARD="at91sam9g20ek"
-BR2_TARGET_AT91BOOTSTRAP_DATAFLASHCARD=y
-
-# Second stage bootloader
-BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="at91sam9g20ek_nandflash"
+# Linux headers same as kernel, a 4.8 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_8=y
 
 # Kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.1.6"
-BR2_LINUX_KERNEL_USE_DEFCONFIG=y
-BR2_LINUX_KERNEL_DEFCONFIG="at91sam9g20ek"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.6"
+BR2_LINUX_KERNEL_DEFCONFIG="at91_dt"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91sam9g20ek"
 
 # Filesystem
 BR2_TARGET_ROOTFS_TAR=y
+
+# Bootloaders
+BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.7"
+BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="at91sam9g20eknf_uboot"
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="at91sam9g20ek_nandflash"
+
+# Host packages
+BR2_PACKAGE_HOST_SAM_BA=y
index 35618d5f4cae516bd5418df9ee0dc08bbf42ce8a..2bf7179980cf3cc0adc4703ed48eec9080e4dba8 100644 (file)
@@ -1,22 +1,34 @@
+# Architecture
 BR2_arm=y
 BR2_arm926t=y
-# Linux headers same as kernel, a 3.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y
+
+# Linux headers same as kernel, a 4.8 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_8=y
+
+# Kernel
 BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/linux4sam/linux-at91.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="03329ca4cf6b94acc5c65b59b2d1f90fdeee0887"
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.6"
 BR2_LINUX_KERNEL_DEFCONFIG="at91_dt"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91sam9m10g45ek"
+
+# Filesystem
 BR2_TARGET_ROOTFS_UBIFS=y
 BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=2047
 BR2_TARGET_ROOTFS_UBI=y
+
+# Bootloaders
 BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.7"
 BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="at91sam9m10g45eknf_uboot"
 BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="at91sam9m10g45ek_nandflash"
-BR2_TARGET_UBOOT_CUSTOM_GIT=y
-BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="677f3c2340b72131beebace8e96cac17b9569887"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="at91sam9m10g45ek_nandflash"
+
+# Host packages
 BR2_PACKAGE_HOST_SAM_BA=y
index 66e4a8884e5e020f447236ac4d38b2b0bd303ce1..bc1be16421a0ce0cfa67a8eefde898109c88bba0 100644 (file)
@@ -1,22 +1,34 @@
+# Architecture
 BR2_arm=y
 BR2_arm926t=y
-# Linux headers same as kernel, a 3.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y
+
+# Linux headers same as kernel, a 4.8 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_8=y
+
+# Kernel
 BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/linux4sam/linux-at91.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="03329ca4cf6b94acc5c65b59b2d1f90fdeee0887"
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.6"
 BR2_LINUX_KERNEL_DEFCONFIG="at91_dt"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91sam9rlek"
+
+# Filesystem
 BR2_TARGET_ROOTFS_UBIFS=y
 BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=2047
 BR2_TARGET_ROOTFS_UBI=y
+
+# Bootloaders
 BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.7"
 BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="at91sam9rleknf_uboot"
 BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="at91sam9rlek_nandflash"
-BR2_TARGET_UBOOT_CUSTOM_GIT=y
-BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="677f3c2340b72131beebace8e96cac17b9569887"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION=y
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="at91sam9rlek_nandflash"
+
+# Host packages
 BR2_PACKAGE_HOST_SAM_BA=y
index 086c18e0d4444c147e71f667111da3f66b9febd9..c57076c9f99089c93a980fe2578ef08354e3cc94 100644 (file)
@@ -1,26 +1,40 @@
+# Architecture
 BR2_arm=y
 BR2_cortex_a5=y
 BR2_ARM_ENABLE_VFP=y
 BR2_ARM_INSTRUCTIONS_THUMB2=y
-# Linux headers same as kernel, a 3.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y
+
+# Toolchain
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_4=y
+
+# Kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_GIT=y
 BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/linux4sam/linux-at91.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="03329ca4cf6b94acc5c65b59b2d1f90fdeee0887"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux4sam_5.5"
 BR2_LINUX_KERNEL_DEFCONFIG="sama5"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="sama5d31ek sama5d31ek_pda4 sama5d31ek_pda7 sama5d31ek_revc sama5d31ek_revc_pda4 sama5d31ek_revc_pda7 sama5d33ek sama5d33ek_pda4 sama5d33ek_pda7 sama5d33ek_revc sama5d33ek_revc_pda4 sama5d33ek_revc_pda7 sama5d34ek sama5d34ek_pda4 sama5d34ek_pda7 sama5d34ek_revc sama5d34ek_revc_pda4 sama5d34ek_revc_pda7 sama5d35ek sama5d35ek_revc sama5d36ek sama5d36ek_pda4 sama5d36ek_pda7 sama5d36ek_revc sama5d36ek_revc_pda4 sama5d36ek_revc_pda7"
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="sama5d31ek sama5d33ek sama5d34ek sama5d35ek sama5d36ek"
+
+# Filesystem
 BR2_TARGET_ROOTFS_UBIFS=y
 BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x1f000
 BR2_TARGET_ROOTFS_UBI=y
 BR2_TARGET_ROOTFS_UBI_SUBSIZE=2048
+
+# Bootloaders
 BR2_TARGET_AT91BOOTSTRAP3=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_GIT=y
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_URL="https://github.com/linux4sam/at91bootstrap.git"
+BR2_TARGET_AT91BOOTSTRAP3_CUSTOM_REPO_VERSION="v3.8.7"
 BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d3xeknf_uboot"
 BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="sama5d3xek_nandflash"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_GIT=y
 BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="677f3c2340b72131beebace8e96cac17b9569887"
+BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="linux4sam_5.5"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="sama5d3xek_nandflash"
 BR2_TARGET_UBOOT_SPL=y
+
+# Host packages
 BR2_PACKAGE_HOST_SAM_BA=y
diff --git a/configs/atmel_sama5d4ek_defconfig b/configs/atmel_sama5d4ek_defconfig
deleted file mode 100644 (file)
index 9d74eee..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-BR2_arm=y
-BR2_cortex_a5=y
-BR2_ARM_ENABLE_NEON=y
-BR2_ARM_ENABLE_VFP=y
-BR2_ARM_INSTRUCTIONS_THUMB2=y
-# Linux headers same as kernel, a 3.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/linux4sam/linux-at91.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="03329ca4cf6b94acc5c65b59b2d1f90fdeee0887"
-BR2_LINUX_KERNEL_DEFCONFIG="sama5"
-BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="at91-sama5d4ek"
-BR2_TARGET_ROOTFS_UBIFS=y
-BR2_TARGET_ROOTFS_UBIFS_LEBSIZE=0x3e000
-BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE=0x1000
-BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT=2082
-BR2_TARGET_ROOTFS_UBI=y
-BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x40000
-BR2_TARGET_ROOTFS_UBI_SUBSIZE=0
-BR2_TARGET_AT91BOOTSTRAP3=y
-BR2_TARGET_AT91BOOTSTRAP3_DEFCONFIG="sama5d4eknf_uboot_secure"
-BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="sama5d4ek_nandflash"
-BR2_TARGET_UBOOT_CUSTOM_GIT=y
-BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://github.com/linux4sam/u-boot-at91.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="677f3c2340b72131beebace8e96cac17b9569887"
-BR2_TARGET_UBOOT_SPL=y
-BR2_PACKAGE_HOST_SAM_BA=y
diff --git a/configs/calao_qil_a9260_defconfig b/configs/calao_qil_a9260_defconfig
deleted file mode 100644 (file)
index 8b76a87..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-BR2_arm=y
-BR2_arm926t=y
-BR2_GLOBAL_PATCH_DIR="board/calao/qil-a9260/patches"
-BR2_TARGET_GENERIC_GETTY_PORT="ttyS1"
-# Linux headers same as kernel, a 3.4 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_4=y
-BR2_PACKAGE_HOST_SAM_BA=y
-BR2_TARGET_ROOTFS_UBIFS=y
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_BOARD="qil_a9260"
-BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
-BR2_TARGET_BAREBOX=y
-BR2_TARGET_BAREBOX_CUSTOM_VERSION=y
-BR2_TARGET_BAREBOX_CUSTOM_VERSION_VALUE="2012.08.0"
-BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="qil_a9260"
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.4.7"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/qil-a9260/linux-3.4.7.config"
diff --git a/configs/calao_tny_a9g20_lpw_defconfig b/configs/calao_tny_a9g20_lpw_defconfig
deleted file mode 100644 (file)
index 5c66d06..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-# architecture
-BR2_arm=y
-BR2_arm926t=y
-
-# system
-BR2_PACKAGE_HOST_SAM_BA=y
-
-# filesystem
-BR2_TARGET_ROOTFS_UBIFS=y
-
-# Linux headers same as kernel, a 3.9 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_9=y
-
-# bootloaders
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/tny-a9g20-lpw"
-BR2_TARGET_AT91BOOTSTRAP_BOARD="tny_a9g20_lpw"
-BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
-BR2_TARGET_BAREBOX=y
-BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="tny_a9g20"
-
-# linux
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.9.4"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/tny-a9g20-lpw/linux-3.9.config"
-BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="tny_a9g20"
diff --git a/configs/calao_usb_a9260_defconfig b/configs/calao_usb_a9260_defconfig
deleted file mode 100644 (file)
index d8bfd0d..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-BR2_arm=y
-BR2_arm926t=y
-# Linux headers same as kernel, a 3.10 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
-BR2_PACKAGE_MTD=y
-BR2_PACKAGE_HOST_SAM_BA=y
-BR2_TARGET_ROOTFS_UBIFS=y
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/usb-a9260"
-BR2_TARGET_AT91BOOTSTRAP_BOARD="usb_a9260"
-BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
-BR2_TARGET_BAREBOX=y
-BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="usb_a9260"
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.10.10"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/usb-a9260/linux-3.7.4.config"
diff --git a/configs/calao_usb_a9263_defconfig b/configs/calao_usb_a9263_defconfig
deleted file mode 100644 (file)
index ed6d3cb..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-BR2_arm=y
-BR2_arm926t=y
-# Linux headers same as kernel, a 3.10 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
-BR2_PACKAGE_HOST_SAM_BA=y
-BR2_TARGET_ROOTFS_UBIFS=y
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_CUSTOM_PATCH_DIR="board/calao/usb-a9263"
-BR2_TARGET_AT91BOOTSTRAP_BOARD="usb_a9263"
-BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
-BR2_TARGET_BAREBOX=y
-BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="usb_a9263"
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.10.10"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/usb-a9263/linux-3.4.4.config"
diff --git a/configs/calao_usb_a9g20_lpw_defconfig b/configs/calao_usb_a9g20_lpw_defconfig
deleted file mode 100644 (file)
index 8a56d06..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-BR2_arm=y
-BR2_arm926t=y
-# Linux headers same as kernel, a 3.10 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
-BR2_GLOBAL_PATCH_DIR="board/calao/usb-a9g20-lpw/patches"
-BR2_PACKAGE_HOST_SAM_BA=y
-BR2_TARGET_ROOTFS_UBIFS=y
-BR2_TARGET_AT91BOOTSTRAP=y
-BR2_TARGET_AT91BOOTSTRAP_BOARD="usb_a9g20_lpw"
-BR2_TARGET_AT91BOOTSTRAP_NANDFLASH=y
-BR2_TARGET_BAREBOX=y
-BR2_TARGET_BAREBOX_BOARD_DEFCONFIG="usb_a9g20"
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.10.10"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/calao/usb-a9g20-lpw/linux-3.4.4.config"
index bd30cbd423b89a889fe40c5c18c4c24caa9cb965..ecf3007a37279f6ff233ed6c720b346699cb5be7 100644 (file)
@@ -1,6 +1,6 @@
 # architecture
 BR2_mipsel=y
-BR2_mips_32r2=y
+BR2_mips_xburst=y
 # BR2_MIPS_SOFT_FLOAT is not set
 
 # Linux headers same as kernel, a 3.18 series
index 08d5bd9cc727f28df3cefd4d93dd5f29ce63af84..b2242e701ac63b8fb203a2036c33706a7e05a6aa 100644 (file)
@@ -11,7 +11,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
 # kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.4"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.8"
 BR2_LINUX_KERNEL_DEFCONFIG="mxs"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx28-evk"
index bf1afad13cd634246be2258fe28e822d4726380d..0476fc1b592aec8a2ab566a581caaf86c8c947ee 100644 (file)
@@ -3,18 +3,18 @@ BR2_arm=y
 BR2_arm1136jf_s=y
 BR2_ARM_EABIHF=y
 
-# Linux headers same as kernel, a 3.15 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_15=y
+# Linux headers same as kernel, a 4.1 series
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y
 
 # system
 BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
 
 # kernel
 BR2_LINUX_KERNEL=y
-# Note: sadly the Linux kernel will not boot on the i.MX31 PDK, starting with
-# v3.16 and at least up to v4.0-rc4; this is why we use v3.15.y here.
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.15.10"
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://git.freescale.com/imx/linux-imx.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="rel_imx_4.1.15_2.0.0_ga"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/freescale/imx31_3stack/linux.fragment"
 BR2_TARGET_ROOTFS_CPIO_GZIP=y
 BR2_TARGET_ROOTFS_INITRAMFS=y
diff --git a/configs/freescale_p2020ds_defconfig b/configs/freescale_p2020ds_defconfig
deleted file mode 100644 (file)
index 6661acb..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-# Architecture
-BR2_powerpc=y
-BR2_powerpc_8548=y
-
-# Filesystem
-# BR2_TARGET_ROOTFS_TAR is not set
-BR2_TARGET_ROOTFS_JFFS2=y
-
-# Linux headers same as kernel, a 3.12 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_12=y
-
-# Kernel
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="http://git.freescale.com/git/cgit.cgi/ppc/sdk/linux.git/snapshot/fsl-sdk-v1.6.tar.bz2"
-BR2_LINUX_KERNEL_PATCH="board/freescale/p2020ds/linux-fix-c6187597-breakage.patch"
-BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
-BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/freescale/p2020ds/linux-3.12.config"
-BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="p2020ds"
-
-# Serial port config
-BR2_TARGET_GENERIC_GETTY=y
-BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
index 88604a662782f4875f8a76999631b79bb7a24d00..7b9965497fe355ba2372ca6f149561d063b6df17 100644 (file)
@@ -17,7 +17,7 @@ BR2_GLOBAL_PATCH_DIR="board/technexion/imx6ulpico/patches"
 # kernel
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.11"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
 BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/technexion/imx6ulpico/linux.fragment"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
diff --git a/configs/kb9202_defconfig b/configs/kb9202_defconfig
deleted file mode 100644 (file)
index 0aea0eb..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-# Architecture
-BR2_arm=y
-BR2_arm920t=y
-
-# Filesystem
-BR2_TARGET_ROOTFS_TAR=y
-
-# Linux headers same as kernel, a 2.6 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_REALLY_OLD=y
-
-# Kernel
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="2.6.38.8"
-BR2_LINUX_KERNEL_PATCH="http://maxim.org.za/AT91RM9200/2.6/2.6.38-at91.patch.gz"
-BR2_LINUX_KERNEL_USE_DEFCONFIG=y
-BR2_LINUX_KERNEL_DEFCONFIG="kb9202"
diff --git a/configs/mini2440_defconfig b/configs/mini2440_defconfig
deleted file mode 100644 (file)
index 2891d10..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-# Architecture
-BR2_arm=y
-BR2_arm920t=y
-
-# Serial port
-BR2_TARGET_GENERIC_GETTY=y
-BR2_TARGET_GENERIC_GETTY_PORT="ttySAC0"
-
-# Filesystem
-BR2_TARGET_ROOTFS_JFFS2=y
-BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_128K=y
-BR2_TARGET_ROOTFS_JFFS2_PAGESIZE=0x800
-BR2_TARGET_ROOTFS_JFFS2_EBSIZE=0x20000
-BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y
-BR2_TARGET_ROOTFS_JFFS2_LE=y
-BR2_TARGET_ROOTFS_TAR=y
-
-# Linux headers same as kernel, a 3.0 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_0=y
-
-# Bootloader
-BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="mini2440"
-BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
-BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="http://repo.or.cz/w/u-boot-openmoko/mini2440.git/snapshot/dev-mini2440-stable.tar.gz"
-
-#
-# Kernel
-#
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="3.0.4"
-BR2_LINUX_KERNEL_DEFCONFIG="mini2440"
-BR2_LINUX_KERNEL_UIMAGE=y
index 1ca2be4f6aa2ae79e5d4370f46b80d8a9fb28c81..8c1b28ab5e4712774a4a4440bf14457e24fa8de2 100644 (file)
@@ -15,7 +15,7 @@ BR2_TARGET_UBOOT_SPL=y
 BR2_TARGET_UBOOT_SPL_NAME="SPL"
 BR2_LINUX_KERNEL=y
 BR2_LINUX_KERNEL_CUSTOM_VERSION=y
-BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8"
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.8.11"
 BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
 BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/udoo/linux.fragment"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
index 2f4ea37574a4b943870a941fb1aaaf901b3cee73..ba4534a1daf7a3bf8fee491a9e513b31131c7225 100644 (file)
@@ -11,11 +11,10 @@ BR2_TARGET_GENERIC_ISSUE="Welcome to Buildroot for the NanoPi NEO"
 BR2_ROOTFS_POST_BUILD_SCRIPT="board/nanopi-neo/post-build.sh"
 BR2_ROOTFS_POST_IMAGE_SCRIPT="board/nanopi-neo/post-image.sh"
 
-# Use a special kernel tree until all support finally lands upstream
+# Use a -rc kernel to get the DTS
 BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/yann-morin-1998/linux"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="4.9-rc3-sunxi-next-2016-11-02"
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9-rc3"
 BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
 BR2_LINUX_KERNEL_DTS_SUPPORT=y
 BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-h3-nanopi-neo"
index 57dda72f295fb6a5ef0c0f010241daf0b95e7690..87fc674b9031feca6e0bb9d389a43bd906a276ae 100644 (file)
@@ -25,7 +25,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
 BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BOARDNAME="A20-OLinuXino-Lime2"
 BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2015.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.05"
 BR2_TARGET_UBOOT_SPL=y
 BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin"
 BR2_PACKAGE_HOST_GENIMAGE=y
index 49987fef11189bd39a0061b19884ca76ff08a3af..5941550112e463cb8e07d95f8a71edf143f2779f 100644 (file)
@@ -32,9 +32,10 @@ BR2_TARGET_ROOTFS_EXT2_4=y
 
 # Bootloaders
 BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="A20-OLinuXino-Lime"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_VERSION=y
 BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="A20-OLinuXino-Lime"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
 BR2_TARGET_UBOOT_FORMAT_BIN=y
 BR2_TARGET_UBOOT_SPL=y
index 42c8a7c39daab812ca5748281eaea53bbf6bf94f..35af5f9ce17d8e2fe5fee6a79a205a7c15fa9005 100644 (file)
@@ -17,8 +17,10 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="board/olimex/a20_olinuxino/boot-mali.cmd $(TARGET_D
 
 # Kernel
 BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
-BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux-sunxi,linux-sunxi,sunxi-v3.4.103-r1)/sunxi-v3.4.103-r1.tar.gz"
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://github.com/dan-and/linux-sunxi.git"
+# based on Linux version 3.4.113
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="dbabbacbbf8984dea0a8c893b38b376a6ecbb3c1"
 BR2_LINUX_KERNEL_USE_DEFCONFIG=y
 BR2_LINUX_KERNEL_DEFCONFIG="sun7i"
 BR2_LINUX_KERNEL_INSTALL_TARGET=y
@@ -37,9 +39,11 @@ BR2_TARGET_ROOTFS_EXT2_4=y
 
 # Bootloaders
 BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="A20-OLinuXino-Lime"
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2015.01"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.09.01"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="A20-OLinuXino-Lime"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
 BR2_TARGET_UBOOT_FORMAT_BIN=y
 BR2_TARGET_UBOOT_SPL=y
 BR2_TARGET_UBOOT_SPL_NAME="u-boot-sunxi-with-spl.bin"
diff --git a/configs/qmx6_defconfig b/configs/qmx6_defconfig
deleted file mode 100644 (file)
index cb80cad..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-BR2_arm=y
-BR2_cortex_a9=y
-# Linux headers same as kernel, a 3.14 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_14=y
-BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
-
-# Notice you need a recent version of u-boot (with DT support) to be able
-# to boot this kernel
-BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.congatec.com/arm/imx6_kernel_3.14.git"
-# Last version of branch cgt_qmx6_3.14.28_1.0.0
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="105820d6bd251deb49c3dd3f71fa0d76adce97c7"
-BR2_LINUX_KERNEL_DEFCONFIG="qmx6"
-BR2_LINUX_KERNEL_UIMAGE=y
-BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x10008000"
-BR2_LINUX_KERNEL_DTS_SUPPORT=y
-BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6q-qmx6"
-BR2_LINUX_KERNEL_INSTALL_TARGET=y
-
-# Change boardname depending of your product number
-BR2_TARGET_UBOOT=y
-BR2_TARGET_UBOOT_BOARDNAME="cgt_qmx6_pn016103"
-BR2_TARGET_UBOOT_CUSTOM_GIT=y
-BR2_TARGET_UBOOT_CUSTOM_REPO_URL="https://git.congatec.com/arm/qmx6_uboot.git"
-BR2_TARGET_UBOOT_CUSTOM_REPO_VERSION="4d3b64e93064ed3d97ef7d91ff0f61a693a460fc"
-BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
-BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.pn016103.imx"
-
-BR2_TARGET_ROOTFS_EXT2=y
-BR2_TARGET_ROOTFS_EXT2_3=y
-
-BR2_PACKAGE_HOST_UBOOT_TOOLS=y
index f165a9a39dccce11fab81c041c8cf4b1d73d8049..b55dce1ad60c7a4312e4f864ecb5bbb184b9be6f 100644 (file)
@@ -1,12 +1,10 @@
 BR2_aarch64=y
-# Linux headers same as kernel, a 3.18 series
-BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_18=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_6=y
 BR2_TARGET_GENERIC_HOSTNAME="vdk-buildroot"
 BR2_TARGET_GENERIC_ISSUE="Welcome to SNPS VDK by Buildroot"
 BR2_LINUX_KERNEL=y
-BR2_LINUX_KERNEL_CUSTOM_GIT=y
-BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.linaro.org/kernel/linux-linaro-tracking.git"
-BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux-linaro-3.18-2014.12"
+BR2_LINUX_KERNEL_CUSTOM_VERSION=y
+BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.6"
 BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
 BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/synopsys/vdk/linux-vdk-aarch64-defconfig"
 BR2_TARGET_ROOTFS_EXT2=y
index eea7a501412792a8db1ba708579ff6ec8e5bbe8e..07564b41bfb436df6f68fef85f5a55b154e9d422 100644 (file)
@@ -21,6 +21,6 @@ BR2_LINUX_KERNEL_DEFCONFIG="axs101"
 BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.07"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.11"
 BR2_TARGET_UBOOT_BOARD_DEFCONFIG="axs101"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
index 08c55de7e753b5675892df977f088c8bf4e022b2..d2a838e6b3cc503d715a0a77b62093b78b4b932f 100644 (file)
@@ -22,6 +22,6 @@ BR2_LINUX_KERNEL_DEFCONFIG="axs103_smp"
 BR2_TARGET_UBOOT=y
 BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
 BR2_TARGET_UBOOT_CUSTOM_VERSION=y
-BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.07"
+BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2016.11"
 BR2_TARGET_UBOOT_BOARD_DEFCONFIG="axs103"
 BR2_TARGET_UBOOT_NEEDS_DTC=y
index a74761cda875820a237344ed7869676fa3533005..5dba962bd45fa00103e760d0a0d893cc3a0f82f5 100644 (file)
@@ -384,9 +384,6 @@ openGL libraries.
 
 See xref:virtual-package-tutorial[] for more on the virtual packages.
 
-See xref:virtual-package-list[] for the symbols to depend on if your package
-depends on a feature provided by a virtual package.
-
 === The +.mk+ file
 
 [[adding-packages-mk]]
index 70efabe228be701e0103941549a7d694dbd20420..ea0e12033e9f42e9b51ad85f1ecbb1627fd417f2 100644 (file)
@@ -178,7 +178,7 @@ the br2-external tree. Buildroot will automatically show them in the
 output of +make list-defconfigs+ and allow them to be loaded with the
 normal +make <name>_defconfig+ command. They will be visible in the
 'make list-defconfigs' output, below an +External configs+ label that
-contains the name of the br2-extermnal tree they are defined in.
+contains the name of the br2-external tree they are defined in.
 
 .Note:
 If a defconfig file is present in more than one br2-external tree, then
@@ -217,8 +217,8 @@ illustration, of course):
   |     `----
   |
   |- Config.in
-  |     |source "$BR2_EXTERNAL_BAR_42_DIR/package/pkg-1/Config.in
-  |     |source "$BR2_EXTERNAL_BAR_42_DIR/package/pkg-2/Config.in
+  |     |source "$BR2_EXTERNAL_BAR_42_PATH/package/pkg-1/Config.in"
+  |     |source "$BR2_EXTERNAL_BAR_42_PATH/package/pkg-2/Config.in"
   |     |
   |     |config BAR_42_FLASH_ADDR
   |     |    hex "my-board flash address"
@@ -229,7 +229,7 @@ illustration, of course):
   |     |include $(sort $(wildcard $(BR2_EXTERNAL_BAR_42_PATH)/package/*/*.mk))
   |     |
   |     |flash-my-board:
-  |     |    $(BR2_EXTERNAL_BAR_42_DIR)/board/my-board/flash-image \
+  |     |    $(BR2_EXTERNAL_BAR_42_PATH)/board/my-board/flash-image \
   |     |        --image $(BINARIES_DIR)/image.bin \
   |     |        --address $(BAR_42_FLASH_ADDR)
   |     `----
index 8824c98a6296e997c91e12bb48186400920ede1d..d7eef3bbc6f303900692b1fba912ef0b6d03b915 100644 (file)
@@ -8,74 +8,74 @@
     <div class="panel-heading">Download</div>
     <div class="panel-body">
 
-      <h3 style="text-align: center;">Latest stable release: <b>2016.08.1</b></h3>
+      <h3 style="text-align: center;">Latest stable release: <b>2016.11</b></h3>
 
       <div class="row mt centered">
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.08.1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.08.1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
-         <h3><a href="/downloads/buildroot-2016.08.1.tar.gz">buildroot-2016.08.1.tar.gz</a></h3>
-         <p><a href="/downloads/buildroot-2016.08.1.tar.gz.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.11.tar.gz">buildroot-2016.11.tar.gz</a></h3>
+         <p><a href="/downloads/buildroot-2016.11.tar.gz.sign">PGP signature</a></p>
        </div>
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.08.1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.08.1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
 
-         <h3><a href="/downloads/buildroot-2016.08.1.tar.bz2">buildroot-2016.08.1.tar.bz2</a></h3>
-         <p><a href="/downloads/buildroot-2016.08.1.tar.bz2.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.11.tar.bz2">buildroot-2016.11.tar.bz2</a></h3>
+         <p><a href="/downloads/buildroot-2016.11.tar.bz2.sign">PGP signature</a></p>
        </div>
       </div>
-
-      <h3 style="text-align: center;">Latest release candidate: <b>2016.11-rc1</b></h3>
+<!--
+      <h3 style="text-align: center;">Latest release candidate: <b>2016.11-rc3</b></h3>
       <div class="row mt centered">
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.11-rc1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.11-rc1.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11-rc3.tar.gz"><img src="images/zip.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
 
-         <h3><a href="/downloads/buildroot-2016.11-rc1.tar.gz">buildroot-2016.11-rc1.tar.gz</a></h3>
-         <p><a href="/downloads/buildroot-2016.11-rc1.tar.gz.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.11-rc3.tar.gz">buildroot-2016.11-rc3.tar.gz</a></h3>
+         <p><a href="/downloads/buildroot-2016.11-rc3.tar.gz.sign">PGP signature</a></p>
        </div>
        <div class="col-sm-6">
          <div class="flip-container center-block" ontouchstart="this.classList.toggle('hover');">
            <div class="flipper">
              <div class="front">
-               <a href="/downloads/buildroot-2016.11-rc1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
              <div class="back">
-               <a href="/downloads/buildroot-2016.11-rc1.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
+               <a href="/downloads/buildroot-2016.11-rc3.tar.bz2"><img src="images/package.png" width="180" alt=""></a>
              </div>
            </div>
          </div>
 
-         <h3><a href="/downloads/buildroot-2016.11-rc1.tar.bz2">buildroot-2016.11-rc1.tar.bz2</a></h3>
-         <p><a href="/downloads/buildroot-2016.11-rc1.tar.bz2.sign">PGP signature</a></p>
+         <h3><a href="/downloads/buildroot-2016.11-rc3.tar.bz2">buildroot-2016.11-rc3.tar.bz2</a></h3>
+         <p><a href="/downloads/buildroot-2016.11-rc3.tar.bz2.sign">PGP signature</a></p>
        </div>
       </div>
-
+-->
       This and earlier releases (and their PGP signatures) can always be downloaded from
       <a href="/downloads/">http://buildroot.net/downloads/</a>.
     </div>
index 901999be569e7d68d9ee2767cae8f68a5ebc1caf..f12dfc6393e4b89884fff9ce6a8ba24ea283b829 100644 (file)
@@ -9,6 +9,70 @@
 <h2>News</h2>
 <ul class="timeline">
 
+  <li>
+    <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+    <div class="timeline-panel">
+      <div class="timeline-heading">
+       <h4 class="timeline-title">2016.11 released</h4>
+       <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>30 November 2016</small></p>
+      </div>
+      <div class="timeline-body">
+       <p>The stable 2016.11 release is out - Thanks to everyone
+         contributing and testing the release candidates. See the
+         <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.11">CHANGES</a>
+         file for more details
+         and go to the <a href="/downloads/">downloads page</a> to pick up the
+         <a href="/downloads/buildroot-2016.11.tar.bz2">2016.11 release</a>.</p>
+      </div>
+    </div>
+  </li>
+
+  <li class="timeline-inverted">
+    <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+    <div class="timeline-panel">
+      <div class="timeline-heading">
+       <h4 class="timeline-title">2016.11-rc3 released</h4>
+       <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>28 November 2016</small></p>
+      </div>
+      <div class="timeline-body">
+       <p>Release candidate 3 is out with more cleanups and security
+         / build fixes. See
+         the <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.11-rc3">CHANGES</a>
+         file for details.</p>
+       <p>Head to the <a href="/downloads/">downloads page</a> to
+         pick up
+         the <a href="/downloads/buildroot-2016.11-rc3.tar.bz2">2016.11-rc3
+           release candidate</a>, and report any problems found to
+         the <a href="support.html">mailing list</a>
+         or <a href="https://bugs.uclibc.org">bug tracker</a>.</p>
+      </div>
+    </div>
+  </li>
+
+  <li>
+    <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
+    <div class="timeline-panel">
+      <div class="timeline-heading">
+       <h4 class="timeline-title">2016.11-rc2 released</h4>
+       <p><small class="text-muted"><i class="glyphicon glyphicon-time"></i>13 November 2016</small></p>
+      </div>
+      <div class="timeline-body">
+       <p>We have a new release candidate! Lots of
+         changes all over the tree, see
+         the <a href="http://git.buildroot.net/buildroot/plain/CHANGES?id=2016.11-rc2">CHANGES</a>
+         file for details.
+       </p>
+
+       <p>Head to the <a href="/downloads/">downloads page</a> to pick up the
+         <a href="/downloads/buildroot-2016.11-rc2.tar.bz2">2016.11-rc2
+           release candidate</a>, and report any
+         problems found to the
+         <a href="support.html">mailing list</a> or
+         <a href="https://bugs.buildroot.org">bug tracker</a>.</p>
+      </div>
+    </div>
+  </li>
+
   <li class="timeline-inverted">
     <div class="timeline-badge"><i class="glyphicon glyphicon-thumbs-up"></i></div>
     <div class="timeline-panel">
index 981dcb1aa2458e1ffc085cf9ec8ee80b1219b7ff..7515fdc77067089d2fe8466428270e924b2d0b8d 100644 (file)
@@ -43,7 +43,7 @@ ROOTFS_USERS_TABLES = $(call qstrip,$(BR2_ROOTFS_USERS_TABLES))
 define ROOTFS_TARGET_INTERNAL
 
 # extra deps
-ROOTFS_$(2)_DEPENDENCIES += host-pseudo host-makedevs \
+ROOTFS_$(2)_DEPENDENCIES += host-fakeroot host-makedevs \
        $$(if $$(PACKAGES_USERS)$$(ROOTFS_USERS_TABLES),host-mkpasswd)
 
 ifeq ($$(BR2_TARGET_ROOTFS_$(2)_GZIP),y)
@@ -100,7 +100,7 @@ ifeq ($$(BR2_REPRODUCIBLE),y)
 endif
        $$(call PRINTF,$$(ROOTFS_$(2)_CMD)) >> $$(FAKEROOT_SCRIPT)
        chmod a+x $$(FAKEROOT_SCRIPT)
-       PATH=$$(BR_PATH) $$(HOST_DIR)/usr/bin/pseudo -- $$(FAKEROOT_SCRIPT)
+       PATH=$$(BR_PATH) $$(HOST_DIR)/usr/bin/fakeroot -- $$(FAKEROOT_SCRIPT)
        $$(INSTALL) -m 0644 support/misc/target-dir-warning.txt $$(TARGET_DIR_WARNING_FILE)
        -@rm -f $$(FAKEROOT_SCRIPT) $$(FULL_DEVICE_TABLE)
 ifneq ($$(ROOTFS_$(2)_COMPRESS_CMD),)
index 7417f81cf0eac44a2e7f54c6b5277bce831daaa2..cfb34c456580762e3a23d9fb059533bb18856a70 100644 (file)
@@ -20,12 +20,11 @@ ifneq ($(strip $(BR2_TARGET_ROOTFS_EXT2_RESBLKS)),0)
 EXT2_OPTS += -r $(BR2_TARGET_ROOTFS_EXT2_RESBLKS)
 endif
 
-# Not qstrip-ing the variable, because it may contain spaces, but we must
-# qstrip it when checking. Furthermore, we need to further quote it, so
-# that the quotes do not get eaten by the echo statement when creating the
-# fakeroot script
-ifneq ($(call qstrip,$(BR2_TARGET_ROOTFS_EXT2_LABEL)),)
-EXT2_OPTS += -l '$(BR2_TARGET_ROOTFS_EXT2_LABEL)'
+# qstrip results in stripping consecutive spaces into a single one. So the
+# variable is not qstrip-ed to preserve the integrity of the string value.
+EXT2_LABEL := $(subst ",,$(BR2_TARGET_ROOTFS_EXT2_LABEL))
+ifneq ($(EXT2_LABEL),)
+EXT2_OPTS += -l "$(EXT2_LABEL)"
 endif
 
 ROOTFS_EXT2_DEPENDENCIES = host-mke2img
index cda4bf489edd84c3eeeb277bf164f17be569ab9a..e488cb5f8a30e2214baeec025983ccdfc4babeb5 100644 (file)
@@ -20,9 +20,11 @@ else
 UBINIZE_CONFIG_FILE_PATH = fs/ubifs/ubinize.cfg
 endif
 
+# don't use sed -i as it misbehaves on systems with SELinux enabled when this is
+# executed through fakeroot (see #9386)
 define ROOTFS_UBI_CMD
-       $(INSTALL) -m 0644 $(UBINIZE_CONFIG_FILE_PATH) $(BUILD_DIR)/ubinize.cfg
-       $(SED) 's;BR2_ROOTFS_UBIFS_PATH;$@fs;' $(BUILD_DIR)/ubinize.cfg
+       sed 's;BR2_ROOTFS_UBIFS_PATH;$@fs;' \
+               $(UBINIZE_CONFIG_FILE_PATH) > $(BUILD_DIR)/ubinize.cfg
        $(HOST_DIR)/usr/sbin/ubinize -o $@ $(UBI_UBINIZE_OPTS) $(BUILD_DIR)/ubinize.cfg
        rm $(BUILD_DIR)/ubinize.cfg
 endef
index 3f4097d93b2b870dab77d58cc9755d787c495ee3..6a7838d79711936fd57b0e39e238bcb0fb92d061 100644 (file)
@@ -26,7 +26,7 @@ choice
        prompt "Kernel version"
 
 config BR2_LINUX_KERNEL_LATEST_VERSION
-       bool "Latest version (4.8.6)"
+       bool "Latest version (4.8.11)"
 
 config BR2_LINUX_KERNEL_CUSTOM_VERSION
        bool "Custom version"
@@ -97,7 +97,7 @@ endif
 
 config BR2_LINUX_KERNEL_VERSION
        string
-       default "4.8.6" if BR2_LINUX_KERNEL_LATEST_VERSION
+       default "4.8.11" if BR2_LINUX_KERNEL_LATEST_VERSION
        default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE \
                if BR2_LINUX_KERNEL_CUSTOM_VERSION
        default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL
index 93020f72382a49bf0b9073df2636ad37c7636b86..8fa6429da050ea8ce7334e53c0a71a94e36225f4 100644 (file)
@@ -4,6 +4,11 @@ config BR2_PACKAGE_ASSIMP
        # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124, that
        # cause an infinite loop in gcc when building this package.
        depends on !BR2_microblaze
+       # The ADI Blackfin toolchain does not build assimp properly,
+       # fails with "internal compiler error: in simplify_subreg, at
+       # simplify-rtx.c:5001". It builds fine with a mainline gcc for
+       # Blackfin.
+       depends on !BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX
        depends on BR2_INSTALL_LIBSTDCPP
        select BR2_PACKAGE_ZLIB
        help
diff --git a/package/autossh/0001-honour-LDFLAGS.patch b/package/autossh/0001-honour-LDFLAGS.patch
new file mode 100644 (file)
index 0000000..2e6160b
--- /dev/null
@@ -0,0 +1,16 @@
+Honour LDFLAGS, especially required when static linking
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur autossh-1.4e.orig/Makefile.in autossh-1.4e/Makefile.in
+--- autossh-1.4e.orig/Makefile.in      2015-02-10 05:41:58.000000000 +0100
++++ autossh-1.4e/Makefile.in   2016-11-25 12:49:06.052122855 +0100
+@@ -31,7 +31,7 @@
+ $(TARGET):    $(OFILES)
+-              $(CC) $(CPPFLAGS) -o $(TARGET) $(OFILES) $(LIBS)
++              $(CC) $(CPPFLAGS) $(LDFLAGS) -o $(TARGET) $(OFILES) $(LIBS)
+ clean:
+               - /bin/rm -f *.o *.a *.core *~
diff --git a/package/binutils/2.27/0100-elf32-arm-no-data-fix.patch b/package/binutils/2.27/0100-elf32-arm-no-data-fix.patch
new file mode 100644 (file)
index 0000000..c6b0e7e
--- /dev/null
@@ -0,0 +1,22 @@
+bfd/ChangeLog
+2016-08-23  Nick Clifton  <address@hidden>
+
+        * elf32-arm.c (elf32_arm_count_additional_relocs): Return zero if
+        there is no arm data associated with the section.
+
+[Thomas: taken from https://lists.gnu.org/archive/html/bug-binutils/2016-08/msg00165.html.]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+diff --git a/bfd/elf32-arm.c b/bfd/elf32-arm.c
+index 1eba21b..4478238 100644
+--- a/bfd/elf32-arm.c
++++ b/bfd/elf32-arm.c
+@@ -18688,7 +18688,7 @@ elf32_arm_count_additional_relocs (asection *sec)
+ {
+   struct _arm_elf_section_data *arm_data;
+   arm_data = get_arm_elf_section_data (sec);
+-  return arm_data->additional_reloc_count;
++  return arm_data == NULL ? 0 : arm_data->additional_reloc_count;
+ }
+ /* Called to set the sh_flags, sh_link and sh_info fields of OSECTION which
diff --git a/package/binutils/2.27/0900-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch b/package/binutils/2.27/0900-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch
new file mode 100644 (file)
index 0000000..f1ec259
--- /dev/null
@@ -0,0 +1,36 @@
+From c646b02fdcae5f37bd88f33a0c4683ef13ad5c82 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Mon, 31 Oct 2016 12:46:38 +1030
+Subject: [PATCH] Revert part "Set dynamic tag VMA and size from dynamic
+ section when possible"
+
+       PR 20748
+       * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Revert
+       2016-05-13 change.
+
+Signed-off-by: Alan Modra <amodra@gmail.com>
+Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
+
+diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
+index 477e7b3..5c66808 100644
+--- a/bfd/elf32-microblaze.c
++++ b/bfd/elf32-microblaze.c
+@@ -3396,13 +3396,13 @@ microblaze_elf_finish_dynamic_sections (bfd *output_bfd,
+             {
+               asection *s;
+-              s = bfd_get_linker_section (dynobj, name);
++              s = bfd_get_section_by_name (output_bfd, name);
+               if (s == NULL)
+                 dyn.d_un.d_val = 0;
+               else
+                 {
+                   if (! size)
+-                    dyn.d_un.d_ptr = s->output_section->vma + s->output_offset;
++                    dyn.d_un.d_ptr = s->vma;
+                   else
+                     dyn.d_un.d_val = s->size;
+                 }
+-- 
+2.1.4
+
index dce699621dfe9120a8a20c0b3cf9cf85225da5d6..af9339e11be884864bbd74c8b976b60950cba558 100644 (file)
@@ -17,15 +17,12 @@ choice
 
        config BR2_BINUTILS_VERSION_2_27_X
                bool "binutils 2.27"
-               # supported but broken on Microblaze
-               # see https://sourceware.org/bugzilla/show_bug.cgi?id=20748
-               depends on !BR2_microblaze
 
 endchoice
 
 config BR2_BINUTILS_VERSION
        string
-       default "arc-2016.09-eng015"    if BR2_arc
+       default "arc-2016.09-rc1"       if BR2_arc
        default "2.25.1"        if BR2_BINUTILS_VERSION_2_25_X
        default "2.26.1"        if BR2_BINUTILS_VERSION_2_26_X
        default "2.27"          if BR2_BINUTILS_VERSION_2_27_X
index f41b39b15ac27d996d787aacaf2fab00a0a654b6..80ac9ddf2f3cc822f320fe5739a43fe96fd923da 100644 (file)
@@ -5,4 +5,4 @@ sha512  9d9165609fd3b0f20d616f9891fc8e2b466eb13e2bfce40125e12427f8f201d20e2b8322
 sha512 cf276f84935312361a2ca077e04d0b469d23a3aed979d8ba5d92ea590904ffb2c2e7ed12cc842822bfc402836be86f479660cef3791aa62f3753d8a1a6f564cb  binutils-2.27.tar.bz2
 
 # Locally calculated (fetched from Github)
-sha512  f8cc7529fbe3cb52b666b92e1353063a8a36ea07fa8c5aa8359252f4222feaed15253b6a137033c74dabc0ae784daf8a7978e69ebdb8bf8cd6b8bb61c84bf181  binutils-arc-2016.09-eng015.tar.gz
+sha512  d0befdeb0a7b76efd1ad655fc062cde2aa67be7b26210c913ab2709e069d815c4ff2863ce7add1f6434da5a2f4faf1ce5a5bc3d0e64f3e04548a7479f24edcbc  binutils-arc-2016.09-rc1.tar.gz
index ca481d25b1f60e80a4656a9f826acf99ad4ec8ed..61486a2f8f1eb572c9a90fae206bfbca3390ad4f 100644 (file)
@@ -9,7 +9,7 @@
 BINUTILS_VERSION = $(call qstrip,$(BR2_BINUTILS_VERSION))
 ifeq ($(BINUTILS_VERSION),)
 ifeq ($(BR2_arc),y)
-BINUTILS_VERSION = arc-2016.09-eng015
+BINUTILS_VERSION = arc-2016.09-rc1
 else
 BINUTILS_VERSION = 2.25.1
 endif
index e8e03cf08e6c5569f62a2afb85f46a777932f0ad..dbc82496df7eedb8102aec31354300b8c592d4b2 100644 (file)
@@ -6,4 +6,4 @@ config BR2_PACKAGE_BZIP2
          available techniques, while being around twice as fast at
          compression and six times faster at decompression.
 
-         http://sources.redhat.com/bzip2/
+         http://www.bzip.org
index fdd0ddfb4f93acda7cf48ea6a14b0fd130577957..bde53f794d98fa3ee2680da201c73caf807b4769 100644 (file)
@@ -1,2 +1,2 @@
-# Verified key https://samba.org/ftp/ccache/ccache-3.3.2.tar.xz.asc - sha256 computed locally
-sha256 907685cb23d8f82074b8d1a9b4ebabb36914d151ac7b96a840c68c08d1a14530        ccache-3.3.2.tar.xz
+# Verified key https://samba.org/ftp/ccache/ccache-3.3.3.tar.xz.asc - sha256 computed locally
+sha256  3b02a745da1cfa9eb438af7147e0fd3545e2f6163de9e5b07da86f58859f04ec  ccache-3.3.3.tar.xz
index 63907c25f5caf5b883a5b3eee8a6c75b9a049d9f..f174a5d01c62b5bf3f61d2441cd72387367cf1c8 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-CCACHE_VERSION = 3.3.2
+CCACHE_VERSION = 3.3.3
 CCACHE_SITE = https://samba.org/ftp/ccache
 CCACHE_SOURCE = ccache-$(CCACHE_VERSION).tar.xz
 CCACHE_LICENSE = GPLv3+, others
index adfbd3664b1685de8b3f54e500e6b715a63558de..5f3160e199ac324fd511e2dff1508b0a8d807a3f 100644 (file)
@@ -34,6 +34,12 @@ else
 CHRONY_CONF_OPTS += --disable-readline
 endif
 
+# If pps-tools is available, build it before so the package can use it
+# (HAVE_SYS_TIMEPPS_H).
+ifeq ($(BR2_PACKAGE_PPS_TOOLS),y)
+CHRONY_DEPENDENCIES += pps-tools
+endif
+
 define CHRONY_CONFIGURE_CMDS
        cd $(@D) && $(TARGET_CONFIGURE_OPTS) ./configure $(CHRONY_CONF_OPTS)
 endef
diff --git a/package/czmq/0001-configure.ac-remove-Werror.patch b/package/czmq/0001-configure.ac-remove-Werror.patch
new file mode 100644 (file)
index 0000000..7f2dae2
--- /dev/null
@@ -0,0 +1,30 @@
+From 9a195dc573f4eed130773e6ef67efd5f71693e97 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 5 Nov 2016 15:33:57 +0100
+Subject: [PATCH] configure.ac: remove -Werror
+
+-Werror shouldn't be used in releases, as it can break the build with
+newer versions of the compiler or the C library, when new warnings
+are introduced.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index e92970a..2fd551a 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -344,7 +344,7 @@ AC_C_BIGENDIAN
+ # These options are GNU compiler specific.
+ if test "x$GCC" = "xyes"; then
+-    CPPFLAGS="-pedantic -Werror -Wall -Wc++-compat ${CPPFLAGS}"
++    CPPFLAGS="-pedantic -Wall -Wc++-compat ${CPPFLAGS}"
+ fi
+ AM_CONDITIONAL(ENABLE_SHARED, test "x$enable_shared" = "xyes")
+-- 
+2.7.4
+
index 3bd7824addface701a4c5075e83a4ee059a9962d..f128e6f88ce420fc433ab84313afc3d5dc65ca46 100644 (file)
@@ -6,6 +6,8 @@ config BR2_PACKAGE_DOMOTICZ
        depends on BR2_INSTALL_LIBSTDCPP
        depends on BR2_USE_WCHAR
        depends on BR2_PACKAGE_LUA_5_2 || BR2_PACKAGE_LUA_5_3
+       # These result in internal compiler error
+       depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
        select BR2_PACKAGE_BOOST
        select BR2_PACKAGE_BOOST_DATE_TIME
        select BR2_PACKAGE_BOOST_SYSTEM
@@ -26,6 +28,7 @@ config BR2_PACKAGE_DOMOTICZ
 
 comment "domoticz needs lua >= 5.2 and a toolchain w/ C++, threads, wchar, dynamic library"
        depends on BR2_USE_MMU
+       depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
        depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
                !BR2_USE_WCHAR || BR2_STATIC_LIBS || \
                !(BR2_PACKAGE_LUA_5_2 || BR2_PACKAGE_LUA_5_3)
index 6156c5a3cff499c05e8755339a2037c57f246a24..fc488c0c6f06fb5987530e8780a96212aad8a4b5 100644 (file)
@@ -3,4 +3,4 @@ config BR2_PACKAGE_HOST_DOSFSTOOLS
        help
          Tools for creating and checking DOS FAT filesystems.
 
-         http://www.daniel-baumann.ch/software/dosfstools/
+         https://github.com/dosfstools/dosfstools
index 8ef42b90a2d5e50f93db18206685506cdfe2ee28..8a782cb404b4362d25a94a3437b68051cf4c080f 100644 (file)
@@ -17,6 +17,15 @@ DTV_SCAN_TABLES_SITE_METHOD = git
 DTV_SCAN_TABLES_LICENSE = GPLv2, LGPLv2.1
 DTV_SCAN_TABLES_LICENSE_FILES = COPYING COPYING.LGPL
 
+# In order to avoid issues with file name encodings, we rename the
+# only dtv-scan-tables file that has non-ASCII characters to have a
+# name using only ASCII characters (pl-Krosno_Sucha_Gora)
+define DTV_SCAN_TABLES_FIX_NONASCII_FILENAMES
+       mv $(@D)/dvb-t/pl-Krosno_Sucha* $(@D)/dvb-t/pl-Krosno_Sucha_Gora
+endef
+
+DTV_SCAN_TABLES_POST_PATCH_HOOKS += DTV_SCAN_TABLES_FIX_NONASCII_FILENAMES
+
 define DTV_SCAN_TABLES_INSTALL_TARGET_CMDS
        for f in atsc dvb-c dvb-s dvb-t; do \
                $(INSTALL) -d -m 0755 $(TARGET_DIR)/usr/share/dvb/$$f; \
index 022ba5283a9ed2472ba7c32b4b4a4bfe8dc66d2c..b6e79d246b758a64f229192f8be4bec77b4f3e7e 100644 (file)
@@ -51,6 +51,12 @@ endif
 # for util/subst.c to build properly.
 E2FSPROGS_CONF_ENV += BUILD_CFLAGS="-DHAVE_SYS_STAT_H"
 
+# Disable use of the host magic.h, as on older hosts (e.g. RHEL 5)
+# it doesn't provide definitions expected by e2fsprogs support lib.
+HOST_E2FSPROGS_CONF_ENV += \
+       ac_cv_header_magic_h=no \
+       ac_cv_lib_magic_magic_file=no
+
 ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
 # util-linux libuuid pulls in libintl if needed, so ensure we also
 # link against it, otherwise static linking fails
index f963ade8e5605d76e3c609174e2699858a901200..69b0dcfb3965668bd7f6502a9d4f958a829665f8 100644 (file)
@@ -14,7 +14,6 @@ config BR2_PACKAGE_EFL
        select BR2_PACKAGE_FREETYPE
        select BR2_PACKAGE_JPEG # Emile needs libjpeg
        select BR2_PACKAGE_LIBCURL # Ecore_con_url, runtime dependency
-       select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND
        # https://phab.enlightenment.org/T2728
        select BR2_PACKAGE_LUAJIT # Lua support broken
        select BR2_PACKAGE_UTIL_LINUX
index 17d3163c87ad2a5aa997b81f8ab74debbb15f803..bdf304d3c7caa56782fcf9dda502be1dee465e8a 100644 (file)
@@ -42,6 +42,7 @@ EFL_CONF_OPTS = \
        --disable-sdl \
        --disable-spectre \
        --disable-xinput22 \
+       --disable-wayland \
        --with-doxygen=no
 
 # Disable untested configuration warning.
@@ -145,13 +146,6 @@ else
 EFL_CONF_OPTS += --with-crypto=none
 endif # BR2_PACKAGE_OPENSSL
 
-ifeq ($(BR2_PACKAGE_WAYLAND),y)
-EFL_DEPENDENCIES += wayland libxkbcommon
-EFL_CONF_OPTS += --enable-wayland
-else
-EFL_CONF_OPTS += --disable-wayland
-endif
-
 ifeq ($(BR2_PACKAGE_EFL_ELPUT),y)
 EFL_CONF_OPTS += --enable-elput
 EFL_DEPENDENCIES += libinput libxkbcommon
diff --git a/package/fakeroot/0001-hide-dlsym-error.patch b/package/fakeroot/0001-hide-dlsym-error.patch
new file mode 100644 (file)
index 0000000..2c61fab
--- /dev/null
@@ -0,0 +1,34 @@
+Description: Hide error from dlsym()
+ dlsym(), starting in glibc 2.24 actually reports errors. In our case,
+ we try to get ACL functions which are not in the glibc. This causes
+ failures in test suites, so hide those messages for non-debugging
+ purposes for now. It also makes the build logs annoying to read.
+Author: Julian Andres Klode <juliank@ubuntu.com>
+Origin: vendor
+Bug-Debian: https://bugs.debian.org/830912
+Forwarded: no
+Last-Update: 2016-08-12
+
+Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
+
+--- a/libfakeroot.c
++++ b/libfakeroot.c
+@@ -256,10 +256,16 @@ void load_library_symbols(void){
+  /* clear dlerror() just in case dlsym() legitimately returns NULL */
+     msg = dlerror();
+     *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name);
++
+     if ( (msg = dlerror()) != NULL){
+-      fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
+-/*    abort ();*/
++#ifdef LIBFAKEROOT_DEBUGGING
++      if (fakeroot_debug) {
++        fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
++/*      abort ();*/
++      }
++#endif
+     }
++
+   }
+ }
+
diff --git a/package/fakeroot/fakeroot.hash b/package/fakeroot/fakeroot.hash
new file mode 100644 (file)
index 0000000..f0d436e
--- /dev/null
@@ -0,0 +1,4 @@
+# From http://snapshot.debian.org/package/fakeroot/1.20.2-1/
+sha1   367040df07043edb630942b21939e493f3fad888        fakeroot_1.20.2.orig.tar.bz2
+# Calculated based on the hash above
+sha256 7c0a164d19db3efa9e802e0fc7cdfeff70ec6d26cdbdc4338c9c2823c5ea230c        fakeroot_1.20.2.orig.tar.bz2
diff --git a/package/fakeroot/fakeroot.mk b/package/fakeroot/fakeroot.mk
new file mode 100644 (file)
index 0000000..168cd13
--- /dev/null
@@ -0,0 +1,20 @@
+################################################################################
+#
+# fakeroot
+#
+################################################################################
+
+FAKEROOT_VERSION = 1.20.2
+FAKEROOT_SOURCE = fakeroot_$(FAKEROOT_VERSION).orig.tar.bz2
+FAKEROOT_SITE = http://snapshot.debian.org/archive/debian/20141005T221953Z/pool/main/f/fakeroot
+# Force capabilities detection off
+# For now these are process capabilities (faked) rather than file
+# so they're of no real use
+HOST_FAKEROOT_CONF_ENV = \
+       ac_cv_header_sys_capability_h=no \
+       ac_cv_func_capset=no
+
+FAKEROOT_LICENSE = GPLv3+
+FAKEROOT_LICENSE_FILES = COPYING
+
+$(eval $(host-autotools-package))
index a3ca1054d9b4aa379b3d4e1f416a9dd04a8c94c5..e8135953b2bb6f3c0e54f81338ddd3806dceb205 100644 (file)
@@ -2,7 +2,8 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        bool
        # fenv.h lacks FE_INVALID, FE_OVERFLOW & FE_UNDERFLOW on nios2
        # No support for ARMv7-M in the ARM assembly logic
-       default y if !BR2_nios2 && !BR2_ARM_CPU_ARMV7M
+       # Microblaze build affected by gcc PR71124 (infinite loop)
+       default y if !BR2_nios2 && !BR2_ARM_CPU_ARMV7M && !BR2_microblaze
 
 menuconfig BR2_PACKAGE_FFMPEG
        bool "ffmpeg"
diff --git a/package/gcc/4.8.5/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch b/package/gcc/4.8.5/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch
new file mode 100644 (file)
index 0000000..d8c6723
--- /dev/null
@@ -0,0 +1,43 @@
+From edb9057c195c41dd7bcd8603e5fd420359edd520 Mon Sep 17 00:00:00 2001
+From: nsz <nsz@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 23 Nov 2015 15:17:55 +0000
+Subject: [PATCH] [ARM] PR target/68059 libgcc should not use __write for
+ printing fatal error
+
+libgcc/
+       PR target/68059
+       * config/arm/linux-atomic-64bit.c (__write): Rename to...
+       (write): ...this and fix the return type.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230762 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ libgcc/config/arm/linux-atomic-64bit.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgcc/config/arm/linux-atomic-64bit.c b/libgcc/config/arm/linux-atomic-64bit.c
+index 7aa8dfc..570b4ce 100644
+--- a/libgcc/config/arm/linux-atomic-64bit.c
++++ b/libgcc/config/arm/linux-atomic-64bit.c
+@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
+    kernels; we check for that in an init section and bail out rather
+    unceremoneously.  */
+-extern unsigned int __write (int fd, const void *buf, unsigned int count);
++extern int write (int fd, const void *buf, unsigned int count);
+ extern void abort (void);
+ /* Kernel helper for compare-and-exchange.  */
+@@ -56,7 +56,7 @@ static void __check_for_sync8_kernelhelper (void)
+        for the user - I'm not sure I can rely on much else being
+        available at this point, so do the same as generic-morestack.c
+        write () and abort ().  */
+-      __write (2 /* stderr.  */, err, sizeof (err));
++      write (2 /* stderr.  */, err, sizeof (err));
+       abort ();
+     }
+ };
+-- 
+2.10.2
+
diff --git a/package/gcc/4.9.4/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch b/package/gcc/4.9.4/0001-ARM-PR-target-68059-libgcc-should-not-use-__write-fo.patch
new file mode 100644 (file)
index 0000000..fd2bc69
--- /dev/null
@@ -0,0 +1,43 @@
+From 80bc14a5249da7054b716229206b453f339b4a5e Mon Sep 17 00:00:00 2001
+From: nsz <nsz@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Mon, 23 Nov 2015 15:17:55 +0000
+Subject: [PATCH] [ARM] PR target/68059 libgcc should not use __write for
+ printing fatal error
+
+libgcc/
+       PR target/68059
+       * config/arm/linux-atomic-64bit.c (__write): Rename to...
+       (write): ...this and fix the return type.
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@230762 138bc75d-0d04-0410-961f-82ee72b054a4
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ libgcc/config/arm/linux-atomic-64bit.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libgcc/config/arm/linux-atomic-64bit.c b/libgcc/config/arm/linux-atomic-64bit.c
+index 5b8c6e2..9078673 100644
+--- a/libgcc/config/arm/linux-atomic-64bit.c
++++ b/libgcc/config/arm/linux-atomic-64bit.c
+@@ -33,7 +33,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
+    kernels; we check for that in an init section and bail out rather
+    unceremoneously.  */
+-extern unsigned int __write (int fd, const void *buf, unsigned int count);
++extern int write (int fd, const void *buf, unsigned int count);
+ extern void abort (void);
+ /* Kernel helper for compare-and-exchange.  */
+@@ -56,7 +56,7 @@ static void __check_for_sync8_kernelhelper (void)
+        for the user - I'm not sure I can rely on much else being
+        available at this point, so do the same as generic-morestack.c
+        write () and abort ().  */
+-      __write (2 /* stderr.  */, err, sizeof (err));
++      write (2 /* stderr.  */, err, sizeof (err));
+       abort ();
+     }
+ };
+-- 
+2.10.2
+
diff --git a/package/gcc/5.4.0/875-xtensa-implement-trap-pattern.patch b/package/gcc/5.4.0/875-xtensa-implement-trap-pattern.patch
new file mode 100644 (file)
index 0000000..870b079
--- /dev/null
@@ -0,0 +1,67 @@
+From 2b4b5775554c91a63ccae4ee566db696b633652e Mon Sep 17 00:00:00 2001
+From: jcmvbkbc <jcmvbkbc@138bc75d-0d04-0410-961f-82ee72b054a4>
+Date: Wed, 10 Jun 2015 15:07:40 +0000
+Subject: [PATCH] xtensa: implement trap pattern
+
+2015-06-10  Max Filippov  <jcmvbkbc@gmail.com>
+gcc/
+       * config/xtensa/xtensa.h (TARGET_DEBUG): New definition.
+       * config/xtensa/xtensa.md (define_attr "type"): New type "trap".
+       (define_insn "trap"): New definition.
+
+Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
+
+git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@224330 138bc75d-0d04-0410-961f-82ee72b054a4
+---
+ gcc/config/xtensa/xtensa.h  |  1 +
+ gcc/config/xtensa/xtensa.md | 15 ++++++++++++++-
+ 2 files changed, 15 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h
+index 615f741..fb8702c 100644
+--- a/gcc/config/xtensa/xtensa.h
++++ b/gcc/config/xtensa/xtensa.h
+@@ -67,6 +67,7 @@ extern unsigned xtensa_current_frame_size;
+ #define TARGET_THREADPTR      XCHAL_HAVE_THREADPTR
+ #define TARGET_LOOPS          XCHAL_HAVE_LOOPS
+ #define TARGET_WINDOWED_ABI   (XSHAL_ABI == XTHAL_ABI_WINDOWED)
++#define TARGET_DEBUG          XCHAL_HAVE_DEBUG
+ #define TARGET_DEFAULT \
+   ((XCHAL_HAVE_L32R   ? 0 : MASK_CONST16) |                           \
+diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
+index 6d84384..a577aa3 100644
+--- a/gcc/config/xtensa/xtensa.md
++++ b/gcc/config/xtensa/xtensa.md
+@@ -86,7 +86,7 @@
+ ;; Attributes.
+ (define_attr "type"
+-  "unknown,jump,call,load,store,move,arith,multi,nop,farith,fmadd,fconv,fload,fstore,mul16,mul32,div32,mac16,rsr,wsr,entry"
++  "unknown,jump,call,load,store,move,arith,multi,nop,farith,fmadd,fconv,fload,fstore,mul16,mul32,div32,mac16,rsr,wsr,entry,trap"
+   (const_string "unknown"))
+ (define_attr "mode"
+@@ -1764,6 +1764,19 @@
+   [(set_attr "length" "0")
+    (set_attr "type" "nop")])
++(define_insn "trap"
++  [(trap_if (const_int 1) (const_int 0))]
++  ""
++{
++  if (TARGET_DEBUG)
++    return "break\t1, 15";
++  else
++    return (TARGET_DENSITY ? "ill.n" : "ill");
++}
++  [(set_attr "type"   "trap")
++   (set_attr "mode"   "none")
++   (set_attr "length" "3")])
++
+ ;; Setting up a frame pointer is tricky for Xtensa because GCC doesn't
+ ;; know if a frame pointer is required until the reload pass, and
+ ;; because there may be an incoming argument value in the hard frame
+-- 
+2.1.4
+
diff --git a/package/gcc/5.4.0/876-xtensa-Fix-PR-target-78603.patch b/package/gcc/5.4.0/876-xtensa-Fix-PR-target-78603.patch
new file mode 100644 (file)
index 0000000..628268a
--- /dev/null
@@ -0,0 +1,37 @@
+From e178289a12a829ec47dc5038d91401f65381e71d Mon Sep 17 00:00:00 2001
+From: Max Filippov <jcmvbkbc@gmail.com>
+Date: Tue, 29 Nov 2016 13:09:17 -0800
+Subject: [PATCH 8/8] xtensa: Fix PR target/78603
+
+2016-11-29  Max Filippov  <jcmvbkbc@gmail.com>
+gcc/
+       * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero
+       overhead loop start between a call and its CALL_ARG_LOCATION
+       note.
+
+Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
+---
+Backported from: r242979
+
+ gcc/config/xtensa/xtensa.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
+index 206ff80..36ab1e3 100644
+--- a/gcc/config/xtensa/xtensa.c
++++ b/gcc/config/xtensa/xtensa.c
+@@ -4182,7 +4182,10 @@ hwloop_optimize (hwloop_info loop)
+       entry_after = BB_END (entry_bb);
+       while (DEBUG_INSN_P (entry_after)
+              || (NOTE_P (entry_after)
+-                 && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK))
++                 && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK
++               /* Make sure we don't split a call and its corresponding
++                  CALL_ARG_LOCATION note.  */
++                 && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION))
+         entry_after = PREV_INSN (entry_after);
+       emit_insn_after (seq, entry_after);
+-- 
+2.1.4
+
diff --git a/package/gcc/5.4.0/911-ppc-musl-support.patch b/package/gcc/5.4.0/911-ppc-musl-support.patch
new file mode 100644 (file)
index 0000000..f4905a4
--- /dev/null
@@ -0,0 +1,75 @@
+Add support for musl on ppc32
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur gcc-5.4.0.orig/gcc/config/rs6000/sysv4.h gcc-5.4.0/gcc/config/rs6000/sysv4.h
+--- gcc-5.4.0.orig/gcc/config/rs6000/sysv4.h   2015-09-24 15:46:45.000000000 +0200
++++ gcc-5.4.0/gcc/config/rs6000/sysv4.h        2016-11-27 13:12:33.226953738 +0100
+@@ -537,6 +537,9 @@
+ #ifndef CC1_SECURE_PLT_DEFAULT_SPEC
+ #define CC1_SECURE_PLT_DEFAULT_SPEC ""
+ #endif
++#ifndef LINK_SECURE_PLT_DEFAULT_SPEC
++#define LINK_SECURE_PLT_DEFAULT_SPEC ""
++#endif
+ /* Pass -G xxx to the compiler.  */
+ #undef CC1_SPEC
+@@ -757,17 +760,23 @@
+ #define LINK_START_LINUX_SPEC ""
++#define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","")
++
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
+ #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
++#define MUSL_DYNAMIC_LINKER \
++  "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
+ #if DEFAULT_LIBC == LIBC_UCLIBC
+-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
++#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}"
++#elif DEFAULT_LIBC == LIBC_MUSL
++#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{muclibc:" U ";:" M "}}"
+ #elif !defined (DEFAULT_LIBC) || DEFAULT_LIBC == LIBC_GLIBC
+-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}"
++#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{muclibc:" U ";:%{mmusl:" M ";:" G "}}"
+ #else
+ #error "Unsupported DEFAULT_LIBC"
+ #endif
+ #define GNU_USER_DYNAMIC_LINKER \
+-  CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
++  CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER, MUSL_DYNAMIC_LINKER)
+ #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+@@ -889,6 +898,7 @@
+   { "link_os_openbsd",                LINK_OS_OPENBSD_SPEC },                 \
+   { "link_os_default",                LINK_OS_DEFAULT_SPEC },                 \
+   { "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC },          \
++  { "link_secure_plt_default",        LINK_SECURE_PLT_DEFAULT_SPEC },         \
+   { "cpp_os_ads",             CPP_OS_ADS_SPEC },                      \
+   { "cpp_os_yellowknife",     CPP_OS_YELLOWKNIFE_SPEC },              \
+   { "cpp_os_mvme",            CPP_OS_MVME_SPEC },                     \
+diff -Nur gcc-5.4.0.orig/gcc/config/rs6000/sysv4le.h gcc-5.4.0/gcc/config/rs6000/sysv4le.h
+--- gcc-5.4.0.orig/gcc/config/rs6000/sysv4le.h 2015-09-24 15:46:45.000000000 +0200
++++ gcc-5.4.0/gcc/config/rs6000/sysv4le.h      2016-11-27 13:12:33.226953738 +0100
+@@ -31,3 +31,5 @@
+ /* Little-endian PowerPC64 Linux uses the ELF v2 ABI by default.  */
+ #define LINUX64_DEFAULT_ABI_ELFv2
++#undef MUSL_DYNAMIC_LINKER_E
++#define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","le")
+diff -Nur gcc-5.4.0.orig/gcc/config.gcc gcc-5.4.0/gcc/config.gcc
+--- gcc-5.4.0.orig/gcc/config.gcc      2015-09-10 16:17:53.000000000 +0200
++++ gcc-5.4.0/gcc/config.gcc   2016-11-27 13:14:17.149638148 +0100
+@@ -2413,6 +2413,10 @@
+           powerpc*-*-linux*paired*)
+               tm_file="${tm_file} rs6000/750cl.h" ;;
+       esac
++      case ${target} in
++          powerpc*-*-linux*-musl*)
++              enable_secureplt=yes ;;
++      esac
+       if test x${enable_secureplt} = xyes; then
+               tm_file="rs6000/secureplt.h ${tm_file}"
+       fi
diff --git a/package/gcc/6.2.0/870-xtensa-Fix-PR-target-78118.patch b/package/gcc/6.2.0/870-xtensa-Fix-PR-target-78118.patch
new file mode 100644 (file)
index 0000000..0598c76
--- /dev/null
@@ -0,0 +1,320 @@
+From 0d2556fa652cc85b3d042e862a38dd07d454175a Mon Sep 17 00:00:00 2001
+From: Max Filippov <jcmvbkbc@gmail.com>
+Date: Wed, 26 Oct 2016 08:02:51 +0000
+Subject: [PATCH 1/2] xtensa: Fix PR target/78118
+
+It started failing after the following commit: 32e90dc6a0cda45 ("PR
+rtl-optimization/61047").
+
+The change that made xtensa backend go ICE looks completely unrelated,
+and indeed, the issue is caused by the side effect of
+compute_frame_size() function call hidden in the
+INITIAL_ELIMINATION_OFFSET macro. This call updates the value of the
+xtensa_current_frame_size static variable, used in "return" instruction
+predicate. Prior to the change the value of xtensa_current_frame_size was
+set to 0 after the end of epilogue generation, which enabled the "return"
+instruction for the CALL0 ABI, but after the change the additional
+INITIAL_ELIMINATION_OFFSET calls make xtensa_current_frame_size non-zero
+and "return" pattern unavailable.
+
+Get rid of the global xtensa_current_frame_size and
+xtensa_callee_save_size variables by moving them into the
+machine_function structure. Implement predicate for the "return" pattern
+as a function. Don't communicate completion of epilogue generation
+through zeroing of xtensa_current_frame_size, add explicit epilogue_done
+variable to the machine_function structure. Don't update stack frame
+layout after the completion of reload.
+
+2016-10-26  Max Filippov  <jcmvbkbc@gmail.com>
+gcc/
+       * config/xtensa/xtensa-protos.h
+       (xtensa_use_return_instruction_p): New prototype.
+       * config/xtensa/xtensa.c (xtensa_current_frame_size,
+       xtensa_callee_save_size): Remove.
+       (struct machine_function): Add new fields: current_frame_size,
+       callee_save_size, frame_laid_out and epilogue_done.
+       (compute_frame_size, xtensa_expand_prologue,
+       xtensa_expand_epilogue): Replace xtensa_callee_save_size with
+       cfun->machine->callee_save_size and xtensa_current_frame_size
+       with cfun->machine->current_frame_size.
+       (compute_frame_size): Update cfun->machine->frame_laid_out and
+       don't update frame layout after reload completion.
+       (xtensa_expand_epilogue): Set cfun->machine->epilogue_done
+       instead of zeroing xtensa_current_frame_size.
+       (xtensa_use_return_instruction_p): New function.
+       * config/xtensa/xtensa.h (xtensa_current_frame_size): Remove
+       declaration.
+       (INITIAL_ELIMINATION_OFFSET): Use return value of
+       compute_frame_size instead of xtensa_current_frame_size value.
+       * config/xtensa/xtensa.md ("return" pattern): Use new predicate
+       function xtensa_use_return_instruction_p instead of inline code.
+
+Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
+---
+Backported from: r241748
+
+ gcc/config/xtensa/xtensa-protos.h |  1 +
+ gcc/config/xtensa/xtensa.c        | 82 ++++++++++++++++++++++++---------------
+ gcc/config/xtensa/xtensa.h        |  6 +--
+ gcc/config/xtensa/xtensa.md       |  2 +-
+ 4 files changed, 55 insertions(+), 36 deletions(-)
+
+diff --git a/gcc/config/xtensa/xtensa-protos.h b/gcc/config/xtensa/xtensa-protos.h
+index f2ca526..873557f 100644
+--- a/gcc/config/xtensa/xtensa-protos.h
++++ b/gcc/config/xtensa/xtensa-protos.h
+@@ -68,6 +68,7 @@ extern rtx xtensa_return_addr (int, rtx);
+ extern void xtensa_setup_frame_addresses (void);
+ extern int xtensa_dbx_register_number (int);
+ extern long compute_frame_size (int);
++extern bool xtensa_use_return_instruction_p (void);
+ extern void xtensa_expand_prologue (void);
+ extern void xtensa_expand_epilogue (void);
+ extern void order_regs_for_local_alloc (void);
+diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
+index 64d089b..e49f784 100644
+--- a/gcc/config/xtensa/xtensa.c
++++ b/gcc/config/xtensa/xtensa.c
+@@ -78,11 +78,6 @@ enum internal_test
+    can support a given mode.  */
+ char xtensa_hard_regno_mode_ok[(int) MAX_MACHINE_MODE][FIRST_PSEUDO_REGISTER];
+-/* Current frame size calculated by compute_frame_size.  */
+-unsigned xtensa_current_frame_size;
+-/* Callee-save area size in the current frame calculated by compute_frame_size. */
+-int xtensa_callee_save_size;
+-
+ /* Largest block move to handle in-line.  */
+ #define LARGEST_MOVE_RATIO 15
+@@ -94,6 +89,13 @@ struct GTY(()) machine_function
+   bool vararg_a7;
+   rtx vararg_a7_copy;
+   rtx_insn *set_frame_ptr_insn;
++  /* Current frame size calculated by compute_frame_size.  */
++  unsigned current_frame_size;
++  /* Callee-save area size in the current frame calculated by
++     compute_frame_size.  */
++  int callee_save_size;
++  bool frame_laid_out;
++  bool epilogue_done;
+ };
+ /* Vector, indexed by hard register number, which contains 1 for a
+@@ -2628,24 +2630,29 @@ compute_frame_size (int size)
+ {
+   int regno;
++  if (reload_completed && cfun->machine->frame_laid_out)
++    return cfun->machine->current_frame_size;
++
+   /* Add space for the incoming static chain value.  */
+   if (cfun->static_chain_decl != NULL)
+     size += (1 * UNITS_PER_WORD);
+-  xtensa_callee_save_size = 0;
++  cfun->machine->callee_save_size = 0;
+   for (regno = 0; regno < FIRST_PSEUDO_REGISTER; ++regno)
+     {
+       if (xtensa_call_save_reg(regno))
+-      xtensa_callee_save_size += UNITS_PER_WORD;
++      cfun->machine->callee_save_size += UNITS_PER_WORD;
+     }
+-  xtensa_current_frame_size =
++  cfun->machine->current_frame_size =
+     XTENSA_STACK_ALIGN (size
+-                      + xtensa_callee_save_size
++                      + cfun->machine->callee_save_size
+                       + crtl->outgoing_args_size
+                       + (WINDOW_SIZE * UNITS_PER_WORD));
+-  xtensa_callee_save_size = XTENSA_STACK_ALIGN (xtensa_callee_save_size);
+-  return xtensa_current_frame_size;
++  cfun->machine->callee_save_size =
++    XTENSA_STACK_ALIGN (cfun->machine->callee_save_size);
++  cfun->machine->frame_laid_out = true;
++  return cfun->machine->current_frame_size;
+ }
+@@ -2696,6 +2703,7 @@ xtensa_expand_prologue (void)
+     {
+       int regno;
+       HOST_WIDE_INT offset = 0;
++      int callee_save_size = cfun->machine->callee_save_size;
+       /* -128 is a limit of single addi instruction. */
+       if (total_size > 0 && total_size <= 128)
+@@ -2709,7 +2717,7 @@ xtensa_expand_prologue (void)
+         add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx);
+         offset = total_size - UNITS_PER_WORD;
+       }
+-      else if (xtensa_callee_save_size)
++      else if (callee_save_size)
+       {
+         /* 1020 is maximal s32i offset, if the frame is bigger than that
+          * we move sp to the end of callee-saved save area, save and then
+@@ -2717,13 +2725,13 @@ xtensa_expand_prologue (void)
+         if (total_size > 1024)
+           {
+             insn = emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx,
+-                                          GEN_INT (-xtensa_callee_save_size)));
++                                          GEN_INT (-callee_save_size)));
+             RTX_FRAME_RELATED_P (insn) = 1;
+             note_rtx = gen_rtx_SET (stack_pointer_rtx,
+                                     plus_constant (Pmode, stack_pointer_rtx,
+-                                                   -xtensa_callee_save_size));
++                                                   -callee_save_size));
+             add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx);
+-            offset = xtensa_callee_save_size - UNITS_PER_WORD;
++            offset = callee_save_size - UNITS_PER_WORD;
+           }
+         else
+           {
+@@ -2759,13 +2767,13 @@ xtensa_expand_prologue (void)
+       {
+         rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG);
+         emit_move_insn (tmp_reg, GEN_INT (total_size -
+-                                          xtensa_callee_save_size));
++                                          callee_save_size));
+         insn = emit_insn (gen_subsi3 (stack_pointer_rtx,
+                                       stack_pointer_rtx, tmp_reg));
+         RTX_FRAME_RELATED_P (insn) = 1;
+         note_rtx = gen_rtx_SET (stack_pointer_rtx,
+                                 plus_constant (Pmode, stack_pointer_rtx,
+-                                               xtensa_callee_save_size -
++                                               callee_save_size -
+                                                total_size));
+         add_reg_note (insn, REG_FRAME_RELATED_EXPR, note_rtx);
+       }
+@@ -2833,21 +2841,21 @@ xtensa_expand_epilogue (void)
+       int regno;
+       HOST_WIDE_INT offset;
+-      if (xtensa_current_frame_size > (frame_pointer_needed ? 127 : 1024))
++      if (cfun->machine->current_frame_size > (frame_pointer_needed ? 127 : 1024))
+       {
+         rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG);
+-        emit_move_insn (tmp_reg, GEN_INT (xtensa_current_frame_size -
+-                                          xtensa_callee_save_size));
++        emit_move_insn (tmp_reg, GEN_INT (cfun->machine->current_frame_size -
++                                          cfun->machine->callee_save_size));
+         emit_insn (gen_addsi3 (stack_pointer_rtx, frame_pointer_needed ?
+                                hard_frame_pointer_rtx : stack_pointer_rtx,
+                                tmp_reg));
+-        offset = xtensa_callee_save_size - UNITS_PER_WORD;
++        offset = cfun->machine->callee_save_size - UNITS_PER_WORD;
+       }
+       else
+       {
+         if (frame_pointer_needed)
+           emit_move_insn (stack_pointer_rtx, hard_frame_pointer_rtx);
+-        offset = xtensa_current_frame_size - UNITS_PER_WORD;
++        offset = cfun->machine->current_frame_size - UNITS_PER_WORD;
+       }
+       /* Prevent reordering of saved a0 update and loading it back from
+@@ -2867,16 +2875,16 @@ xtensa_expand_epilogue (void)
+           }
+       }
+-      if (xtensa_current_frame_size > 0)
++      if (cfun->machine->current_frame_size > 0)
+       {
+         if (frame_pointer_needed || /* always reachable with addi */
+-            xtensa_current_frame_size > 1024 ||
+-            xtensa_current_frame_size <= 127)
++            cfun->machine->current_frame_size > 1024 ||
++            cfun->machine->current_frame_size <= 127)
+           {
+-            if (xtensa_current_frame_size <= 127)
+-              offset = xtensa_current_frame_size;
++            if (cfun->machine->current_frame_size <= 127)
++              offset = cfun->machine->current_frame_size;
+             else
+-              offset = xtensa_callee_save_size;
++              offset = cfun->machine->callee_save_size;
+             emit_insn (gen_addsi3 (stack_pointer_rtx,
+                                    stack_pointer_rtx,
+@@ -2885,7 +2893,8 @@ xtensa_expand_epilogue (void)
+         else
+           {
+             rtx tmp_reg = gen_rtx_REG (Pmode, A9_REG);
+-            emit_move_insn (tmp_reg, GEN_INT (xtensa_current_frame_size));
++            emit_move_insn (tmp_reg,
++                            GEN_INT (cfun->machine->current_frame_size));
+             emit_insn (gen_addsi3 (stack_pointer_rtx, stack_pointer_rtx,
+                                    tmp_reg));
+           }
+@@ -2896,11 +2905,22 @@ xtensa_expand_epilogue (void)
+                                 stack_pointer_rtx,
+                                 EH_RETURN_STACKADJ_RTX));
+     }
+-  xtensa_current_frame_size = 0;
+-  xtensa_callee_save_size = 0;
++  cfun->machine->epilogue_done = true;
+   emit_jump_insn (gen_return ());
+ }
++bool
++xtensa_use_return_instruction_p (void)
++{
++  if (!reload_completed)
++    return false;
++  if (TARGET_WINDOWED_ABI)
++    return true;
++  if (compute_frame_size (get_frame_size ()) == 0)
++    return true;
++  return cfun->machine->epilogue_done;
++}
++
+ void
+ xtensa_set_return_address (rtx address, rtx scratch)
+ {
+diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h
+index 82e9900..58eb1b2 100644
+--- a/gcc/config/xtensa/xtensa.h
++++ b/gcc/config/xtensa/xtensa.h
+@@ -23,8 +23,6 @@ along with GCC; see the file COPYING3.  If not see
+ /* External variables defined in xtensa.c.  */
+-extern unsigned xtensa_current_frame_size;
+-
+ /* Macros used in the machine description to select various Xtensa
+    configuration options.  */
+ #ifndef XCHAL_HAVE_MUL32_HIGH
+@@ -477,14 +475,14 @@ enum reg_class
+ /* Specify the initial difference between the specified pair of registers.  */
+ #define INITIAL_ELIMINATION_OFFSET(FROM, TO, OFFSET)                  \
+   do {                                                                        \
+-    compute_frame_size (get_frame_size ());                           \
++    long frame_size = compute_frame_size (get_frame_size ());         \
+     switch (FROM)                                                     \
+       {                                                                       \
+       case FRAME_POINTER_REGNUM:                                      \
+         (OFFSET) = 0;                                                 \
+       break;                                                          \
+       case ARG_POINTER_REGNUM:                                                \
+-        (OFFSET) = xtensa_current_frame_size;                         \
++        (OFFSET) = frame_size;                                                \
+       break;                                                          \
+       default:                                                                \
+       gcc_unreachable ();                                             \
+diff --git a/gcc/config/xtensa/xtensa.md b/gcc/config/xtensa/xtensa.md
+index db54a12..fcdb6c8 100644
+--- a/gcc/config/xtensa/xtensa.md
++++ b/gcc/config/xtensa/xtensa.md
+@@ -1663,7 +1663,7 @@
+ (define_insn "return"
+   [(return)
+    (use (reg:SI A0_REG))]
+-  "(TARGET_WINDOWED_ABI || !xtensa_current_frame_size) && reload_completed"
++  "xtensa_use_return_instruction_p ()"
+ {
+   return TARGET_WINDOWED_ABI ?
+       (TARGET_DENSITY ? "retw.n" : "retw") :
+-- 
+2.1.4
+
diff --git a/package/gcc/6.2.0/871-xtensa-Fix-PR-target-78603.patch b/package/gcc/6.2.0/871-xtensa-Fix-PR-target-78603.patch
new file mode 100644 (file)
index 0000000..0331814
--- /dev/null
@@ -0,0 +1,37 @@
+From 59cce7b304a8cbbb508ba21ab2f9052d3ee9a9e3 Mon Sep 17 00:00:00 2001
+From: Max Filippov <jcmvbkbc@gmail.com>
+Date: Tue, 29 Nov 2016 13:09:17 -0800
+Subject: [PATCH 2/2] xtensa: Fix PR target/78603
+
+2016-11-29  Max Filippov  <jcmvbkbc@gmail.com>
+gcc/
+       * config/xtensa/xtensa.c (hwloop_optimize): Don't emit zero
+       overhead loop start between a call and its CALL_ARG_LOCATION
+       note.
+
+Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
+---
+Backported from: r242979
+
+ gcc/config/xtensa/xtensa.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
+index e49f784..70f698a 100644
+--- a/gcc/config/xtensa/xtensa.c
++++ b/gcc/config/xtensa/xtensa.c
+@@ -4158,7 +4158,10 @@ hwloop_optimize (hwloop_info loop)
+       entry_after = BB_END (entry_bb);
+       while (DEBUG_INSN_P (entry_after)
+              || (NOTE_P (entry_after)
+-                 && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK))
++                 && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK
++               /* Make sure we don't split a call and its corresponding
++                  CALL_ARG_LOCATION note.  */
++                 && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION))
+         entry_after = PREV_INSN (entry_after);
+       emit_insn_after (seq, entry_after);
+-- 
+2.1.4
+
index 446df4dc782050c277b424fc27a796768f9f9976..d10798b10d57159370b520528325111fddb969f0 100644 (file)
@@ -64,9 +64,8 @@ choice
                # musl ppc64 unsupported
                depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64el))
                # Unsupported MIPS cores
-               depends on !BR2_mips_interaptiv && !BR2_mips_m5100 && \
-                       !BR2_mips_m5101 && !BR2_mips_m6201 && !BR2_mips_i6400 && \
-                       !BR2_mips_p6600
+               depends on !BR2_mips_interaptiv && !BR2_mips_m5150 && \
+                       !BR2_mips_m6250 && !BR2_mips_i6400 && !BR2_mips_p6600
                # musl mips64 unsupported
                depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_mips64 || BR2_mips64el))
                select BR2_TOOLCHAIN_GCC_AT_LEAST_5
@@ -77,7 +76,7 @@ choice
                depends on !BR2_arc
                depends on !BR2_microblaze
                # Unsupported MIPS cores
-               depends on !BR2_mips_m6201 && !BR2_mips_p6600
+               depends on !BR2_mips_m6250 && !BR2_mips_p6600
                select BR2_TOOLCHAIN_GCC_AT_LEAST_6
 
 endchoice
@@ -99,7 +98,7 @@ config BR2_GCC_VERSION
        default "4.9.4"     if BR2_GCC_VERSION_4_9_X
        default "5.4.0"     if BR2_GCC_VERSION_5_X
        default "6.2.0"     if BR2_GCC_VERSION_6_X
-       default "arc-2016.09-eng015" if BR2_GCC_VERSION_ARC
+       default "arc-2016.09-rc1" if BR2_GCC_VERSION_ARC
 
 config BR2_EXTRA_GCC_CONFIG_OPTIONS
        string "Additional gcc options"
index ce738ef531eae6e57e5eff9cc58e0ef386e67872..e5d96f44ad91549c41136e3a110dbcabecaf22ee 100644 (file)
@@ -12,4 +12,4 @@ sha512  2941cc950c8f2409a314df497631f9b0266211aa74746c1839c46e04f1c7c299afe2528d
 sha512  1e8b826a3d44b9d5899309894e20c03abeb352bf3d273b8ad63af814c0ee2911f1a83ce1cd4cdd2d1cb0b3e3c34e9b7ae1b2ab83dfc649ee817ab05247c76198  gcc-6.2.0.tar.bz2
 
 # Locally calculated (fetched from Github)
-sha512  9f365452f746ae91875d935c2ec5ed16cd11a2973f69bd23193fec9fc6b557e0dd66bb169e7efb7ec63fd78af36139005abcf5a5a1d89d6f49788b2ed7b334fb  gcc-arc-2016.09-eng015.tar.gz
+sha512  7029d7ae1316b9385880f32283aa6c4979b1257500bb21e3fb234475ecb20082f46b114d8b7022c75a8dcf0c0c7b6b02e9384b49dd3189adc3d454502b8b0c26  gcc-arc-2016.09-rc1.tar.gz
index a36dc0f0f0cee827b33d2b0e217eaa64c18e4277..da6b30ecf493acdeb34d9dc636a8fa7f1e55fd26 100644 (file)
@@ -27,7 +27,7 @@ config BR2_PACKAGE_HOST_GDB_PYTHON
 
 config BR2_PACKAGE_HOST_GDB_SIM
        bool "Simulator support"
-       depends on !BR2_arc
+       depends on !BR2_arc && !BR2_microblaze
        help
          This option enables the simulator support in the cross gdb.
 
@@ -56,7 +56,7 @@ endif
 config BR2_GDB_VERSION
        string
        depends on BR2_PACKAGE_GDB || BR2_PACKAGE_HOST_GDB
-       default "arc-2016.03-gdb" if BR2_arc
+       default "arc-2016.09-rc1-gdb" if BR2_arc
        default "6be65fb56ea6694a9260733a536a023a1e2d4d57" if BR2_microblaze
        default "7.9.1"    if BR2_GDB_VERSION_7_9
        default "7.10.1"   if BR2_GDB_VERSION_7_10 || !BR2_PACKAGE_HOST_GDB
index 611a75ca272ff030b1f2998a8fea28cd09331b4b..8c0d51bc820f1fc86e7701038bca907e167b9730 100644 (file)
@@ -5,4 +5,4 @@ sha512  f80ec6c8a0f0b54c8b945666e875809174402b7e121efb378ebac931a91f9a1cc0048568
 
 # Locally calculated (fetched from Github)
 sha512  0a467091d4b01fbecabb4b8da1cb743025c70e7f4874a0b5c8fa2ec623569a39bde6762b91806de0be6e63711aeb6909715cfbe43860de73d8aec6159a9f10a7       gdb-6be65fb56ea6694a9260733a536a023a1e2d4d57.tar.gz
-sha512  1abef1357896c2b57cfa7f7414eedc49d0de26b54321c680c2d027b1a27ec453d421e7f89a5281336047542379fd4820685802059efbd32b87c5ccffbaf2bd16       gdb-arc-2016.03-gdb.tar.gz
+sha512  e6019ac0d6b1354943d3c06c84f353ba49fef105b07c1a04ad90cc5b65f91e38fe6c671e0c34a9541ee282d0f42cf24579c011a0469d19faaa4d00d64a17afe2       gdb-arc-2016.09-rc1-gdb.tar.gz
index ccf9e4968dc4d9feb337e663ee461f96ccfcf436..ea27d0c6eb93da8fccd6942aa9d1069a9508ca5a 100644 (file)
@@ -100,6 +100,13 @@ GDB_CONF_OPTS = \
        --disable-werror \
        --enable-static
 
+# When gdb is built as C++ application for ARC it segfaults at runtime
+# So we pass --disable-build-with-cxx config option to force gdb not to
+# be built as C++ app.
+ifeq ($(BR2_arc),y)
+GDB_CONF_OPTS += --disable-build-with-cxx
+endif
+
 ifeq ($(BR2_PACKAGE_GDB_TUI),y)
 GDB_CONF_OPTS += --enable-tui
 else
index 26342bccd3663fbdb1652bfc0e7d48970f340d58..064a845eda5c639fed18200caa006dfd75991d72 100644 (file)
@@ -1,2 +1,2 @@
 # sha256 locally computed
-sha256 17caab725539447bcb17a14b17905242cbf287087e53a6777524feb7bbaeed06        gnuchess-6.2.1.tar.gz
+sha256 3c425c0264f253fc5cc2ba969abe667d77703c728770bd4b23c456cbe5e082ef  gnuchess-6.2.4.tar.gz
index 0555cb17b4fcda9a4f26402a267c397005f47ce9..e066b01fe5ee78d9879d66e0d09b2b83ba61b793 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-GNUCHESS_VERSION = 6.2.1
+GNUCHESS_VERSION = 6.2.4
 GNUCHESS_SITE = $(BR2_GNU_MIRROR)/chess
 GNUCHESS_LICENSE = GPLv2+
 GNUCHESS_LICENSE_FILES = COPYING
index 50f5e7fa1912d41a17ec7f48e0a2aaec1b1dccba..8301afe8f2e21dc303928d5ecd21053a33a85312 100644 (file)
@@ -49,6 +49,7 @@ config BR2_PACKAGE_GNURADIO_CTRLPORT
 config BR2_PACKAGE_GNURADIO_FEC
        bool "gr-fec support"
        select BR2_PACKAGE_GNURADIO_BLOCKS
+       select BR2_PACKAGE_GSL
        help
          FEC signal processing blocks
 
index 5cb00d24161b44e0d9c8fb1fddf4fc27bbf9c337..f1817f61c2c7e1e30d20598aa25ac4b91dad5073 100644 (file)
@@ -89,6 +89,7 @@ GNURADIO_CONF_OPTS += -DENABLE_GR_DIGITAL=OFF
 endif
 
 ifeq ($(BR2_PACKAGE_GNURADIO_FEC),y)
+GNURADIO_DEPENDENCIES += gsl
 GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=ON
 else
 GNURADIO_CONF_OPTS += -DENABLE_GR_FEC=OFF
index 8d4d346bf3eedd7b629b367a1f03b822f61a8b78..a210033efdf650562c6039418e12e9386dd5976b 100644 (file)
@@ -2,7 +2,7 @@ config BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS
        bool
        default y
        depends on (BR2_arm && BR2_TOOLCHAIN_SUPPORTS_PIE) || BR2_aarch64 \
-               || BR2_i386 || BR2_x86_64 || BR2_powerpc64 || BR2_powerpc64le \
+               || BR2_i386 || BR2_x86_64 || BR2_powerpc64le \
                || BR2_mips64 || BR2_mips64el
        depends on !BR2_ARM_CPU_ARMV4
        # MIPS R6 support in Go has not yet been developed.
index 4fe5d18b1a56feb9931c60ceb6e6ab2d8271a4e2..73067d3b1572c54fe188cc413496cccfe10c58e9 100644 (file)
@@ -33,6 +33,8 @@ endif
 # Build libgpsmm if we've got C++
 ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
 GPSD_LDFLAGS += -lstdc++
+GPSD_CFLAGS += -std=gnu++98
+GPSD_CXXFLAGS += -std=gnu++98
 GPSD_SCONS_OPTS += libgpsmm=yes
 else
 GPSD_SCONS_OPTS += libgpsmm=no
index ca54a4d77f00f69b9fe90312f1a5c098039d575f..88c74143bf460414229fee2c01d71bd52ee57f1a 100644 (file)
@@ -32,6 +32,11 @@ ifeq ($(BR2_STATIC_LIBS),y)
 GUILE_CFLAGS += -DGC_NO_DLOPEN
 endif
 
+# Triggers assembler error with -Os
+ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM)$(BR2_OPTIMIZE_S),yy)
+GUILE_CFLAGS += -O2
+endif
+
 # It can use readline, but on the condition that it was build against
 # ncurses. If both aren't present disable readline support since the
 # host readline/ncurses support can poison the build.
index 8ad340dd19c5bce965ad89b5d800104d865450e9..9eb3a9e860257e746e8ea8897b0686f2658fa6fc 100644 (file)
@@ -1,2 +1,2 @@
 # From http://www.imagemagick.org/download/releases/digest.rdf
-sha256 86a1f04077de2b1486a93088030b010780067b25ab0284560435e2f458e247ca ImageMagick-7.0.3-4.tar.xz
+sha256 dc128b281c255d71d754934408d278b3ca314253103ca2501cd0b8d5ec98db74  ImageMagick-7.0.3-8.tar.xz
index 2cae064bec2cd20310d2739b45a493c72e753055..f384fc38dc4ece81a92982797150645c25065695 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-IMAGEMAGICK_VERSION = 7.0.3-4
+IMAGEMAGICK_VERSION = 7.0.3-8
 IMAGEMAGICK_SOURCE = ImageMagick-$(IMAGEMAGICK_VERSION).tar.xz
 IMAGEMAGICK_SITE = http://www.imagemagick.org/download/releases
 IMAGEMAGICK_LICENSE = Apache-2.0
similarity index 50%
rename from package/jamvm/0001-Use-fenv.h-instead-of-fpu_control.h.patch
rename to package/jamvm/0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch
index 50f95cde57d5f5ae97e4ed7cc8803385773279fb..78ee9b7e1848d59f656d7d84c5653d7b3ad51e85 100644 (file)
-From 7152ded5219453c9ff1cd062cecbeaf4d77e4cab Mon Sep 17 00:00:00 2001
+From ecd4eceae98cfb1c83133bdeaa9095546ca8b7c6 Mon Sep 17 00:00:00 2001
 From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Date: Thu, 26 May 2016 15:05:48 +0200
-Subject: [PATCH] Use <fenv.h> instead of <fpu_control.h>
+Subject: [PATCH] Use <fenv.h> when available instead of <fpu_control.h>
 
 musl libc (http://musl-libc.org lack the non-standard <fpu_control.h>
 header, which is used in src/os/linux/{i386,x86_64}/init.c files to
 setup the floating point precision. This patch makes it use the
-standard C <fenv.h> header instead.
+standard C <fenv.h> header instead when available.
 
 Original patch at Felix Janda at
-https://sourceforge.net/p/jamvm/patches/6/.
+https://sourceforge.net/p/jamvm/patches/6/, adapted to still use
+<fpu_control.h> if <fenv.h> is not provided.
 
 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 ---
- src/os/linux/i386/init.c   | 12 ++++++------
- src/os/linux/x86_64/init.c | 16 ++++++----------
- 2 files changed, 12 insertions(+), 16 deletions(-)
+ configure.ac               |  2 +-
+ src/os/linux/i386/init.c   | 15 +++++++++++++++
+ src/os/linux/x86_64/init.c | 15 +++++++++++++--
+ 3 files changed, 29 insertions(+), 3 deletions(-)
 
+diff --git a/configure.ac b/configure.ac
+index 19f77e6..ce59a3e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -279,7 +279,7 @@ fi
+ dnl Checks for header files.
+ AC_HEADER_STDC
+-AC_CHECK_HEADERS(sys/time.h unistd.h endian.h sys/param.h locale.h alloca.h)
++AC_CHECK_HEADERS(sys/time.h unistd.h endian.h sys/param.h locale.h alloca.h fenv.h)
+ if test "$enable_zip" != no; then
+     AC_CHECK_HEADER(zlib.h,,AC_MSG_ERROR(zlib.h is missing))
 diff --git a/src/os/linux/i386/init.c b/src/os/linux/i386/init.c
-index d9c6648..94a733e 100644
+index d9c6648..8fefe7d 100644
 --- a/src/os/linux/i386/init.c
 +++ b/src/os/linux/i386/init.c
-@@ -19,18 +19,18 @@
+@@ -19,18 +19,33 @@
   * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
   */
  
--#include <fpu_control.h>
++#include "config.h"
++
++#if defined(HAVE_FENV_H)
 +#include <fenv.h>
++#else
+ #include <fpu_control.h>
++#endif
  
  /* Change floating point precision to double (64-bit) from
   * the extended (80-bit) Linux default. */
  
  void setDoublePrecision() {
--    fpu_control_t cw;
++#if defined(HAVE_FENV_H)
 +    fenv_t fenv;
--    _FPU_GETCW(cw);
--    cw &= ~_FPU_EXTENDED;
--    cw |= _FPU_DOUBLE;
--    _FPU_SETCW(cw);
++
 +    fegetenv(&fenv);
 +    fenv.__control_word &= ~0x300; /* _FPU_EXTENDED */
 +    fenv.__control_word |= 0x200; /* _FPU_DOUBLE */
 +    fesetenv(&fenv);
++#else
+     fpu_control_t cw;
+     _FPU_GETCW(cw);
+     cw &= ~_FPU_EXTENDED;
+     cw |= _FPU_DOUBLE;
+     _FPU_SETCW(cw);
++#endif
  }
  
  void initialisePlatform() {
 diff --git a/src/os/linux/x86_64/init.c b/src/os/linux/x86_64/init.c
-index 9d55229..a76a923 100644
+index 9d55229..b42b14e 100644
 --- a/src/os/linux/x86_64/init.c
 +++ b/src/os/linux/x86_64/init.c
-@@ -19,9 +19,7 @@
+@@ -19,7 +19,11 @@
   * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
   */
  
 -#ifdef __linux__
--#include <fpu_control.h>
--#endif
++#include "config.h"
++
++#if defined(HAVE_FENV_H)
 +#include <fenv.h>
++#else
+ #include <fpu_control.h>
+ #endif
  
- /* Change the x87 FPU precision to double (64-bit) from the extended
-    (80-bit) Linux default.  Note, unlike on i386, my testcases pass
-@@ -30,14 +28,12 @@
+@@ -30,7 +34,14 @@
  */
  
  void setDoublePrecision() {
 -#ifdef __linux__
--    fpu_control_t cw;
++#if defined(HAVE_FENV_H)
 +    fenv_t fenv;
--    _FPU_GETCW(cw);
--    cw &= ~_FPU_EXTENDED;
--    cw |= _FPU_DOUBLE;
--    _FPU_SETCW(cw);
--#endif
++
 +    fegetenv(&fenv);
 +    fenv.__control_word &= ~0x300; /*_FPU_EXTENDED */
 +    fenv.__control_word |= 0x200; /*_FPU_DOUBLE */
 +    fesetenv(&fenv);
- }
++#else
+     fpu_control_t cw;
  
- void initialisePlatform() {
+     _FPU_GETCW(cw);
 -- 
 2.7.4
 
index b1520ada498143cd2b0f872b0c8ddbf4fe0657e7..ee80c80b2f379180bfab1fc8b3e027905197b34b 100644 (file)
@@ -9,6 +9,8 @@ JAMVM_SITE = http://downloads.sourceforge.net/project/jamvm/jamvm/JamVM%20$(JAMV
 JAMVM_LICENSE = GPLv2+
 JAMVM_LICENSE_FILES = COPYING
 JAMVM_DEPENDENCIES = zlib classpath
+# For 0001-Use-fenv.h-when-available-instead-of-fpu_control.h.patch
+JAMVM_AUTORECONF = YES
 # int inlining seems to crash jamvm, don't build shared version of internal lib
 JAMVM_CONF_OPTS = \
        --with-classpath-install-dir=/usr \
@@ -22,4 +24,11 @@ ifeq ($(BR2_arm),y)
 JAMVM_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -marm"
 endif
 
+# Needed for autoreconf
+define JAMVM_CREATE_M4_DIR
+       mkdir -p $(@D)/m4
+endef
+
+JAMVM_POST_PATCH_HOOKS += JAMVM_CREATE_M4_DIR
+
 $(eval $(autotools-package))
diff --git a/package/jasper/0001-fix-CVE-2014-9029.patch b/package/jasper/0001-fix-CVE-2014-9029.patch
deleted file mode 100644 (file)
index c2e95a8..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-Fix CVE-2014-9029
-
-Patch taken from https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2014-9029
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c    2014-11-27 12:45:44.000000000 +0100
-+++ jasper-1.900.1.orig/src/libjasper/jpc/jpc_dec.c    2014-11-27 12:44:58.000000000 +0100
-@@ -1281,7 +1281,7 @@ static int jpc_dec_process_coc(jpc_dec_t
-       jpc_coc_t *coc = &ms->parms.coc;
-       jpc_dec_tile_t *tile;
--      if (JAS_CAST(int, coc->compno) > dec->numcomps) {
-+      if (JAS_CAST(int, coc->compno) >= dec->numcomps) {
-               jas_eprintf("invalid component number in COC marker segment\n");
-               return -1;
-       }
-@@ -1307,7 +1307,7 @@ static int jpc_dec_process_rgn(jpc_dec_t
-       jpc_rgn_t *rgn = &ms->parms.rgn;
-       jpc_dec_tile_t *tile;
--      if (JAS_CAST(int, rgn->compno) > dec->numcomps) {
-+      if (JAS_CAST(int, rgn->compno) >= dec->numcomps) {
-               jas_eprintf("invalid component number in RGN marker segment\n");
-               return -1;
-       }
-@@ -1356,7 +1356,7 @@ static int jpc_dec_process_qcc(jpc_dec_t
-       jpc_qcc_t *qcc = &ms->parms.qcc;
-       jpc_dec_tile_t *tile;
--      if (JAS_CAST(int, qcc->compno) > dec->numcomps) {
-+      if (JAS_CAST(int, qcc->compno) >= dec->numcomps) {
-               jas_eprintf("invalid component number in QCC marker segment\n");
-               return -1;
-       }
diff --git a/package/jasper/0002-fix-CVE-2014-8138.patch b/package/jasper/0002-fix-CVE-2014-8138.patch
deleted file mode 100644 (file)
index e107123..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-See https://bugzilla.redhat.com/show_bug.cgi?id=1173162
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c    2014-12-11 14:06:44.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:06:26.000000000 +0100
-@@ -386,6 +386,11 @@ jas_image_t *jp2_decode(jas_stream_t *in
-       /* Determine the type of each component. */
-       if (dec->cdef) {
-               for (i = 0; i < dec->numchans; ++i) {
-+                      /* Is the channel number reasonable? */
-+                      if (dec->cdef->data.cdef.ents[i].channo >= dec->numchans) {
-+                              jas_eprintf("error: invalid channel number in CDEF box\n");
-+                              goto error;
-+                      }
-                       jas_image_setcmpttype(dec->image,
-                         dec->chantocmptlut[dec->cdef->data.cdef.ents[i].channo],
-                         jp2_getct(jas_image_clrspc(dec->image),
diff --git a/package/jasper/0003-fix-CVE-2014-8137-1.patch b/package/jasper/0003-fix-CVE-2014-8137-1.patch
deleted file mode 100644 (file)
index 0253c62..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-See https://bugzilla.redhat.com/show_bug.cgi?id=1173157
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- jasper-1.900.1.orig/src/libjasper/base/jas_icc.c   2014-12-11 14:06:44.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/base/jas_icc.c        2014-12-11 15:16:37.971272386 +0100
-@@ -1009,7 +1009,6 @@ static int jas_icccurv_input(jas_iccattr
-       return 0;
- error:
--      jas_icccurv_destroy(attrval);
-       return -1;
- }
-@@ -1127,7 +1126,6 @@ static int jas_icctxtdesc_input(jas_icca
- #endif
-       return 0;
- error:
--      jas_icctxtdesc_destroy(attrval);
-       return -1;
- }
-@@ -1206,8 +1204,6 @@ static int jas_icctxt_input(jas_iccattrv
-               goto error;
-       return 0;
- error:
--      if (txt->string)
--              jas_free(txt->string);
-       return -1;
- }
-@@ -1328,7 +1324,6 @@ static int jas_icclut8_input(jas_iccattr
-               goto error;
-       return 0;
- error:
--      jas_icclut8_destroy(attrval);
-       return -1;
- }
-@@ -1497,7 +1492,6 @@ static int jas_icclut16_input(jas_iccatt
-               goto error;
-       return 0;
- error:
--      jas_icclut16_destroy(attrval);
-       return -1;
- }
diff --git a/package/jasper/0004-fix-CVE-2014-8137-2.patch b/package/jasper/0004-fix-CVE-2014-8137-2.patch
deleted file mode 100644 (file)
index e052709..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-See https://bugzilla.redhat.com/show_bug.cgi?id=1173157
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- jasper-1.900.1.orig/src/libjasper/jp2/jp2_dec.c    2014-12-11 14:30:54.193209780 +0100
-+++ jasper-1.900.1/src/libjasper/jp2/jp2_dec.c 2014-12-11 14:36:46.313217814 +0100
-@@ -291,7 +291,10 @@ jas_image_t *jp2_decode(jas_stream_t *in
-       case JP2_COLR_ICC:
-               iccprof = jas_iccprof_createfrombuf(dec->colr->data.colr.iccp,
-                 dec->colr->data.colr.iccplen);
--              assert(iccprof);
-+              if (!iccprof) {
-+                      jas_eprintf("error: failed to parse ICC profile\n");
-+                      goto error;
-+              }
-               jas_iccprof_gethdr(iccprof, &icchdr);
-               jas_eprintf("ICC Profile CS %08x\n", icchdr.colorspc);
-               jas_image_setclrspc(dec->image, fromiccpcs(icchdr.colorspc));
diff --git a/package/jasper/0005-fix-CVE-2014-8157.patch b/package/jasper/0005-fix-CVE-2014-8157.patch
deleted file mode 100644 (file)
index ab81674..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Fix CVE-2014-8157 - dec->numtiles off-by-one check in jpc_dec_process_sot()
-From https://bugzilla.redhat.com/show_bug.cgi?id=1179282
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.CVE-2014-8157 jasper-1.900.1/src/libjasper/jpc/jpc_dec.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_dec.c.CVE-2014-8157   2015-01-19 16:59:36.000000000 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_dec.c 2015-01-19 17:07:41.609863268 +0100
-@@ -489,7 +489,7 @@ static int jpc_dec_process_sot(jpc_dec_t
-               dec->curtileendoff = 0;
-       }
--      if (JAS_CAST(int, sot->tileno) > dec->numtiles) {
-+      if (JAS_CAST(int, sot->tileno) >= dec->numtiles) {
-               jas_eprintf("invalid tile number in SOT marker segment\n");
-               return -1;
-       }
diff --git a/package/jasper/0006-fix-CVE-2014-8158.patch b/package/jasper/0006-fix-CVE-2014-8158.patch
deleted file mode 100644 (file)
index 8413d2e..0000000
+++ /dev/null
@@ -1,334 +0,0 @@
-Fix CVE-2014-8158 - unrestricted stack memory use in jpc_qmfb.c
-From https://bugzilla.redhat.com/show_bug.cgi?id=1179298
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -up jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c.CVE-2014-8158 jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c
---- jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c.CVE-2014-8158  2015-01-19 17:25:28.730195502 +0100
-+++ jasper-1.900.1/src/libjasper/jpc/jpc_qmfb.c        2015-01-19 17:27:20.214663127 +0100
-@@ -306,11 +306,7 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
- {
-       int bufsize = JPC_CEILDIVPOW2(numcols, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
--#else
--      jpc_fix_t splitbuf[bufsize];
--#endif
-       jpc_fix_t *buf = splitbuf;
-       register jpc_fix_t *srcptr;
-       register jpc_fix_t *dstptr;
-@@ -318,7 +314,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
-       register int m;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Get a buffer. */
-       if (bufsize > QMFB_SPLITBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -326,7 +321,6 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
-                       abort();
-               }
-       }
--#endif
-       if (numcols >= 2) {
-               hstartcol = (numcols + 1 - parity) >> 1;
-@@ -360,12 +354,10 @@ void jpc_qmfb_split_row(jpc_fix_t *a, in
-               }
-       }
--#if !defined(HAVE_VLA)
-       /* If the split buffer was allocated on the heap, free this memory. */
-       if (buf != splitbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -374,11 +366,7 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
- {
-       int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
--#else
--      jpc_fix_t splitbuf[bufsize];
--#endif
-       jpc_fix_t *buf = splitbuf;
-       register jpc_fix_t *srcptr;
-       register jpc_fix_t *dstptr;
-@@ -386,7 +374,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
-       register int m;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Get a buffer. */
-       if (bufsize > QMFB_SPLITBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -394,7 +381,6 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
-                       abort();
-               }
-       }
--#endif
-       if (numrows >= 2) {
-               hstartcol = (numrows + 1 - parity) >> 1;
-@@ -428,12 +414,10 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
-               }
-       }
--#if !defined(HAVE_VLA)
-       /* If the split buffer was allocated on the heap, free this memory. */
-       if (buf != splitbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -442,11 +426,7 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
- {
-       int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
--      jpc_fix_t splitbuf[bufsize * JPC_QMFB_COLGRPSIZE];
--#endif
-       jpc_fix_t *buf = splitbuf;
-       jpc_fix_t *srcptr;
-       jpc_fix_t *dstptr;
-@@ -457,7 +437,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
-       int m;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Get a buffer. */
-       if (bufsize > QMFB_SPLITBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -465,7 +444,6 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
-                       abort();
-               }
-       }
--#endif
-       if (numrows >= 2) {
-               hstartcol = (numrows + 1 - parity) >> 1;
-@@ -517,12 +495,10 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
-               }
-       }
--#if !defined(HAVE_VLA)
-       /* If the split buffer was allocated on the heap, free this memory. */
-       if (buf != splitbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -531,11 +507,7 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- {
-       int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
--      jpc_fix_t splitbuf[bufsize * numcols];
--#endif
-       jpc_fix_t *buf = splitbuf;
-       jpc_fix_t *srcptr;
-       jpc_fix_t *dstptr;
-@@ -546,7 +518,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
-       int m;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Get a buffer. */
-       if (bufsize > QMFB_SPLITBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -554,7 +525,6 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
-                       abort();
-               }
-       }
--#endif
-       if (numrows >= 2) {
-               hstartcol = (numrows + 1 - parity) >> 1;
-@@ -606,12 +576,10 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
-               }
-       }
--#if !defined(HAVE_VLA)
-       /* If the split buffer was allocated on the heap, free this memory. */
-       if (buf != splitbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -619,18 +587,13 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
- {
-       int bufsize = JPC_CEILDIVPOW2(numcols, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
--#else
--      jpc_fix_t joinbuf[bufsize];
--#endif
-       jpc_fix_t *buf = joinbuf;
-       register jpc_fix_t *srcptr;
-       register jpc_fix_t *dstptr;
-       register int n;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Allocate memory for the join buffer from the heap. */
-       if (bufsize > QMFB_JOINBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -638,7 +601,6 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
-                       abort();
-               }
-       }
--#endif
-       hstartcol = (numcols + 1 - parity) >> 1;
-@@ -670,12 +632,10 @@ void jpc_qmfb_join_row(jpc_fix_t *a, int
-               ++srcptr;
-       }
--#if !defined(HAVE_VLA)
-       /* If the join buffer was allocated on the heap, free this memory. */
-       if (buf != joinbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -684,18 +644,13 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
- {
-       int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
--#else
--      jpc_fix_t joinbuf[bufsize];
--#endif
-       jpc_fix_t *buf = joinbuf;
-       register jpc_fix_t *srcptr;
-       register jpc_fix_t *dstptr;
-       register int n;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Allocate memory for the join buffer from the heap. */
-       if (bufsize > QMFB_JOINBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, sizeof(jpc_fix_t)))) {
-@@ -703,7 +658,6 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
-                       abort();
-               }
-       }
--#endif
-       hstartcol = (numrows + 1 - parity) >> 1;
-@@ -735,12 +689,10 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
-               ++srcptr;
-       }
--#if !defined(HAVE_VLA)
-       /* If the join buffer was allocated on the heap, free this memory. */
-       if (buf != joinbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -749,11 +701,7 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
- {
-       int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
--      jpc_fix_t joinbuf[bufsize * JPC_QMFB_COLGRPSIZE];
--#endif
-       jpc_fix_t *buf = joinbuf;
-       jpc_fix_t *srcptr;
-       jpc_fix_t *dstptr;
-@@ -763,7 +711,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
-       register int i;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Allocate memory for the join buffer from the heap. */
-       if (bufsize > QMFB_JOINBUFSIZE) {
-               if (!(buf = jas_alloc2(bufsize, JPC_QMFB_COLGRPSIZE * sizeof(jpc_fix_t)))) {
-@@ -771,7 +718,6 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
-                       abort();
-               }
-       }
--#endif
-       hstartcol = (numrows + 1 - parity) >> 1;
-@@ -821,12 +767,10 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
-               srcptr += JPC_QMFB_COLGRPSIZE;
-       }
--#if !defined(HAVE_VLA)
-       /* If the join buffer was allocated on the heap, free this memory. */
-       if (buf != joinbuf) {
-               jas_free(buf);
-       }
--#endif
- }
-@@ -835,11 +779,7 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
- {
-       int bufsize = JPC_CEILDIVPOW2(numrows, 1);
--#if !defined(HAVE_VLA)
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
--#else
--      jpc_fix_t joinbuf[bufsize * numcols];
--#endif
-       jpc_fix_t *buf = joinbuf;
-       jpc_fix_t *srcptr;
-       jpc_fix_t *dstptr;
-@@ -849,7 +789,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
-       register int i;
-       int hstartcol;
--#if !defined(HAVE_VLA)
-       /* Allocate memory for the join buffer from the heap. */
-       if (bufsize > QMFB_JOINBUFSIZE) {
-               if (!(buf = jas_alloc3(bufsize, numcols, sizeof(jpc_fix_t)))) {
-@@ -857,7 +796,6 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
-                       abort();
-               }
-       }
--#endif
-       hstartcol = (numrows + 1 - parity) >> 1;
-@@ -907,12 +845,10 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
-               srcptr += numcols;
-       }
--#if !defined(HAVE_VLA)
-       /* If the join buffer was allocated on the heap, free this memory. */
-       if (buf != joinbuf) {
-               jas_free(buf);
-       }
--#endif
- }
diff --git a/package/jasper/0007-preserve-cflags.patch b/package/jasper/0007-preserve-cflags.patch
deleted file mode 100644 (file)
index 7e4c4a2..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Max Filippov <jcmvbkbc@gmail.com>
-Subject: Don't overwrite CFLAGS when configured with --enable-debug
-
-This drops architecture-specific ABI flags, which may be important.
-
-Signded-off-by: Max Filippov <jcmvbkbc@gmail.com>
-
---- jasper-1.900.1/configure.ac.orig   2015-05-18 22:27:53.057512760 +0300
-+++ jasper-1.900.1/configure.ac        2015-05-18 22:28:36.090415422 +0300
-@@ -327,7 +327,7 @@
-       AC_DEFINE(DEBUG)
-       AC_DEFINE(DEBUG_OVERFLOW)
-       if test "$GCC" = yes; then
--              CFLAGS="-g -O0"
-+              CFLAGS="$CFLAGS -g -O0"
-       fi
-       ;;
- no)
-@@ -357,7 +357,7 @@
- case "${enableval}" in
- yes)
-       if test "$GCC" = yes; then
--              CFLAGS="-g -O0"
-+              CFLAGS="$CFLAGS -g -O0"
-       fi
-       ;;
- no)
diff --git a/package/jasper/0008-fix-CVE-2016-2116.patch b/package/jasper/0008-fix-CVE-2016-2116.patch
deleted file mode 100644 (file)
index 1ceb395..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Description: Prevent jas_stream_t memory leak in jas_iccprof_createfrombuf()
-Author: Tyler Hicks <tyhicks () canonical com>
-
-From: http://seclists.org/oss-sec/2016/q1/att-507/CVE-2016-2116.patch
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- jasper-1.900.1-debian1.orig/src/libjasper/base/jas_icc.c
-+++ jasper-1.900.1-debian1/src/libjasper/base/jas_icc.c
-@@ -1693,6 +1693,8 @@ jas_iccprof_t *jas_iccprof_createfrombuf
-       jas_stream_close(in);
-       return prof;
- error:
-+      if (in)
-+              jas_stream_close(in);
-       return 0;
- }
diff --git a/package/jasper/0009-fix-CVE-2016-1577.patch b/package/jasper/0009-fix-CVE-2016-1577.patch
deleted file mode 100644 (file)
index cfe8b45..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Description: CVE-2016-1577: Prevent double-free in jas_iccattrval_destroy()
-Author: Tyler Hicks <tyhicks () canonical com>
-Bug-Ubuntu: https://launchpad.net/bugs/1547865
-
-From: http://seclists.org/oss-sec/2016/q1/att-507/CVE-2016-1577.patch
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- jasper-1.900.1-debian1.orig/src/libjasper/base/jas_icc.c
-+++ jasper-1.900.1-debian1/src/libjasper/base/jas_icc.c
-@@ -300,6 +300,7 @@ jas_iccprof_t *jas_iccprof_load(jas_stre
-                               if (jas_iccprof_setattr(prof, tagtabent->tag, attrval))
-                                       goto error;
-                               jas_iccattrval_destroy(attrval);
-+                              attrval = 0;
-                       } else {
- #if 0
-                               jas_eprintf("warning: skipping unknown tag type\n");
diff --git a/package/jasper/0010-fix-CVE-2016-1867.patch b/package/jasper/0010-fix-CVE-2016-1867.patch
deleted file mode 100644 (file)
index 33f34c3..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-From: http://pkgs.fedoraproject.org/cgit/rpms/jasper.git/plain/jasper-CVE-2016-1867.patch
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -urNp jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2cod.c jasper-1.900.1.new/src/libjasper/jpc/jpc_t2cod.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_t2cod.c  2016-08-11 14:34:31.795661973 +0200
-+++ jasper-1.900.1.new/src/libjasper/jpc/jpc_t2cod.c   2016-08-12 07:02:40.044860209 +0200
-@@ -429,7 +429,7 @@ static int jpc_pi_nextcprl(register jpc_
-       }
-       for (pi->compno = pchg->compnostart, pi->picomp =
--        &pi->picomps[pi->compno]; pi->compno < JAS_CAST(int, pchg->compnoend); ++pi->compno,
-+        &pi->picomps[pi->compno]; pi->compno < JAS_CAST(int, pchg->compnoend) && pi->compno < pi->numcomps; ++pi->compno,
-         ++pi->picomp) {
-               pirlvl = pi->picomp->pirlvls;
-               pi->xstep = pi->picomp->hsamp * (1 << (pirlvl->prcwidthexpn +
diff --git a/package/jasper/0011-fix-CVE-2015-5221.patch b/package/jasper/0011-fix-CVE-2015-5221.patch
deleted file mode 100644 (file)
index 7dcbddd..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-From: http://pkgs.fedoraproject.org/cgit/rpms/jasper.git/plain/jasper-CVE-2015-5221.patch
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -urNp jasper-1.900.1.orig/src/libjasper/mif/mif_cod.c jasper-1.900.1.new/src/libjasper/mif/mif_cod.c
---- jasper-1.900.1.orig/src/libjasper/mif/mif_cod.c    2016-08-11 13:46:26.166415464 +0200
-+++ jasper-1.900.1.new/src/libjasper/mif/mif_cod.c     2016-08-11 14:17:20.507144931 +0200
-@@ -569,13 +569,13 @@ static int mif_process_cmpt(mif_hdr_t *h
-                       break;
-               }
-       }
--      jas_tvparser_destroy(tvp);
-       if (!cmpt->sampperx || !cmpt->samppery) {
-               goto error;
-       }
-       if (mif_hdr_addcmpt(hdr, hdr->numcmpts, cmpt)) {
-               goto error;
-       }
-+      jas_tvparser_destroy(tvp);
-       return 0;
- error:
-
diff --git a/package/jasper/0012-fix-CVE-2015-5203.patch b/package/jasper/0012-fix-CVE-2015-5203.patch
deleted file mode 100644 (file)
index 50f0613..0000000
+++ /dev/null
@@ -1,187 +0,0 @@
-From: http://pkgs.fedoraproject.org/cgit/rpms/jasper.git/plain/jasper-CVE-2015-5203.patch
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -urNp jasper-1.900.1.orig/src/libjasper/base/jas_stream.c jasper-1.900.1.new/src/libjasper/base/jas_stream.c
---- jasper-1.900.1.orig/src/libjasper/base/jas_stream.c        2016-08-11 13:35:09.160895769 +0200
-+++ jasper-1.900.1.new/src/libjasper/base/jas_stream.c 2016-08-11 13:39:33.800843489 +0200
-@@ -99,7 +99,7 @@ static int jas_strtoopenmode(const char
- static void jas_stream_destroy(jas_stream_t *stream);
- static jas_stream_t *jas_stream_create(void);
- static void jas_stream_initbuf(jas_stream_t *stream, int bufmode, char *buf,
--  int bufsize);
-+  size_t bufsize);
- static int mem_read(jas_stream_obj_t *obj, char *buf, int cnt);
- static int mem_write(jas_stream_obj_t *obj, char *buf, int cnt);
-@@ -168,7 +168,7 @@ static jas_stream_t *jas_stream_create()
-       return stream;
- }
--jas_stream_t *jas_stream_memopen(char *buf, int bufsize)
-+jas_stream_t *jas_stream_memopen(char *buf, size_t bufsize)
- {
-       jas_stream_t *stream;
-       jas_stream_memobj_t *obj;
-@@ -570,7 +570,7 @@ int jas_stream_puts(jas_stream_t *stream
-       return 0;
- }
--char *jas_stream_gets(jas_stream_t *stream, char *buf, int bufsize)
-+char *jas_stream_gets(jas_stream_t *stream, char *buf, size_t bufsize)
- {
-       int c;
-       char *bufptr;
-@@ -694,7 +694,7 @@ long jas_stream_tell(jas_stream_t *strea
- \******************************************************************************/
- static void jas_stream_initbuf(jas_stream_t *stream, int bufmode, char *buf,
--  int bufsize)
-+  size_t bufsize)
- {
-       /* If this function is being called, the buffer should not have been
-         initialized yet. */
-@@ -987,7 +987,7 @@ static int mem_read(jas_stream_obj_t *ob
-       return cnt;
- }
--static int mem_resize(jas_stream_memobj_t *m, int bufsize)
-+static int mem_resize(jas_stream_memobj_t *m, size_t bufsize)
- {
-       unsigned char *buf;
-diff -urNp jasper-1.900.1.orig/src/libjasper/include/jasper/jas_stream.h jasper-1.900.1.new/src/libjasper/include/jasper/jas_stream.h
---- jasper-1.900.1.orig/src/libjasper/include/jasper/jas_stream.h      2007-01-19 22:43:04.000000000 +0100
-+++ jasper-1.900.1.new/src/libjasper/include/jasper/jas_stream.h       2016-08-11 13:41:27.841153595 +0200
-@@ -215,7 +215,7 @@ typedef struct {
-       uchar *bufstart_;
-       /* The buffer size. */
--      int bufsize_;
-+      size_t bufsize_;
-       /* The current position in the buffer. */
-       uchar *ptr_;
-@@ -267,7 +267,7 @@ typedef struct {
-       uchar *buf_;
-       /* The allocated size of the buffer for holding file data. */
--      int bufsize_;
-+      size_t bufsize_;
-       /* The length of the file. */
-       int_fast32_t len_;
-@@ -291,7 +291,7 @@ typedef struct {
- jas_stream_t *jas_stream_fopen(const char *filename, const char *mode);
- /* Open a memory buffer as a stream. */
--jas_stream_t *jas_stream_memopen(char *buf, int bufsize);
-+jas_stream_t *jas_stream_memopen(char *buf, size_t bufsize);
- /* Open a file descriptor as a stream. */
- jas_stream_t *jas_stream_fdopen(int fd, const char *mode);
-@@ -366,7 +366,7 @@ int jas_stream_printf(jas_stream_t *stre
- int jas_stream_puts(jas_stream_t *stream, const char *s);
- /* Read a line of input from a stream. */
--char *jas_stream_gets(jas_stream_t *stream, char *buf, int bufsize);
-+char *jas_stream_gets(jas_stream_t *stream, char *buf, size_t bufsize);
- /* Look at the next character to be read from a stream without actually
-   removing it from the stream. */
-diff -urNp jasper-1.900.1.orig/src/libjasper/jpc/jpc_qmfb.c jasper-1.900.1.new/src/libjasper/jpc/jpc_qmfb.c
---- jasper-1.900.1.orig/src/libjasper/jpc/jpc_qmfb.c   2016-08-11 13:35:09.170895681 +0200
-+++ jasper-1.900.1.new/src/libjasper/jpc/jpc_qmfb.c    2016-08-11 13:45:20.847809678 +0200
-@@ -305,7 +305,7 @@ jpc_qmfb2d_t jpc_ns_qmfb2d = {
- void jpc_qmfb_split_row(jpc_fix_t *a, int numcols, int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numcols, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numcols, 1);
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
-       jpc_fix_t *buf = splitbuf;
-       register jpc_fix_t *srcptr;
-@@ -365,7 +365,7 @@ void jpc_qmfb_split_col(jpc_fix_t *a, in
-   int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numrows, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numrows, 1);
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE];
-       jpc_fix_t *buf = splitbuf;
-       register jpc_fix_t *srcptr;
-@@ -425,7 +425,7 @@ void jpc_qmfb_split_colgrp(jpc_fix_t *a,
-   int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numrows, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numrows, 1);
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
-       jpc_fix_t *buf = splitbuf;
-       jpc_fix_t *srcptr;
-@@ -506,7 +506,7 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
-   int stride, int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numrows, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numrows, 1);
-       jpc_fix_t splitbuf[QMFB_SPLITBUFSIZE * JPC_QMFB_COLGRPSIZE];
-       jpc_fix_t *buf = splitbuf;
-       jpc_fix_t *srcptr;
-@@ -586,7 +586,7 @@ void jpc_qmfb_split_colres(jpc_fix_t *a,
- void jpc_qmfb_join_row(jpc_fix_t *a, int numcols, int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numcols, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numcols, 1);
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
-       jpc_fix_t *buf = joinbuf;
-       register jpc_fix_t *srcptr;
-@@ -643,7 +643,7 @@ void jpc_qmfb_join_col(jpc_fix_t *a, int
-   int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numrows, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numrows, 1);
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE];
-       jpc_fix_t *buf = joinbuf;
-       register jpc_fix_t *srcptr;
-@@ -700,7 +700,7 @@ void jpc_qmfb_join_colgrp(jpc_fix_t *a,
-   int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numrows, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numrows, 1);
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
-       jpc_fix_t *buf = joinbuf;
-       jpc_fix_t *srcptr;
-@@ -778,7 +778,7 @@ void jpc_qmfb_join_colres(jpc_fix_t *a,
-   int stride, int parity)
- {
--      int bufsize = JPC_CEILDIVPOW2(numrows, 1);
-+      size_t bufsize = JPC_CEILDIVPOW2(numrows, 1);
-       jpc_fix_t joinbuf[QMFB_JOINBUFSIZE * JPC_QMFB_COLGRPSIZE];
-       jpc_fix_t *buf = joinbuf;
-       jpc_fix_t *srcptr;
-diff -urNp jasper-1.900.1.orig/src/libjasper/mif/mif_cod.c jasper-1.900.1.new/src/libjasper/mif/mif_cod.c
---- jasper-1.900.1.orig/src/libjasper/mif/mif_cod.c    2016-08-11 13:35:09.179895601 +0200
-+++ jasper-1.900.1.new/src/libjasper/mif/mif_cod.c     2016-08-11 13:46:26.166415464 +0200
-@@ -107,7 +107,7 @@ static int mif_hdr_put(mif_hdr_t *hdr, j
- static int mif_hdr_addcmpt(mif_hdr_t *hdr, int cmptno, mif_cmpt_t *cmpt);
- static mif_cmpt_t *mif_cmpt_create(void);
- static void mif_cmpt_destroy(mif_cmpt_t *cmpt);
--static char *mif_getline(jas_stream_t *jas_stream, char *buf, int bufsize);
-+static char *mif_getline(jas_stream_t *jas_stream, char *buf, size_t bufsize);
- static int mif_getc(jas_stream_t *in);
- static mif_hdr_t *mif_makehdrfromimage(jas_image_t *image);
-@@ -657,7 +657,7 @@ static void mif_cmpt_destroy(mif_cmpt_t
- * MIF parsing code.
- \******************************************************************************/
--static char *mif_getline(jas_stream_t *stream, char *buf, int bufsize)
-+static char *mif_getline(jas_stream_t *stream, char *buf, size_t bufsize)
- {
-       int c;
-       char *bufptr;
index 4d9ed7432afa32bf18657330d1857f39b17e40c2..64ddfa4841a9995477c8c2ac3e953958d6a2193f 100644 (file)
@@ -1,2 +1,2 @@
 # Locally calculated
-sha256 6e9a959bf4f8cb02f77f42d1b9880b8e85d021ac51f43d8787b5438fd2b7a1c5        jasper-1.900.1.tar.bz2
+sha256 0099084dce9fa0a318b48a5ed2a12ac7cff3324f3fd4459833e6fe2ff583fb2c  jasper-version-1.900.31.tar.gz
index db86ae88e12694f535d5a98e182964b29ca2819f..e8b8aaa9b58554c94a1054da5641bbd66185a550 100644 (file)
@@ -4,16 +4,18 @@
 #
 ################################################################################
 
-JASPER_VERSION = 1.900.1
-JASPER_SITE = http://sources.openelec.tv/devel
-JASPER_SOURCE = jasper-$(JASPER_VERSION).tar.bz2
+JASPER_VERSION = version-1.900.31
+JASPER_SITE = $(call github,mdadams,jasper,$(JASPER_VERSION))
 JASPER_INSTALL_STAGING = YES
 JASPER_DEPENDENCIES = jpeg
-JASPER_LICENSE = MIT
+JASPER_LICENSE = JasPer License Version 2.0
 JASPER_LICENSE_FILES = LICENSE
-# needed to fix rpath issue (http://autobuild.buildroot.net/results/307/307cac65287420252a5bb64715d9a1edd90e72fa/)
+
+# No configure script included. We need to generate it.
 JASPER_AUTORECONF = YES
 
+JASPER_CONF_OPTS = --disable-strict
+
 # Xtensa gcc is unable to generate correct code with -O0 enabled by
 # --enable-debug. Allow package build but disable debug.
 ifeq ($(BR2_xtensa)$(BR2_ENABLE_DEBUG),yy)
diff --git a/package/kvm-unit-tests/0001-remove-werror.patch b/package/kvm-unit-tests/0001-remove-werror.patch
new file mode 100644 (file)
index 0000000..058a640
--- /dev/null
@@ -0,0 +1,17 @@
+Remove -Werror to avoid build failures
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -45,7 +45,7 @@
+               > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;)
+ CFLAGS += -g
+-CFLAGS += $(autodepend-flags) -Wall -Werror -Wno-frame-address
++CFLAGS += $(autodepend-flags) -Wall -Wno-frame-address
+ frame-pointer-flag=-f$(if $(KEEP_FRAME_POINTER),no-,)omit-frame-pointer
+ fomit_frame_pointer := $(call cc-option, $(frame-pointer-flag), "")
+ fnostack_protector := $(call cc-option, -fno-stack-protector, "")
index f704a8e0c3533bfd7e2342096101d50ded937e1c..72656462e16cf45e66512bd8b7c92bbb963d97e1 100644 (file)
@@ -4,7 +4,9 @@ config BR2_PACKAGE_KVM_UNIT_TESTS
        # on i386 and x86-64, __builtin_reachable is used, so we need
        # gcc 4.5 at least. on i386, we use the target gcc, while on
        # x86-64 we use the host gcc (see .mk file for details)
-       depends on BR2_arm || \
+       # On ARM, it uses virtualization extensions
+       depends on BR2_cortex_a7 || BR2_cortex_a12 || \
+               BR2_cortex_a15 || BR2_cortex_a17 || \
                (BR2_i386 && BR2_TOOLCHAIN_GCC_AT_LEAST_4_5) || \
                BR2_powerpc64 || \
                BR2_powerpc64le || \
index 1b5ce787efd9c8fc2f9f0984b48eda213a3fa870..0ddb017802be9749ba7e98093b5e3d8789722a40 100644 (file)
@@ -17,7 +17,7 @@ KVM_UNIT_TESTS_ARCH = i386
 else ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y)
 KVM_UNIT_TESTS_ARCH = ppc64
 else ifeq ($(BR2_x86_64),y)
-KVM_UNIT_TESTS_ARCH = x86_84
+KVM_UNIT_TESTS_ARCH = x86_64
 endif
 
 ifeq ($(BR2_ENDIAN),"LITTLE")
@@ -27,7 +27,8 @@ KVM_UNIT_TESTS_ENDIAN = big
 endif
 
 KVM_UNIT_TESTS_CONF_OPTS =\
-       --arch="$(KERNEL_ARCH)" \
+       --arch="$(KVM_UNIT_TESTS_ARCH)" \
+       --processor="$(call qstrip,$(BR2_GCC_TARGET_CPU))" \
        --endian="$(KVM_UNIT_TESTS_ENDIAN)"
 
 # For all architectures but x86-64, we use the target
index 7f682db625e7047eb46bd8ae4c9f35ced98c6afd..12454e1bfdbed210fc4e35fb4ac2259b003b5cf7 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-KVMTOOL_VERSION = 372f583d359a5bdcbbe7268809c8d1dc179c64d2
+KVMTOOL_VERSION = bed2bd9e1fbef5819090feeada7b86eed97ca5e2
 KVMTOOL_SITE = $(BR2_KERNEL_MIRROR)/scm/linux/kernel/git/will/kvmtool.git
 KVMTOOL_SITE_METHOD = git
 KVMTOOL_DEPENDENCIES = \
diff --git a/package/lcms2/0001-Fix-lcms2.pc.in-thread-library-dependency.patch b/package/lcms2/0001-Fix-lcms2.pc.in-thread-library-dependency.patch
new file mode 100644 (file)
index 0000000..f8c0d00
--- /dev/null
@@ -0,0 +1,26 @@
+From 0b55fd4e0935a0231ca258fde631a95215df2f72 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Fri, 11 Nov 2016 23:29:56 +0100
+Subject: [PATCH] Fix lcms2.pc.in thread library dependency.
+
+Needed (sometimes) for static linking.
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ lcms2.pc.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lcms2.pc.in b/lcms2.pc.in
+index b715f59..5b4213c 100644
+--- a/lcms2.pc.in
++++ b/lcms2.pc.in
+@@ -7,5 +7,5 @@ Name: @PACKAGE@
+ Description: LCMS Color Management Library
+ Version: @VERSION@
+ Libs: -L${libdir} -llcms2
+-Libs.private: @LIB_MATH@ 
++Libs.private: @LIB_MATH@ @LIB_THREAD@
+ Cflags: -I${includedir}
+-- 
+2.8.1
+
index 86e722a21187c43447c026eb3f45d1fff679267d..751a1b60663b32d995e3a252a8152f03f6c2f87e 100644 (file)
@@ -15,7 +15,7 @@ LIBFRIBIDI_INSTALL_STAGING = YES
 LIBFRIBIDI_AUTORECONF = YES
 LIBFRIBIDI_DEPENDENCIES = host-pkgconf
 # libglib2 dependency causes a build failure, and this optional
-# dependency is going to be removed usptream, see
+# dependency is going to be removed upstream, see
 # https://github.com/behdad/fribidi/pull/14
 LIBFRIBIDI_CONF_OPTS = --with-glib=no
 
diff --git a/package/libmpeg2/0003-fix-arm-detection.patch b/package/libmpeg2/0003-fix-arm-detection.patch
new file mode 100644 (file)
index 0000000..69ec454
--- /dev/null
@@ -0,0 +1,39 @@
+Improve the ARM detection to work on Thumb-only architecture
+
+The ARM-specific assembly code doesn't build on Thumb-only
+architectures such as ARMv7-M, but the configure script assumes that
+if the host tuple is arm*, then it can build and use the ARM optimized
+code.
+
+This patch improves the configure.ac detection logic, by building one
+of the instruction of the optimized assembly code, and using this to
+decide whether or not the optimizations should be enabled.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -101,8 +101,10 @@
+     alpha*)
+       AC_DEFINE([ARCH_ALPHA],,[alpha architecture]);;
+     arm*)
+-      arm_conditional=:
+-      AC_DEFINE([ARCH_ARM],,[ARM architecture]);;
++      AC_TRY_LINK([], [asm(".syntax divided\nstmfd sp!,{r4-r11,lr}")],
++           [AC_DEFINE([ARCH_ARM],,[ARM architecture])
++            use_arm_optimization=yes],
++           [use_arm_optimization=no])
+     esac
+ elif test x"$CC" = x"tendracc"; then
+     dnl TenDRA portability checking compiler
+@@ -122,7 +124,7 @@
+     esac
+ fi
+-AM_CONDITIONAL(ARCH_ARM, ${arm_conditional})
++AM_CONDITIONAL(ARCH_ARM, test "${use_arm_optimization}" = "yes")
+ dnl Checks for libtool - this must be done after we set cflags
+ AC_LIBTOOL_WIN32_DLL
diff --git a/package/libnss/0003-it-uninitialized-fix.patch b/package/libnss/0003-it-uninitialized-fix.patch
new file mode 100644 (file)
index 0000000..7736c6a
--- /dev/null
@@ -0,0 +1,24 @@
+# HG changeset patch
+# User catdesk <catdesk@tuta.io>
+# Date 1477710600 -7200
+#      Sat Oct 29 05:10:00 2016 +0200
+# Node ID b9ef971b94ab110302d49255339077bc1b4aed7f
+# Parent  eb8c96563cd70aa69d48b01516085f7d2fb46178
+Bug 1313846 - Declare 'it = NULL' earlier. r=franziskus
+
+[Thomas: patch taken from upstream mercurial repository, revision
+12791.]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+diff -r eb8c96563cd7 -r b9ef971b94ab lib/jar/jarfile.c
+--- a/nss/lib/jar/jarfile.c    Mon Oct 31 17:31:20 2016 +0100
++++ b/nss/lib/jar/jarfile.c    Sat Oct 29 05:10:00 2016 +0200
+@@ -657,7 +657,7 @@
+ jar_listzip(JAR *jar, JAR_FILE fp)
+ {
+     ZZLink *ent;
+-    JAR_Item *it;
++    JAR_Item *it = NULL;
+     JAR_Physical *phy = NULL;
+     struct ZipLocal *Local = PORT_ZNew(struct ZipLocal);
+     struct ZipCentral *Central = PORT_ZNew(struct ZipCentral);
index 26cb97eecfce3bf110928850204640de00179f02..93fbd56557c86c1f3bae4b3597a0d2f1eca62652 100644 (file)
@@ -1,6 +1,6 @@
 config BR2_PACKAGE_LIBUV
        bool "libuv"
-       depends on BR2_TOOLCHAIN_HAS_THREADS
+       depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # pthread_barrier_*
        depends on BR2_USE_MMU # fork()
        depends on !BR2_STATIC_LIBS
        help
@@ -9,6 +9,6 @@ config BR2_PACKAGE_LIBUV
 
          https://github.com/libuv/libuv
 
-comment "libuv needs a toolchain w/ threads, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+comment "libuv needs a toolchain w/ NPTL, dynamic library"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
        depends on BR2_USE_MMU
diff --git a/package/libxml2/0001-Fix-XPointer-paths-beginning-with-range-to.patch b/package/libxml2/0001-Fix-XPointer-paths-beginning-with-range-to.patch
new file mode 100644 (file)
index 0000000..42570c6
--- /dev/null
@@ -0,0 +1,178 @@
+From 9ab01a277d71f54d3143c2cf333c5c2e9aaedd9e Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Tue, 28 Jun 2016 14:22:23 +0200
+Subject: [PATCH] Fix XPointer paths beginning with range-to
+
+The old code would invoke the broken xmlXPtrRangeToFunction. range-to
+isn't really a function but a special kind of location step. Remove
+this function and always handle range-to in the XPath code.
+
+The old xmlXPtrRangeToFunction could also be abused to trigger a
+use-after-free error with the potential for remote code execution.
+
+Found with afl-fuzz.
+
+Fixes CVE-2016-5131.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream commit 9ab01a277d7
+
+ result/XPath/xptr/vidbase | 13 ++++++++
+ test/XPath/xptr/vidbase   |  1 +
+ xpath.c                   |  7 ++++-
+ xpointer.c                | 76 ++++-------------------------------------------
+ 4 files changed, 26 insertions(+), 71 deletions(-)
+
+diff --git a/result/XPath/xptr/vidbase b/result/XPath/xptr/vidbase
+index 8b9e92d66d97..f19193e70edb 100644
+--- a/result/XPath/xptr/vidbase
++++ b/result/XPath/xptr/vidbase
+@@ -17,3 +17,16 @@ Object is a Location Set:
+   To node
+     ELEMENT p
++
++========================
++Expression: xpointer(range-to(id('chapter2')))
++Object is a Location Set:
++1 :   Object is a range :
++  From node
++     /
++  To node
++    ELEMENT chapter
++      ATTRIBUTE id
++        TEXT
++          content=chapter2
++
+diff --git a/test/XPath/xptr/vidbase b/test/XPath/xptr/vidbase
+index b1463830570a..884b1065d7fd 100644
+--- a/test/XPath/xptr/vidbase
++++ b/test/XPath/xptr/vidbase
+@@ -1,2 +1,3 @@
+ xpointer(id('chapter1')/p)
+ xpointer(id('chapter1')/p[1]/range-to(following-sibling::p[2]))
++xpointer(range-to(id('chapter2')))
+diff --git a/xpath.c b/xpath.c
+index d992841ef0c2..5a01b1b399a2 100644
+--- a/xpath.c
++++ b/xpath.c
+@@ -10691,13 +10691,18 @@ xmlXPathCompPathExpr(xmlXPathParserContextPtr ctxt) {
+                   lc = 1;
+                   break;
+               } else if ((NXT(len) == '(')) {
+-                  /* Note Type or Function */
++                  /* Node Type or Function */
+                   if (xmlXPathIsNodeType(name)) {
+ #ifdef DEBUG_STEP
+                       xmlGenericError(xmlGenericErrorContext,
+                               "PathExpr: Type search\n");
+ #endif
+                       lc = 1;
++#ifdef LIBXML_XPTR_ENABLED
++                    } else if (ctxt->xptr &&
++                               xmlStrEqual(name, BAD_CAST "range-to")) {
++                        lc = 1;
++#endif
+                   } else {
+ #ifdef DEBUG_STEP
+                       xmlGenericError(xmlGenericErrorContext,
+diff --git a/xpointer.c b/xpointer.c
+index 676c5105837a..d74174a318f1 100644
+--- a/xpointer.c
++++ b/xpointer.c
+@@ -1332,8 +1332,6 @@ xmlXPtrNewContext(xmlDocPtr doc, xmlNodePtr here, xmlNodePtr origin) {
+     ret->here = here;
+     ret->origin = origin;
+-    xmlXPathRegisterFunc(ret, (xmlChar *)"range-to",
+-                       xmlXPtrRangeToFunction);
+     xmlXPathRegisterFunc(ret, (xmlChar *)"range",
+                        xmlXPtrRangeFunction);
+     xmlXPathRegisterFunc(ret, (xmlChar *)"range-inside",
+@@ -2243,76 +2241,14 @@ xmlXPtrRangeInsideFunction(xmlXPathParserContextPtr ctxt, int nargs) {
+  * @nargs:  the number of args
+  *
+  * Implement the range-to() XPointer function
++ *
++ * Obsolete. range-to is not a real function but a special type of location
++ * step which is handled in xpath.c.
+  */
+ void
+-xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt, int nargs) {
+-    xmlXPathObjectPtr range;
+-    const xmlChar *cur;
+-    xmlXPathObjectPtr res, obj;
+-    xmlXPathObjectPtr tmp;
+-    xmlLocationSetPtr newset = NULL;
+-    xmlNodeSetPtr oldset;
+-    int i;
+-
+-    if (ctxt == NULL) return;
+-    CHECK_ARITY(1);
+-    /*
+-     * Save the expression pointer since we will have to evaluate
+-     * it multiple times. Initialize the new set.
+-     */
+-    CHECK_TYPE(XPATH_NODESET);
+-    obj = valuePop(ctxt);
+-    oldset = obj->nodesetval;
+-    ctxt->context->node = NULL;
+-
+-    cur = ctxt->cur;
+-    newset = xmlXPtrLocationSetCreate(NULL);
+-
+-    for (i = 0; i < oldset->nodeNr; i++) {
+-      ctxt->cur = cur;
+-
+-      /*
+-       * Run the evaluation with a node list made of a single item
+-       * in the nodeset.
+-       */
+-      ctxt->context->node = oldset->nodeTab[i];
+-      tmp = xmlXPathNewNodeSet(ctxt->context->node);
+-      valuePush(ctxt, tmp);
+-
+-      xmlXPathEvalExpr(ctxt);
+-      CHECK_ERROR;
+-
+-      /*
+-       * The result of the evaluation need to be tested to
+-       * decided whether the filter succeeded or not
+-       */
+-      res = valuePop(ctxt);
+-      range = xmlXPtrNewRangeNodeObject(oldset->nodeTab[i], res);
+-      if (range != NULL) {
+-          xmlXPtrLocationSetAdd(newset, range);
+-      }
+-
+-      /*
+-       * Cleanup
+-       */
+-      if (res != NULL)
+-          xmlXPathFreeObject(res);
+-      if (ctxt->value == tmp) {
+-          res = valuePop(ctxt);
+-          xmlXPathFreeObject(res);
+-      }
+-
+-      ctxt->context->node = NULL;
+-    }
+-
+-    /*
+-     * The result is used as the new evaluation set.
+-     */
+-    xmlXPathFreeObject(obj);
+-    ctxt->context->node = NULL;
+-    ctxt->context->contextSize = -1;
+-    ctxt->context->proximityPosition = -1;
+-    valuePush(ctxt, xmlXPtrWrapLocationSet(newset));
++xmlXPtrRangeToFunction(xmlXPathParserContextPtr ctxt,
++                       int nargs ATTRIBUTE_UNUSED) {
++    XP_ERROR(XPATH_EXPR_ERROR);
+ }
+ /**
+-- 
+2.10.2
+
diff --git a/package/libxml2/0002-Disallow-namespace-nodes-in-XPointer-ranges.patch b/package/libxml2/0002-Disallow-namespace-nodes-in-XPointer-ranges.patch
new file mode 100644 (file)
index 0000000..45c1a07
--- /dev/null
@@ -0,0 +1,253 @@
+From c1d1f7121194036608bf555f08d3062a36fd344b Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Tue, 28 Jun 2016 18:34:52 +0200
+Subject: [PATCH] Disallow namespace nodes in XPointer ranges
+
+Namespace nodes must be copied to avoid use-after-free errors.
+But they don't necessarily have a physical representation in a
+document, so simply disallow them in XPointer ranges.
+
+Found with afl-fuzz.
+
+Fixes CVE-2016-4658.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream commit c1d1f712119403
+
+ xpointer.c | 149 +++++++++++++++++++++++--------------------------------------
+ 1 file changed, 56 insertions(+), 93 deletions(-)
+
+diff --git a/xpointer.c b/xpointer.c
+index a7b03fbdae16..694d120e2e0b 100644
+--- a/xpointer.c
++++ b/xpointer.c
+@@ -320,6 +320,45 @@ xmlXPtrRangesEqual(xmlXPathObjectPtr range1, xmlXPathObjectPtr range2) {
+ }
+ /**
++ * xmlXPtrNewRangeInternal:
++ * @start:  the starting node
++ * @startindex:  the start index
++ * @end:  the ending point
++ * @endindex:  the ending index
++ *
++ * Internal function to create a new xmlXPathObjectPtr of type range
++ *
++ * Returns the newly created object.
++ */
++static xmlXPathObjectPtr
++xmlXPtrNewRangeInternal(xmlNodePtr start, int startindex,
++                        xmlNodePtr end, int endindex) {
++    xmlXPathObjectPtr ret;
++
++    /*
++     * Namespace nodes must be copied (see xmlXPathNodeSetDupNs).
++     * Disallow them for now.
++     */
++    if ((start != NULL) && (start->type == XML_NAMESPACE_DECL))
++      return(NULL);
++    if ((end != NULL) && (end->type == XML_NAMESPACE_DECL))
++      return(NULL);
++
++    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
++    if (ret == NULL) {
++        xmlXPtrErrMemory("allocating range");
++      return(NULL);
++    }
++    memset(ret, 0, sizeof(xmlXPathObject));
++    ret->type = XPATH_RANGE;
++    ret->user = start;
++    ret->index = startindex;
++    ret->user2 = end;
++    ret->index2 = endindex;
++    return(ret);
++}
++
++/**
+  * xmlXPtrNewRange:
+  * @start:  the starting node
+  * @startindex:  the start index
+@@ -344,17 +383,7 @@ xmlXPtrNewRange(xmlNodePtr start, int startindex,
+     if (endindex < 0)
+       return(NULL);
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start;
+-    ret->index = startindex;
+-    ret->user2 = end;
+-    ret->index2 = endindex;
++    ret = xmlXPtrNewRangeInternal(start, startindex, end, endindex);
+     xmlXPtrRangeCheckOrder(ret);
+     return(ret);
+ }
+@@ -381,17 +410,8 @@ xmlXPtrNewRangePoints(xmlXPathObjectPtr start, xmlXPathObjectPtr end) {
+     if (end->type != XPATH_POINT)
+       return(NULL);
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start->user;
+-    ret->index = start->index;
+-    ret->user2 = end->user;
+-    ret->index2 = end->index;
++    ret = xmlXPtrNewRangeInternal(start->user, start->index, end->user,
++                                  end->index);
+     xmlXPtrRangeCheckOrder(ret);
+     return(ret);
+ }
+@@ -416,17 +436,7 @@ xmlXPtrNewRangePointNode(xmlXPathObjectPtr start, xmlNodePtr end) {
+     if (start->type != XPATH_POINT)
+       return(NULL);
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start->user;
+-    ret->index = start->index;
+-    ret->user2 = end;
+-    ret->index2 = -1;
++    ret = xmlXPtrNewRangeInternal(start->user, start->index, end, -1);
+     xmlXPtrRangeCheckOrder(ret);
+     return(ret);
+ }
+@@ -453,17 +463,7 @@ xmlXPtrNewRangeNodePoint(xmlNodePtr start, xmlXPathObjectPtr end) {
+     if (end->type != XPATH_POINT)
+       return(NULL);
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start;
+-    ret->index = -1;
+-    ret->user2 = end->user;
+-    ret->index2 = end->index;
++    ret = xmlXPtrNewRangeInternal(start, -1, end->user, end->index);
+     xmlXPtrRangeCheckOrder(ret);
+     return(ret);
+ }
+@@ -486,17 +486,7 @@ xmlXPtrNewRangeNodes(xmlNodePtr start, xmlNodePtr end) {
+     if (end == NULL)
+       return(NULL);
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start;
+-    ret->index = -1;
+-    ret->user2 = end;
+-    ret->index2 = -1;
++    ret = xmlXPtrNewRangeInternal(start, -1, end, -1);
+     xmlXPtrRangeCheckOrder(ret);
+     return(ret);
+ }
+@@ -516,17 +506,7 @@ xmlXPtrNewCollapsedRange(xmlNodePtr start) {
+     if (start == NULL)
+       return(NULL);
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start;
+-    ret->index = -1;
+-    ret->user2 = NULL;
+-    ret->index2 = -1;
++    ret = xmlXPtrNewRangeInternal(start, -1, NULL, -1);
+     return(ret);
+ }
+@@ -541,6 +521,8 @@ xmlXPtrNewCollapsedRange(xmlNodePtr start) {
+  */
+ xmlXPathObjectPtr
+ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
++    xmlNodePtr endNode;
++    int endIndex;
+     xmlXPathObjectPtr ret;
+     if (start == NULL)
+@@ -549,7 +531,12 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
+       return(NULL);
+     switch (end->type) {
+       case XPATH_POINT:
++          endNode = end->user;
++          endIndex = end->index;
++          break;
+       case XPATH_RANGE:
++          endNode = end->user2;
++          endIndex = end->index2;
+           break;
+       case XPATH_NODESET:
+           /*
+@@ -557,39 +544,15 @@ xmlXPtrNewRangeNodeObject(xmlNodePtr start, xmlXPathObjectPtr end) {
+            */
+           if (end->nodesetval->nodeNr <= 0)
+               return(NULL);
++          endNode = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1];
++          endIndex = -1;
+           break;
+       default:
+           /* TODO */
+           return(NULL);
+     }
+-    ret = (xmlXPathObjectPtr) xmlMalloc(sizeof(xmlXPathObject));
+-    if (ret == NULL) {
+-        xmlXPtrErrMemory("allocating range");
+-      return(NULL);
+-    }
+-    memset(ret, 0 , (size_t) sizeof(xmlXPathObject));
+-    ret->type = XPATH_RANGE;
+-    ret->user = start;
+-    ret->index = -1;
+-    switch (end->type) {
+-      case XPATH_POINT:
+-          ret->user2 = end->user;
+-          ret->index2 = end->index;
+-          break;
+-      case XPATH_RANGE:
+-          ret->user2 = end->user2;
+-          ret->index2 = end->index2;
+-          break;
+-      case XPATH_NODESET: {
+-          ret->user2 = end->nodesetval->nodeTab[end->nodesetval->nodeNr - 1];
+-          ret->index2 = -1;
+-          break;
+-      }
+-      default:
+-          STRANGE
+-          return(NULL);
+-    }
++    ret = xmlXPtrNewRangeInternal(start, -1, endNode, endIndex);
+     xmlXPtrRangeCheckOrder(ret);
+     return(ret);
+ }
+-- 
+2.10.2
+
diff --git a/package/libxslt/0001-Fix-heap-overread-in-xsltFormatNumberConversion.patch b/package/libxslt/0001-Fix-heap-overread-in-xsltFormatNumberConversion.patch
new file mode 100644 (file)
index 0000000..1ad494a
--- /dev/null
@@ -0,0 +1,35 @@
+From eb1030de31165b68487f288308f9d1810fed6880 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Fri, 10 Jun 2016 14:23:58 +0200
+Subject: [PATCH] Fix heap overread in xsltFormatNumberConversion
+
+An empty decimal-separator could cause a heap overread. This can be
+exploited to leak a couple of bytes after the buffer that holds the
+pattern string.
+
+Found with afl-fuzz and ASan.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream commit eb1030de311
+
+ libxslt/numbers.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/libxslt/numbers.c b/libxslt/numbers.c
+index d1549b46ca26..e78c46b6357b 100644
+--- a/libxslt/numbers.c
++++ b/libxslt/numbers.c
+@@ -1090,7 +1090,8 @@ xsltFormatNumberConversion(xsltDecimalFormatPtr self,
+     }
+     /* We have finished the integer part, now work on fraction */
+-    if (xsltUTF8Charcmp(the_format, self->decimalPoint) == 0) {
++    if ( (*the_format != 0) &&
++         (xsltUTF8Charcmp(the_format, self->decimalPoint) == 0) ) {
+         format_info.add_decimal = TRUE;
+       the_format += xsltUTF8Size(the_format); /* Skip over the decimal */
+     }
+-- 
+2.10.2
+
index ee2f66c36ed66de624464409565e58dfa302ff53..dfe5b99f04c96268e2eb5a3f2cf53757d609d2ef 100644 (file)
@@ -13,4 +13,4 @@ config BR2_PACKAGE_LIBXSLT
          to describe how the document is transformed into another
          XML document that uses the formatting vocabulary.
 
-         http://www.w3.org/TR/xslt
+         http://xmlsoft.org/xslt/
index 71d3f60c032fff8d96a65eaa87c41563235369a4..6d616c3fbccc2a846815c1e593ef788ff1d949b6 100644 (file)
@@ -223,18 +223,18 @@ endchoice
 
 config BR2_DEFAULT_KERNEL_HEADERS
        string
-       default "3.2.83"        if BR2_KERNEL_HEADERS_3_2
+       default "3.2.84"        if BR2_KERNEL_HEADERS_3_2
        default "3.4.113"       if BR2_KERNEL_HEADERS_3_4
        default "3.10.104"      if BR2_KERNEL_HEADERS_3_10
-       default "3.12.66"       if BR2_KERNEL_HEADERS_3_12
+       default "3.12.67"       if BR2_KERNEL_HEADERS_3_12
        default "3.14.79"       if BR2_KERNEL_HEADERS_3_14
        default "3.18.44"       if BR2_KERNEL_HEADERS_3_18
        default "3.19.8"        if BR2_KERNEL_HEADERS_3_19
        default "4.0.9"         if BR2_KERNEL_HEADERS_4_0
        default "4.1.35"        if BR2_KERNEL_HEADERS_4_1
-       default "4.4.29"        if BR2_KERNEL_HEADERS_4_4
+       default "4.4.35"        if BR2_KERNEL_HEADERS_4_4
        default "4.5.7"         if BR2_KERNEL_HEADERS_4_5
        default "4.6.7"         if BR2_KERNEL_HEADERS_4_6
        default "4.7.10"        if BR2_KERNEL_HEADERS_4_7
-       default "4.8.6"         if BR2_KERNEL_HEADERS_4_8
+       default "4.8.11"        if BR2_KERNEL_HEADERS_4_8
        default BR2_DEFAULT_KERNEL_VERSION if BR2_KERNEL_HEADERS_VERSION
diff --git a/package/lttng-babeltrace/0003-fix-uuid-support-detection-on-static-build.patch b/package/lttng-babeltrace/0003-fix-uuid-support-detection-on-static-build.patch
new file mode 100644 (file)
index 0000000..875aa88
--- /dev/null
@@ -0,0 +1,86 @@
+From 2741f55be80ae8af169ae795ea28d2a39c18fa60 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Wed, 1 Jun 2016 21:56:32 +0200
+Subject: [PATCH] configure: fix uuid support detection on static build
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This change adds uuid detection using pkg-config helper before falling
+back on the standard AC_CHECK_LIB detection for platforms missing
+pkg-config.
+
+AC_CHECK_LIB function achieves its test by trying to link against the
+requested library, without taking care of its dependency
+requirements/flags that may differ between different targets.
+Therefore, in case of static build, it can fail on the uuid detection
+like [1], because the uuid's dependency flags (regarding gettext) are
+missing.
+
+Instead, using pkg-config to do the check will take care of getting and
+setting all required flags.
+
+This issue [1] has been triggered on Buildroot farms.
+
+[1] http://autobuild.buildroot.net/results/43b/43b98ddf9eb44152ed9ac4a98d887af14831d8da/build-end.log
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
+[Philippe: grabbed from this upstream patch:
+    https://github.com/efficios/babeltrace/commit/2741f55be80ae8af169ae795ea28d2a39c18fa60.patch
+]
+Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
+---
+ configure.ac | 31 +++++++++++++++++++++----------
+ 1 file changed, 21 insertions(+), 10 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 84f9000..2f5e3f8 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -163,24 +163,35 @@ AC_CHECK_FUNCS([uuid_generate],
+   link_with_libuuid=no
+ ],
+ [
+-  # Check for libuuid
+-  AC_CHECK_LIB([uuid], [uuid_generate],
++  # First, check the pkg-config module is available, otherwise explicitly check
++  # for libuuid, or uuid support in the C-library.
++  PKG_CHECK_MODULES([UUID], [uuid],
+   [
++    LIBS="${UUID_LIBS} ${LIBS}"
++    CFLAGS="${CFLAGS} ${UUID_CFLAGS}"
+     AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.])
+     link_with_libuuid=yes
+   ],
+   [
+-    # libuuid not found, check for uuid_create in libc.
+-    AC_CHECK_LIB([c], [uuid_create],
++    # Check for libuuid
++    AC_CHECK_LIB([uuid], [uuid_generate],
+     [
+-      AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBC_UUID], 1, [Has libc uuid support.])
+-      link_with_libc_uuid=yes
++      AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBUUID], 1, [Has libuuid support.])
++      link_with_libuuid=yes
+     ],
+     [
+-      # for MinGW32 we have our own internal implemenation of uuid using Windows functions.
+-      if test "x$MINGW32" = xno; then
+-        AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.])
+-      fi
++      # libuuid not found, check for uuid_create in libc.
++      AC_CHECK_LIB([c], [uuid_create],
++      [
++        AC_DEFINE_UNQUOTED([BABELTRACE_HAVE_LIBC_UUID], 1, [Has libc uuid support.])
++        link_with_libc_uuid=yes
++      ],
++      [
++        # for MinGW32 we have our own internal implemenation of uuid using Windows functions.
++        if test "x$MINGW32" = xno; then
++          AC_MSG_ERROR([Cannot find libuuid uuid_generate nor libc uuid_create. Use [LDFLAGS]=-Ldir to specify their location.])
++        fi
++      ])
+     ])
+   ])
+ ])
index 59327dbf5d289d8a35fe06932b6bf977e8b5bced..67b740656f49b06853cd93dbf4763674ba6ba2c6 100644 (file)
@@ -14,7 +14,9 @@ HOST_LTTNG_BABELTRACE_DEPENDENCIES = \
        host-popt host-util-linux host-libglib2 host-pkgconf
 HOST_LTTNG_BABELTRACE_CONF_OPTS += --disable-debug-info
 
-# For 0002-m4-ax_lib_elfutils.m4-add-cache-variable.patch
+# For:
+#   0002-m4-ax_lib_elfutils.m4-add-cache-variable.patch
+#   0003-fix-uuid-support-detection-on-static-build.patch
 LTTNG_BABELTRACE_AUTORECONF = YES
 
 ifeq ($(BR2_PACKAGE_ELFUTILS),y)
index 787d16269b9420a39ac0210c943d8139a3446642..b085baf546d22471fdbca8f2ae461dfefa547a15 100644 (file)
@@ -1,7 +1,7 @@
 config BR2_PACKAGE_LUV
        bool "luv"
        select BR2_PACKAGE_LIBUV
-       depends on BR2_TOOLCHAIN_HAS_THREADS # libuv
+       depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
        depends on BR2_USE_MMU # libuv
        depends on !BR2_STATIC_LIBS # libuv
        help
@@ -9,6 +9,6 @@ config BR2_PACKAGE_LUV
 
          https://github.com/luvit/luv
 
-comment "luv needs a toolchain w/ threads, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+comment "luv needs a toolchain w/ NPTL, dynamic library"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
        depends on BR2_USE_MMU
index 2f01f5c2fa70a3da095aa801b4143f39cc9bfa6f..18317f401e249dacf087916f1b846a5055c682e6 100644 (file)
@@ -1,6 +1,6 @@
 config BR2_PACKAGE_LUVI
        bool "luvi"
-       depends on BR2_TOOLCHAIN_HAS_THREADS # libuv
+       depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
        depends on BR2_USE_MMU # libuv
        depends on !BR2_STATIC_LIBS # libuv
        depends on BR2_PACKAGE_LUAJIT
@@ -22,8 +22,8 @@ config BR2_PACKAGE_LUVI
 
          https://github.com/luvit/luvi
 
-comment "luvi needs a toolchain w/ threads, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+comment "luvi needs a toolchain w/ NPTL, dynamic library"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
        depends on BR2_USE_MMU
 
 comment "luvi needs LuaJIT"
index cacb144e2147ab75ccda5ef1f44e76a285a9e124..7092b1475ec4dc847b95308bf8cb05fde80c0a63 100644 (file)
@@ -599,6 +599,8 @@ int main(int argc, char **argv)
                } else
                {
                        dev_t rdev;
+                       unsigned i;
+                       char *full_name_inc;
 
                        if (type == 'p') {
                                mode |= S_IFIFO;
@@ -614,43 +616,24 @@ int main(int argc, char **argv)
                                goto loop;
                        }
 
-                       if (count > 0) {
-                               int i;
-                               char *full_name_inc;
-
-                               full_name_inc = xmalloc(strlen(full_name) + 8);
-                               for (i = 0; i < count; i++) {
-                                       sprintf(full_name_inc, "%s%d", full_name, start + i);
-                                       rdev = makedev(major, minor + i * increment);
-                                       if (mknod(full_name_inc, mode, rdev) == -1) {
-                                               bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name_inc);
-                                               ret = EXIT_FAILURE;
-                                       }
-                                       else if (chown(full_name_inc, uid, gid) == -1) {
-                                               bb_perror_msg("line %d: chown failed for %s", linenum, full_name_inc);
-                                               ret = EXIT_FAILURE;
-                                       }
-                                       if ((mode != -1) && (chmod(full_name_inc, mode) < 0)){
-                                               bb_perror_msg("line %d: chmod failed for %s", linenum, full_name_inc);
-                                               ret = EXIT_FAILURE;
-                                       }
-                               }
-                               free(full_name_inc);
-                       } else {
-                               rdev = makedev(major, minor);
-                               if (mknod(full_name, mode, rdev) == -1) {
-                                       bb_perror_msg("line %d: Couldnt create node %s", linenum, full_name);
+                       full_name_inc = xmalloc(strlen(full_name) + sizeof(int)*3 + 2);
+                       if (count)
+                               count--;
+                       for (i = start; i <= start + count; i++) {
+                               sprintf(full_name_inc, count ? "%s%u" : "%s", full_name, i);
+                               rdev = makedev(major, minor + (i - start) * increment);
+                               if (mknod(full_name_inc, mode, rdev) < 0) {
+                                       bb_perror_msg("line %d: can't create node %s", linenum, full_name_inc);
                                        ret = EXIT_FAILURE;
-                               }
-                               else if (chown(full_name, uid, gid) == -1) {
-                                       bb_perror_msg("line %d: chown failed for %s", linenum, full_name);
+                               } else if (chown(full_name_inc, uid, gid) < 0) {
+                                       bb_perror_msg("line %d: can't chown %s", linenum, full_name_inc);
                                        ret = EXIT_FAILURE;
-                               }
-                               if ((mode != -1) && (chmod(full_name, mode) < 0)){
-                                       bb_perror_msg("line %d: chmod failed for %s", linenum, full_name);
+                               } else if (chmod(full_name_inc, mode) < 0) {
+                                       bb_perror_msg("line %d: can't chmod %s", linenum, full_name_inc);
                                        ret = EXIT_FAILURE;
                                }
                        }
+                       free(full_name_inc);
                }
 loop:
                free(line);
diff --git a/package/mesa3d/0004-Fix-endianess-detection-with-musl-based-toolchains.patch b/package/mesa3d/0004-Fix-endianess-detection-with-musl-based-toolchains.patch
new file mode 100644 (file)
index 0000000..656705b
--- /dev/null
@@ -0,0 +1,65 @@
+From 61b076689b6308b1c9d0d84ee8654a47e65e67ae Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Fri, 4 Nov 2016 19:44:37 +0100
+Subject: [PATCH 1/1] Fix endianess detection with musl-based toolchains
+
+Musl does not define __GLIBC__ and will not provide a __MUSL__ macro:
+http://wiki.musl-libc.org/wiki/FAQ#Q:_why_is_there_no_MUSL_macro_.3F
+
+This patch checks for the presence of endian.h and promotes the result
+to src/amd/Makefile.addrlib.am which executes the broken build command.
+Fixes compile errors detected by the autobuilder infrastructure of the
+buildroot project:
+
+http://autobuild.buildroot.net/results/e27/e27a9a95f72dba3076549beb2a2ccfdbea2fcfee/
+http://autobuild.buildroot.net/results/e27/e27a9a95f72dba3076549beb2a2ccfdbea2fcfee/
+
+Patch sent upstream: https://patchwork.freedesktop.org/patch/119961/
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ configure.ac                | 1 +
+ src/amd/Makefile.addrlib.am | 1 +
+ src/util/u_endian.h         | 2 +-
+ 3 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4761c59..7991b52 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -786,6 +786,7 @@ fi
+ AC_HEADER_MAJOR
+ AC_CHECK_HEADER([xlocale.h], [DEFINES="$DEFINES -DHAVE_XLOCALE_H"])
+ AC_CHECK_HEADER([sys/sysctl.h], [DEFINES="$DEFINES -DHAVE_SYS_SYSCTL_H"])
++AC_CHECK_HEADER([endian.h], [DEFINES="$DEFINES -DHAVE_ENDIAN_H"])
+ AC_CHECK_FUNC([strtof], [DEFINES="$DEFINES -DHAVE_STRTOF"])
+ AC_CHECK_FUNC([mkostemp], [DEFINES="$DEFINES -DHAVE_MKOSTEMP"])
+diff --git a/src/amd/Makefile.addrlib.am b/src/amd/Makefile.addrlib.am
+index 64823fc..4e2fb1d 100644
+--- a/src/amd/Makefile.addrlib.am
++++ b/src/amd/Makefile.addrlib.am
+@@ -28,6 +28,7 @@ addrlib_libamdgpu_addrlib_la_CPPFLAGS = \
+       -I$(srcdir)/addrlib/core \
+       -I$(srcdir)/addrlib/inc/chip/r800 \
+       -I$(srcdir)/addrlib/r800/chip \
++      $(DEFINES) \
+       -DBRAHMA_BUILD=1
+ addrlib_libamdgpu_addrlib_la_CXXFLAGS = \
+diff --git a/src/util/u_endian.h b/src/util/u_endian.h
+index b9d563d..266fb4a 100644
+--- a/src/util/u_endian.h
++++ b/src/util/u_endian.h
+@@ -27,7 +27,7 @@
+ #ifndef U_ENDIAN_H
+ #define U_ENDIAN_H
+-#if defined(__GLIBC__) || defined(ANDROID)
++#if defined(__GLIBC__) || defined(ANDROID) || defined(HAVE_ENDIAN_H)
+ #include <endian.h>
+ #if __BYTE_ORDER == __LITTLE_ENDIAN
+-- 
+2.10.1
+
diff --git a/package/mesa3d/0005-configure.ac-invert-order-for-wayland-scanner-check.patch b/package/mesa3d/0005-configure.ac-invert-order-for-wayland-scanner-check.patch
new file mode 100644 (file)
index 0000000..e32031e
--- /dev/null
@@ -0,0 +1,39 @@
+From 60ee5191a0c074251862a15b12afdc9db0b2df38 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Thu, 17 Nov 2016 15:36:54 -0300
+Subject: [PATCH] configure.ac: invert order for wayland-scanner check
+
+When cross-compiling the .pc file might point to the wrong
+wayland-scanner binary (target rather than host) resulting in a
+non-executable and wrong scanner.
+Try searching the PATH first, and if that fails fall back into
+pkg-config.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5f30ae8..461792e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2025,11 +2025,11 @@ if test "x$with_egl_platforms" != "x" -a "x$enable_egl" != xyes; then
+     AC_MSG_ERROR([cannot build egl state tracker without EGL library])
+ fi
+-PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner],
+-        WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`,
+-        WAYLAND_SCANNER='')
++AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner])
+ if test "x$WAYLAND_SCANNER" = x; then
+-    AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner])
++    PKG_CHECK_MODULES([WAYLAND_SCANNER], [wayland-scanner],
++            WAYLAND_SCANNER=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`,
++            WAYLAND_SCANNER='')
+ fi
+ # Do per-EGL platform setups and checks
+-- 
+2.7.3
+
index a0186587fd639fb611467432c86d0faa058d1b6a..ed50371feb0191f553c043a024e6d74ed2c784a1 100644 (file)
@@ -137,6 +137,12 @@ MESA3D_CONF_OPTS += --disable-va
 # libGL is only provided for a full xorg stack
 ifeq ($(BR2_PACKAGE_XORG7),y)
 MESA3D_PROVIDES += libgl
+else
+define MESA3D_REMOVE_OPENGL_HEADERS
+       rm -rf $(STAGING_DIR)/usr/include/GL/
+endef
+
+MESA3D_POST_INSTALL_STAGING_HOOKS += MESA3D_REMOVE_OPENGL_HEADERS
 endif
 
 ifeq ($(BR2_PACKAGE_MESA3D_OPENGL_EGL),y)
index 76343d11995b3c47c10b76b8dc1d03a0ec6f87c1..c6e1efa39df668f43474571708a11119df0e2d46 100644 (file)
@@ -1,6 +1,6 @@
 config BR2_PACKAGE_MOARVM
        bool "moarvm"
-       depends on BR2_TOOLCHAIN_HAS_THREADS # libuv
+       depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
        depends on !BR2_STATIC_LIBS # libuv
        depends on BR2_USE_MMU # libuv
        depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS # libatomic_ops
@@ -18,8 +18,8 @@ config BR2_PACKAGE_MOARVM
 
          http://moarvm.com
 
-comment "moarvm needs a toolchain w/ threads, dynamic library"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+comment "moarvm needs a toolchain w/ NPTL, dynamic library"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || BR2_STATIC_LIBS
        depends on BR2_USE_MMU
        depends on BR2_PACKAGE_LIBATOMIC_OPS_ARCH_SUPPORTS
        depends on !BR2_sparc64 && !BR2_sparc
diff --git a/package/mpfr/0001-Fix-obsolete-ARC-asm-constraints.patch b/package/mpfr/0001-Fix-obsolete-ARC-asm-constraints.patch
new file mode 100644 (file)
index 0000000..12590cf
--- /dev/null
@@ -0,0 +1,37 @@
+mpfr-longlong.h: Fix obsolete ARC asm constraints
+
+This patch replaces obsolete ARC "J" asm constraint with
+up-to-date "Cal" constraint.
+The patch should be applied to upstream "mpfr" library and
+after that it should be removed from buildroot as soon as 
+mpfr version with current fix will come up.
+
+Signed-off-by: Vlad Zakharov <vzakhar@synopsys.com>
+Signed-off-by: Claudiu Zissulescu <claziss@synopsys.com>
+---
+Index: /src/mpfr-longlong.h
+===================================================================
+--- /src/mpfr-longlong.h       (revision 10963)
++++ /src/mpfr-longlong.h       (working copy)
+@@ -416,17 +416,17 @@
+          : "=r" (sh),                                                 \
+            "=&r" (sl)                                                 \
+          : "r"  ((USItype) (ah)),                                     \
+-           "rIJ" ((USItype) (bh)),                                    \
++           "rICal" ((USItype) (bh)),                                  \
+            "%r" ((USItype) (al)),                                     \
+-           "rIJ" ((USItype) (bl)))
++           "rICal" ((USItype) (bl)))
+ #define sub_ddmmss(sh, sl, ah, al, bh, bl) \
+   __asm__ ("sub.f\t%1, %4, %5\n\tsbc\t%0, %2, %3"                     \
+          : "=r" (sh),                                                 \
+            "=&r" (sl)                                                 \
+          : "r" ((USItype) (ah)),                                      \
+-           "rIJ" ((USItype) (bh)),                                    \
++           "rICal" ((USItype) (bh)),                                  \
+            "r" ((USItype) (al)),                                      \
+-           "rIJ" ((USItype) (bl)))
++           "rICal" ((USItype) (bl)))
+ #endif
+ #if defined (__arm__) && (defined (__thumb2__) || !defined (__thumb__)) \
index 76bb6f077c4c67b6a043ae84ba56e2d69e0d6aff..8474b0ec481415309315ba8c228ca583d6eb1951 100644 (file)
@@ -6,6 +6,9 @@ config BR2_PACKAGE_MPLAYER_ARCH_SUPPORTS
                || BR2_m68k || BR2_microblaze || BR2_nios2)
        # Broken support for <ARMv5
        depends on !BR2_ARM_CPU_ARMV4
+       # configure script barfs on the -Wl,-elf2flt we add in the toolchain
+       # wrapper, so just disable completely for FLAT
+       depends on !BR2_BINFMT_FLAT
 
 config BR2_PACKAGE_MPLAYER
        bool "mplayer"
diff --git a/package/mpv/0002-Fix-build-on-powerpc64-altivec.patch b/package/mpv/0002-Fix-build-on-powerpc64-altivec.patch
new file mode 100644 (file)
index 0000000..6db911d
--- /dev/null
@@ -0,0 +1,28 @@
+Subject: [PATCH] Work around bool type redefinition by altivec
+
+On powerpc64le, the SDL header from SDL2 may include altivec.h and this
+(combined with -std=c99) will cause a compile failure due to bool being
+redefined as a vector type.
+
+Re-include stdbool.h after SDL.h to restore the normal bool type.
+
+Signed-off-by: Sam Bobroff <sam.bobroff@au1.ibm.com>
+---
+ audio/out/ao_sdl.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/audio/out/ao_sdl.c b/audio/out/ao_sdl.c
+index d9d0062..0cb80d6 100644
+--- a/audio/out/ao_sdl.c
++++ b/audio/out/ao_sdl.c
+@@ -29,6 +29,7 @@
+ #include "osdep/timer.h"
+ #include <SDL.h>
++#include <stdbool.h>
+ struct priv
+ {
+-- 
+2.10.0.297.gf6727b0
+
index 25288a43d4c3aff54e977c60a7d76afe45cb1ef9..2719981467cb85292b732c1e66beadec3b6b8b7f 100644 (file)
@@ -3,6 +3,7 @@ config BR2_PACKAGE_MPV
        depends on BR2_TOOLCHAIN_HAS_THREADS
        depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
        depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
+       depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8
        select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
        select BR2_PACKAGE_FFMPEG
        select BR2_PACKAGE_FFMPEG_SWSCALE
@@ -17,5 +18,6 @@ config BR2_PACKAGE_MPV
 
 comment "mpv needs a toolchain w/ threads, gcc >= 4.5"
        depends on BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
+       depends on BR2_TOOLCHAIN_HAS_ATOMIC || BR2_TOOLCHAIN_HAS_SYNC_8
        depends on !BR2_TOOLCHAIN_HAS_THREADS || \
                !BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
index 002c9da639770dd0043582c1e39a47a9b9081155..a8658c4fec43e67d1aff3b2fd1089e07d4eed26c 100644 (file)
@@ -1,4 +1,4 @@
-From 7a9a369d9de784791a2ab384877aab5ff3801d4e Mon Sep 17 00:00:00 2001
+From eec38a200357b195efbb23bb645ab721c040f246 Mon Sep 17 00:00:00 2001
 From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
 Date: Thu, 3 Nov 2016 12:59:39 +0000
 Subject: [PATCH] iptunnel.c: do not include netinet/ip.h
@@ -29,19 +29,32 @@ of that the compilation fails due to a struct redefinition.
 
 The problem can be solved by just not including netinet/ip.h.
 
+However, some Linux headers included in certain toolchains may not have
+an updated linux/if_tunnel.h which includes linux/ip.h, so we need to
+include it unconditionally otherwise linux/if_tunnel.h will use the
+struct iphdr before being defined and the compilation will also fail in
+this way:
+
+================================
+In file included from iptunnel.c:33:0:
+/usr/include/linux/if_tunnel.h:37:16: error: field 'iph' has incomplete type
+  struct iphdr  iph;
+                  ^
+================================
+
 Upstream status: merge request sent
-https://sourceforge.net/p/net-tools/code/merge-requests/3/
+https://sourceforge.net/p/net-tools/code/merge-requests/4/
 
 Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
 ---
- iptunnel.c | -
- 1 file changed, 1 deletion(-)
+ iptunnel.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/iptunnel.c b/iptunnel.c
-index 3fe1b84..247ae10 100644
+index 3fe1b84..e2ec2d8 100644
 --- a/iptunnel.c
 +++ b/iptunnel.c
-@@ -26,7 +26,6 @@
+@@ -26,11 +26,11 @@
  #include <sys/socket.h>
  #include <sys/ioctl.h>
  #include <netinet/in.h>
@@ -49,6 +62,11 @@ index 3fe1b84..247ae10 100644
  #include <arpa/inet.h>
  #include <net/if.h>
  #include <net/if_arp.h>
+ #include <linux/types.h>
++#include <linux/ip.h>
+ #include <linux/if_tunnel.h>
+
+ #include "config.h"
 -- 
 2.10.1
 
index 0b6304b109b8483c863937bab004a1c5a8071ffd..7f9e0d67853b6f0beb0dc97f6eec9b5ac2fe6057 100644 (file)
@@ -28,6 +28,20 @@ else
 NTP_CONF_OPTS += --without-crypto --disable-openssl-random
 endif
 
+ifeq ($(BR2_PACKAGE_LIBCAP),y)
+NTP_CONF_OPTS += --enable-linuxcaps
+NTP_DEPENDENCIES += libcap
+else
+NTP_CONF_OPTS += --disable-linuxcaps
+endif
+
+ifeq ($(BR2_PACKAGE_LIBEDIT),y)
+NTP_CONF_OPTS += --with-lineeditlibs=edit
+NTP_DEPENDENCIES += libedit
+else
+NTP_CONF_OPTS += --without-lineeditlibs
+endif
+
 ifeq ($(BR2_PACKAGE_NTP_NTPSNMPD),y)
 NTP_CONF_OPTS += \
        --with-net-snmp-config=$(STAGING_DIR)/usr/bin/net-snmp-config
index 7b56f5ca9d8a246339721a3af38130d1c9c18f1f..2f1d33ef2887824be6c2e8ebac4a7fb5bc98d566 100644 (file)
@@ -54,6 +54,8 @@ config BR2_PACKAGE_OLA_EXAMPLES
 config BR2_PACKAGE_OLA_RDM_TESTS
        bool "rdm tests"
        depends on BR2_PACKAGE_OLA_PYTHON_BINDINGS
+       depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
+       select BR2_PACKAGE_PYTHON_NUMPY
        help
          Build OLA RDM tests.
 
index 75ab25e164c29c2d57f50c92eda66d7fa6ad251f..93e84a6838af6ca5fcdf683cf75578a3010a2bf6 100644 (file)
@@ -87,6 +87,11 @@ endif
 
 ifeq ($(BR2_PACKAGE_OLA_RDM_TESTS),y)
 OLA_CONF_OPTS += --enable-rdm-tests
+OLA_DEPENDENCIES += python-numpy
+# needed as numpy builds some shared libraries and ola checks for
+# numpy using a host python test program which fails with 'wrong ELF
+# class'.
+OLA_CONF_ENV = ac_cv_have_pymod_numpy=yes
 else
 OLA_CONF_OPTS += --disable-rdm-tests
 endif
index 2f3d024bd6df35a8b61bd8de83c801e06e178ac8..85c5b4da1f876cbdd9d1b407a3c47ada77080c7b 100644 (file)
@@ -1,5 +1,5 @@
 config BR2_PACKAGE_OLSR
-       bool "olsrd"
+       bool "olsr"
        depends on BR2_USE_MMU # fork()
        depends on BR2_TOOLCHAIN_HAS_THREADS
        depends on !BR2_STATIC_LIBS
index 9583e0ea2978f6b61b7295434a6766bc0ae8b10c..a26e10a43ce601da56dde7bf584b20aa6c9518c8 100644 (file)
@@ -31,6 +31,9 @@ else
 OPENBLAS_MAKE_OPTS += USE_THREAD=0
 endif
 
+# We don't know if OpenMP is available or not, so disable
+OPENBLAS_MAKE_OPTS += USE_OPENMP=0
+
 # Static-only/Shared-only toggle
 ifeq ($(BR2_STATIC_LIBS),y)
 OPENBLAS_MAKE_OPTS += NO_SHARED=1
diff --git a/package/openjpeg/0001-thirdparty-tiff-append-flags-found-by-pkg-config-if-.patch b/package/openjpeg/0001-thirdparty-tiff-append-flags-found-by-pkg-config-if-.patch
new file mode 100644 (file)
index 0000000..bce790a
--- /dev/null
@@ -0,0 +1,72 @@
+From 38f50c7d9ad3ba06b64583045665203afb53cbd9 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 6 Nov 2016 16:29:08 +0100
+Subject: [PATCH] thirdparty: tiff: append flags found by pkg-config if
+ available
+
+This change allows to get all required CFLAGS/LDFLAGS in case of static only
+build.
+
+This build issue [1] was triggered by the Buildroot farms.
+
+[1] http://autobuild.buildroot.net/results/d0d/d0d22727311d6300e0e400728126170407bfd699/build-end.log
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ thirdparty/CMakeLists.txt | 23 +++++++++++++++++++++--
+ 1 file changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt
+index cb24b43b58e2..cd6a5e1391b0 100644
+--- a/thirdparty/CMakeLists.txt
++++ b/thirdparty/CMakeLists.txt
+@@ -1,5 +1,9 @@
+ # 3rd party libs
++if(NOT BUILD_THIRDPARTY)
++  include(FindPkgConfig)
++endif(NOT BUILD_THIRDPARTY)
++
+ #------------
+ # Try to find lib Z
+ if(BUILD_THIRDPARTY)
+@@ -36,6 +40,9 @@ if(BUILD_THIRDPARTY)
+ else(BUILD_THIRDPARTY)
+   if(ZLIB_FOUND)
+     find_package(PNG)
++    # Static only build:
++    #   it is not necessary to invoke pkg_check_module on libpng, because libpng
++    #   only depends on zlib, which is already checked.
+     if(PNG_FOUND)
+       message(STATUS "Your system seems to have a PNG lib available, we will use it")
+       set(OPJ_HAVE_PNG_H 1 PARENT_SCOPE)
+@@ -66,12 +73,24 @@ if(BUILD_THIRDPARTY)
+   set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE)
+ else(BUILD_THIRDPARTY)
+   find_package(TIFF)
++  # Static only build:
++  #   it is necessary to invoke pkg_check_module on libtiff since it may have
++  #   several other dependencies not declared by its cmake module, but they are
++  #   in the its pkgconfig module.
++  if(PKG_CONFIG_FOUND)
++    foreach(pc_tiff_module tiff tiff3 tiff4 tiff-3 tiff-4 libtiff libtiff3 libtiff4 libtiff-3 libtiff-4)
++      pkg_check_modules(PC_TIFF QUIET ${pc_tiff_module})
++      if(PC_TIFF_FOUND)
++        break()
++      endif(PC_TIFF_FOUND)
++    endforeach()
++  endif(PKG_CONFIG_FOUND)
+   if(TIFF_FOUND)
+     message(STATUS "Your system seems to have a TIFF lib available, we will use it")
+     set(OPJ_HAVE_TIFF_H 1 PARENT_SCOPE)
+     set(OPJ_HAVE_LIBTIFF 1 PARENT_SCOPE)
+-    set(TIFF_LIBNAME ${TIFF_LIBRARIES} PARENT_SCOPE)
+-    set(TIFF_INCLUDE_DIRNAME ${TIFF_INCLUDE_DIR} PARENT_SCOPE)
++    set(TIFF_LIBNAME ${TIFF_LIBRARIES} ${PC_TIFF_STATIC_LIBRARIES} PARENT_SCOPE)
++    set(TIFF_INCLUDE_DIRNAME ${TIFF_INCLUDE_DIR} ${PC_TIFF_STATIC_INCLUDE_DIRS} PARENT_SCOPE)
+   else(TIFF_FOUND) # not found
+     set(OPJ_HAVE_TIFF_H 0 PARENT_SCOPE)
+     set(OPJ_HAVE_LIBTIFF 0 PARENT_SCOPE)
+-- 
+2.10.2
+
diff --git a/package/openjpeg/0002-thirdparty-lcms2-append-flags-found-by-pkg-config-if.patch b/package/openjpeg/0002-thirdparty-lcms2-append-flags-found-by-pkg-config-if.patch
new file mode 100644 (file)
index 0000000..5697b82
--- /dev/null
@@ -0,0 +1,49 @@
+From 226daa77ea5a35da306f9af2548f3e2c9e79f577 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Fri, 11 Nov 2016 23:35:13 +0100
+Subject: [PATCH] thirdparty: lcms2: append flags found by pkg-config if
+ available
+
+This change allows to get all required CFLAGS/LDFLAGS in case of static only
+build.
+
+Fixes a buildroot build failure (see [1], [2] and [3]).
+
+[1] http://autobuild.buildroot.net/results/5ce/5cee20afd8bef5268832cddcb3a5270746be7a57
+[2] http://lists.busybox.net/pipermail/buildroot/2016-November/177187.html
+[3] http://lists.busybox.net/pipermail/buildroot/2016-November/177188.html
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ thirdparty/CMakeLists.txt | 11 +++++++++--
+ 1 file changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt
+index cd6a5e1391b0..a3a8494d89b1 100644
+--- a/thirdparty/CMakeLists.txt
++++ b/thirdparty/CMakeLists.txt
+@@ -113,12 +113,19 @@ if( BUILD_THIRDPARTY)
+   set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE)
+ else(BUILD_THIRDPARTY)
+   find_package(LCMS2)
++  # Static only build:
++  #   it is necessary to invoke pkg_check_module on lcms2 since it may have
++  #   several other dependencies not declared by its cmake module, but they are
++  #   in the its pkgconfig module.
++  if(PKG_CONFIG_FOUND)
++    pkg_check_modules(PC_LCMS2 QUIET lcms2)
++  endif(PKG_CONFIG_FOUND)
+   if(LCMS2_FOUND)
+     message(STATUS "Your system seems to have a LCMS2 lib available, we will use it")
+     set(OPJ_HAVE_LCMS2_H 1 PARENT_SCOPE)
+     set(OPJ_HAVE_LIBLCMS2 1 PARENT_SCOPE)
+-    set(LCMS_LIBNAME ${LCMS2_LIBRARIES} PARENT_SCOPE)
+-    set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} PARENT_SCOPE)
++    set(LCMS_LIBNAME ${LCMS2_LIBRARIES} ${PC_LCMS2_STATIC_LIBRARIES} PARENT_SCOPE)
++    set(LCMS_INCLUDE_DIRNAME ${LCMS2_INCLUDE_DIRS} ${PC_LCMS2_STATIC_INCLUDE_DIRS} PARENT_SCOPE)
+   else(LCMS2_FOUND) # not found lcms2
+     # try to find LCMS
+     find_package(LCMS)
+-- 
+2.10.2
+
index 35d4fbd5350e32d6d772cc31e5d97777c98f68f1..c0abd0c54d7c251146271eada814fe7ce2331d14 100644 (file)
@@ -1,2 +1,2 @@
 # Locally computed:
-sha256 4afc996cd5e0d16360d71c58216950bcb4ce29a3272360eb29cadb1c8bce4efc  openjpeg-2.1.tar.gz
+sha256 4ce77b6ef538ef090d9bde1d5eeff8b3069ab56c4906f083475517c2c023dfa7  openjpeg-2.1.2.tar.gz
index bf125261a7feb202399d3f169055cc6dfe9589cc..ca22068113a306fae3fa10563fb82076123086a5 100644 (file)
@@ -4,8 +4,8 @@
 #
 ################################################################################
 
-OPENJPEG_VERSION = 2.1
-OPENJPEG_SITE = $(call github,uclouvain,openjpeg,version.$(OPENJPEG_VERSION))
+OPENJPEG_VERSION = 2.1.2
+OPENJPEG_SITE = $(call github,uclouvain,openjpeg,v$(OPENJPEG_VERSION))
 OPENJPEG_LICENSE = BSD-2c
 OPENJPEG_LICENSE_FILES = LICENSE
 OPENJPEG_INSTALL_STAGING = YES
diff --git a/package/openssh/0003-fix-CVE-2016-8858.patch b/package/openssh/0003-fix-CVE-2016-8858.patch
new file mode 100644 (file)
index 0000000..4ba1cfd
--- /dev/null
@@ -0,0 +1,31 @@
+From ec165c392ca54317dbe3064a8c200de6531e89ad Mon Sep 17 00:00:00 2001
+From: "markus@openbsd.org" <markus@openbsd.org>
+Date: Mon, 10 Oct 2016 19:28:48 +0000
+Subject: [PATCH] upstream commit
+
+Unregister the KEXINIT handler after message has been
+received. Otherwise an unauthenticated peer can repeat the KEXINIT and cause
+allocation of up to 128MB -- until the connection is closed. Reported by
+shilei-c at 360.cn
+
+Upstream-ID: 43649ae12a27ef94290db16d1a98294588b75c05
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Patch status: upstream
+
+ kex.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/kex.c b/kex.c
+index 3f97f8c..6a94bc5 100644
+--- a/kex.c
++++ b/kex.c
+@@ -481,6 +481,7 @@ kex_input_kexinit(int type, u_int32_t seq, void *ctxt)
+       if (kex == NULL)
+               return SSH_ERR_INVALID_ARGUMENT;
++      ssh_dispatch_set(ssh, SSH2_MSG_KEXINIT, NULL);
+       ptr = sshpkt_ptr(ssh, &dlen);
+       if ((r = sshbuf_put(kex->peer, ptr, dlen)) != 0)
+               return r;
diff --git a/package/php/0007-avoid-bfin-gcc-segfault.patch b/package/php/0007-avoid-bfin-gcc-segfault.patch
new file mode 100644 (file)
index 0000000..4dccb25
--- /dev/null
@@ -0,0 +1,16 @@
+Avoid gcc segmentation fault
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur php-7.0.12.orig/Zend/zend_portability.h php-7.0.12/Zend/zend_portability.h
+--- php-7.0.12.orig/Zend/zend_portability.h    2016-10-13 16:04:17.000000000 +0200
++++ php-7.0.12/Zend/zend_portability.h 2016-11-08 02:49:39.118388999 +0100
+@@ -97,7 +97,7 @@
+ #if defined(ZEND_WIN32) && !defined(__clang__)
+ # define ZEND_ASSUME(c)       __assume(c)
+-#elif ((defined(__GNUC__) && ZEND_GCC_VERSION >= 4005) || __has_builtin(__builtin_unreachable)) && PHP_HAVE_BUILTIN_EXPECT
++#elif ((defined(__GNUC__) && ZEND_GCC_VERSION >= 4005) || __has_builtin(__builtin_unreachable)) && PHP_HAVE_BUILTIN_EXPECT && !defined(__bfin__)
+ # define ZEND_ASSUME(c)       do { \
+               if (__builtin_expect(!(c), 0)) __builtin_unreachable(); \
+       } while (0)
index b75a58fefc2ae562ec98f43210766ab21fae7041..88014b8c80753cf487a2b3e22b23999e6b26704c 100644 (file)
@@ -1,9 +1,6 @@
 [www]
-# Only start children when there are requests to be processed
 pm = ondemand
-# Terminate them again after there haven't been any for 2 minutes
 pm.process_idle_timeout = 120s
-# Maximum number of children processing PHP requests concurrently
 pm.max_children = 5
 
 listen = /var/run/php-fpm.sock
index d46e8c0ec8ec77b7493e04a7a803e284cb7c9168..786ef4876ac0056f798e9b56a540b71b8fd80faf 100644 (file)
@@ -13,7 +13,7 @@ POSTGRESQL_INSTALL_STAGING = YES
 POSTGRESQL_CONFIG_SCRIPTS = pg_config
 POSTGRESQL_CONF_ENV = \
        ac_cv_type_struct_sockaddr_in6=yes \
-       pgac_cv_snprintf_long_long_int_modifier="%lld" \
+       pgac_cv_snprintf_long_long_int_modifier="ll" \
        pgac_cv_snprintf_size_t_support=yes
 POSTGRESQL_CONF_OPTS = --disable-rpath
 
index 8d8d01a73ffe5edc272233611648e26c727e4c6a..accb48dfc2c88fed224eb534effdd2bf63b4a18f 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_PRIVOXY
        bool "privoxy"
        depends on BR2_USE_MMU # fork()
+       depends on BR2_TOOLCHAIN_HAS_THREADS
        select BR2_PACKAGE_PCRE
        select BR2_PACKAGE_ZLIB
        help
@@ -10,3 +11,7 @@ config BR2_PACKAGE_PRIVOXY
          obnoxious Internet junk.
 
          http://www.privoxy.org/
+
+comment "privoxy needs a toolchain w/ threads"
+       depends on BR2_USE_MMU
+       depends on !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/pseudo/0001-Fix-mixed-tab-space-indentation.patch b/package/pseudo/0001-Fix-mixed-tab-space-indentation.patch
new file mode 100644 (file)
index 0000000..6b62c1a
--- /dev/null
@@ -0,0 +1,105 @@
+From bf4e5310547603bf36e67dc4cba027963f16508e Mon Sep 17 00:00:00 2001
+From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= <gael.portay@savoirfairelinux.com>
+Date: Fri, 4 Nov 2016 11:53:48 -0400
+Subject: [PATCH 1/3] Fix mixed tab/space indentation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 8bit
+
+CC="cc  -pipe -std=gnu99 -Wall -W -Wextra -fPIC -D_LARGEFILE64_SOURCE -D_ATFILE_SOURCE  -DPSEUDO_PREFIX='"/usr/local"' -DPSEUDO_SUFFIX='""' -DPSEUDO_BINDIR='"bin"' -DPSEUDO_LIBDIR='"lib64"' -DPSEUDO_LOCALSTATEDIR='"var/pseudo"' -DPSEUDO_VERSION='"1.8.1"' -DUSE_MEMORY_DB  -DPSEUDO_PASSWD_FALLBACK='""'   -DPSEUDO_XATTR_SUPPORT       -O2 -g " ./makewrappers "xattr=true"
+  File "./makewrappers", line 327
+    return """/* This function is not called if pseudo is configured --enable-force-async */
+                                                                                           ^
+TabError: inconsistent use of tabs and spaces in indentation
+
+Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
+---
+ makewrappers | 26 +++++++++++++-------------
+ 1 file changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/makewrappers b/makewrappers
+index e9191ed..303e2cc 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -324,7 +324,7 @@ class Function:
+     def maybe_async_skip(self):
+         if self.async_skip:
+-          return """/* This function is not called if pseudo is configured --enable-force-async */
++            return """/* This function is not called if pseudo is configured --enable-force-async */
+ #ifdef PSEUDO_FORCE_ASYNC
+       if (!pseudo_allow_fsync) {
+               PROFILE_DONE;
+@@ -333,7 +333,7 @@ class Function:
+ #endif
+ """ % self.async_skip
+         else:
+-          return ""
++            return ""
+     def comment(self):
+         """declare self (in a comment)"""
+@@ -393,11 +393,11 @@ class Function:
+     def rc_format(self):
+         """the format string to use for the return value"""
+-      return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['format']
++        return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['format']
+     def rc_value(self):
+         """the value to pass for the format string for the return value"""
+-      return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['value']
++        return typedata.get(self.type, { 'format': '[%s]', 'value': '"' + self.type + '"' })['value']
+     def rc_decl(self):
+         """declare rc (if needed)"""
+@@ -456,7 +456,7 @@ additional ports to include.
+         self.name = port
+         self.subports = []
+         self.preports = []
+-      print port
++        print port
+         if os.path.exists(self.portfile("pseudo_wrappers.c")):
+             self.wrappers = self.portfile("pseudo_wrappers.c")
+@@ -522,11 +522,11 @@ additional ports to include.
+         return '#define PSEUDO_PORT_%s 1' % string.upper(self.name).replace('/', '_')
+     def portdeps(self):
+-      deps = []
+-      if self.wrappers:
+-          deps.append(self.wrappers)
+-      if self.portdef_file:
+-          deps.append(self.portdef_file)
++        deps = []
++        if self.wrappers:
++            deps.append(self.wrappers)
++        if self.portdef_file:
++            deps.append(self.portdef_file)
+         if deps:
+             return 'pseudo_wrappers.o: %s' % ' '.join(deps)
+         else:
+@@ -590,7 +590,7 @@ def main(argv):
+     for arg in argv:
+         name, value = arg.split('=')
+-      os.environ["port_" + name] = value
++        os.environ["port_" + name] = value
+     # error checking helpfully provided by the exception handler
+     copyright_file = open('guts/COPYRIGHT')
+@@ -599,9 +599,9 @@ def main(argv):
+     for path in glob.glob('templates/*'):
+         try:
+-          print "Considering template: " + path
++            print "Considering template: " + path
+             source = TemplateFile(path)
+-          if source.name.endswith('.c') or source.name.endswith('.h'):
++            if source.name.endswith('.c') or source.name.endswith('.h'):
+                 source.emit('copyright')
+             source.emit('header')
+             sources.append(source)
+-- 
+2.10.1
+
diff --git a/package/pseudo/0002-Fix-missing-parentheses-at-print.patch b/package/pseudo/0002-Fix-missing-parentheses-at-print.patch
new file mode 100644 (file)
index 0000000..b023fcf
--- /dev/null
@@ -0,0 +1,190 @@
+From 6488a68ca715d8e18f899e536effceb548ed136e Mon Sep 17 00:00:00 2001
+From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= <gael.portay@savoirfairelinux.com>
+Date: Fri, 4 Nov 2016 12:23:25 -0400
+Subject: [PATCH 2/3] Fix missing parentheses at print
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 8bit
+
+CC="cc  -pipe -std=gnu99 -Wall -W -Wextra -fPIC -D_LARGEFILE64_SOURCE -D_ATFILE_SOURCE  -DPSEUDO_PREFIX='"/usr/local"' -DPSEUDO_SUFFIX='""' -DPSEUDO_BINDIR='"bin"' -DPSEUDO_LIBDIR='"lib64"' -DPSEUDO_LOCALSTATEDIR='"var/pseudo"' -DPSEUDO_VERSION='"1.8.1"' -DUSE_MEMORY_DB  -DPSEUDO_PASSWD_FALLBACK='""'   -DPSEUDO_XATTR_SUPPORT       -O2 -g " ./makewrappers "xattr=true"
+  File "./makewrappers", line 459
+    print port
+             ^
+SyntaxError: Missing parentheses in call to 'print'
+
+Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
+---
+ maketables      | 12 ++++++------
+ makewrappers    | 32 ++++++++++++++++----------------
+ templatefile.py |  8 ++++----
+ 3 files changed, 26 insertions(+), 26 deletions(-)
+
+diff --git a/maketables b/maketables
+index b32312e..0726485 100755
+--- a/maketables
++++ b/maketables
+@@ -73,7 +73,7 @@ class DataType:
+             for col in columns:
+                 indexed = False
+                 if col.startswith("FLAGS"):
+-                    print "Flags: set for %s" % self.name
++                    print("Flags: set for %s" % self.name)
+                     self.flags = True
+                     continue
+                 if col.startswith("INDEXED "):
+@@ -248,7 +248,7 @@ def main():
+             template_file.emit('header')
+             templates.append(template_file)
+         except IOError:
+-            print "Invalid or malformed template %s.  Aborting." % path
++            print("Invalid or malformed template %s.  Aborting." % path)
+             exit(1)
+     for filename in sys.argv[1:]:
+@@ -256,15 +256,15 @@ def main():
+         sys.stdout.write("%s: " % filename)
+         datatype = DataType(filename)
+         datatypes.append(datatype)
+-        print datatype.__repr__()
+-        print ""
++        print(datatype.__repr__())
++        print("")
+-    print "Writing datatypes...",
++    print("Writing datatypes...")
+     for datatype in datatypes:
+         # populate various tables and files with each datatype
+         for template_file in templates:
+             template_file.emit('body', datatype)
+-    print "done.  Cleaning up."
++    print("done.  Cleaning up.")
+     
+     for template_file in templates:
+         # clean up files
+diff --git a/makewrappers b/makewrappers
+index 303e2cc..bac856b 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -456,7 +456,7 @@ additional ports to include.
+         self.name = port
+         self.subports = []
+         self.preports = []
+-        print port
++        print(port)
+         if os.path.exists(self.portfile("pseudo_wrappers.c")):
+             self.wrappers = self.portfile("pseudo_wrappers.c")
+@@ -504,17 +504,17 @@ additional ports to include.
+             prefuncs = pre.functions()
+             for name in prefuncs.keys():
+                 if name in mergedfuncs:
+-                    print "Warning: %s from %s overriding %s" % (name, pre.name, mergedfuncs[name].port)
++                    print("Warning: %s from %s overriding %s" % (name, pre.name, mergedfuncs[name].port))
+                 mergedfuncs[name] = prefuncs[name]
+         for name in self.funcs.keys():
+             if name in mergedfuncs:
+-                print "Warning: %s from %s overriding %s" % (name, self.name, mergedfuncs[name].port)
++                print("Warning: %s from %s overriding %s" % (name, self.name, mergedfuncs[name].port))
+             mergedfuncs[name] = self.funcs[name]
+         for sub in self.subports:
+             subfuncs = sub.functions()
+             for name in subfuncs.keys():
+                 if name in mergedfuncs:
+-                    print "Warning: %s from %s overriding %s" % (name, sub.name, mergedfuncs[name].port)
++                    print("Warning: %s from %s overriding %s" % (name, sub.name, mergedfuncs[name].port))
+                 mergedfuncs[name] = subfuncs[name]
+         return mergedfuncs
+@@ -576,11 +576,11 @@ def process_wrapfuncs(port):
+             func.directory = directory
+             funcs[func.name] = func
+             sys.stdout.write(".")
+-        except Exception, e:
+-            print "Parsing failed:", e
++        except Exception(e):
++            print("Parsing failed:", e)
+             exit(1)
+     funclist.close()
+-    print ""
++    print("")
+     return funcs
+ def main(argv):
+@@ -599,35 +599,35 @@ def main(argv):
+     for path in glob.glob('templates/*'):
+         try:
+-            print "Considering template: " + path
++            print("Considering template: " + path)
+             source = TemplateFile(path)
+             if source.name.endswith('.c') or source.name.endswith('.h'):
+                 source.emit('copyright')
+             source.emit('header')
+             sources.append(source)
+         except IOError:
+-            print "Invalid or malformed template %s.  Aborting." % path
++            print("Invalid or malformed template %s.  Aborting." % path)
+             exit(1)
+     try:
+         port = Port('common', sources)
+     except KeyError:
+-        print "Unknown uname -s result: '%s'." % uname_s
+-        print "Known system types are:"
+-        print "%-20s %-10s %s" % ("uname -s", "port name", "description")
++        print("Unknown uname -s result: '%s'." % uname_s)
++        print("Known system types are:")
++        print("%-20s %-10s %s" % ("uname -s", "port name", "description"))
+         for key in host_ports:
+-            print "%-20s %-10s %s" % (key, host_ports[key],
+-                                      host_descrs[host_ports[key]])
++            print("%-20s %-10s %s" % (key, host_ports[key],
++                                      host_descrs[host_ports[key]]))
+     # the per-function stuff
+-    print "Writing functions...",
++    print("Writing functions...")
+     all_funcs = port.functions()
+     for name in sorted(all_funcs.keys()):
+         # populate various tables and files with each function
+         for source in sources:
+             source.emit('body', all_funcs[name])
+-    print "done.  Cleaning up."
++    print("done.  Cleaning up.")
+     
+     for source in sources:
+         # clean up files
+diff --git a/templatefile.py b/templatefile.py
+index 2789b22..abf9a2c 100644
+--- a/templatefile.py
++++ b/templatefile.py
+@@ -79,13 +79,13 @@ class TemplateFile:
+                 return
+             path = Template(self.path).safe_substitute(item)
+             if os.path.exists(path):
+-                # print "We don't overwrite existing files."
++                # print("We don't overwrite existing files.")
+                 return
+             self.file = open(path, 'w')
+             if not self.file:
+-                print "Couldn't open '%s' (expanded from %s), " \
++                print("Couldn't open '%s' (expanded from %s), " \
+                       "not emitting '%s'." % \
+-                      (path, self.path, template)
++                      (path, self.path, template))
+                 return
+     def emit(self, template, item=None):
+@@ -103,7 +103,7 @@ class TemplateFile:
+                     self.file.write(templ.safe_substitute(item))
+                     self.file.write("\n")
+         else:
+-            print "Warning: Unknown template '%s'." % template
++            print("Warning: Unknown template '%s'." % template)
+         if self.file_per_item:
+             if self.file:
+-- 
+2.10.1
+
diff --git a/package/pseudo/0003-Make-it-compatible-with-python3.patch b/package/pseudo/0003-Make-it-compatible-with-python3.patch
new file mode 100644 (file)
index 0000000..3bb74de
--- /dev/null
@@ -0,0 +1,215 @@
+From fcc10b1f4a9968af5cda1adb9e449df92939d5f2 Mon Sep 17 00:00:00 2001
+From: =?utf-8?q?Ga=C3=ABl=20PORTAY?= <gael.portay@savoirfairelinux.com>
+Date: Fri, 4 Nov 2016 15:58:46 -0400
+Subject: [PATCH 3/3] Make it compatible with python3
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 8bit
+
+Python scripts are now compatible with both version of python, 2 and 3.
+
+Helped-by: Damien Riegel <damien.riegel@savoirfairelinux.com>
+Helped-by: Alexandre Leblanc <alexandre.leblanc@savoirfairelinux.com>
+Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
+---
+ maketables   | 135 ++++++++++++++++++++++++++++++-----------------------------
+ makewrappers |   8 ++--
+ 2 files changed, 73 insertions(+), 70 deletions(-)
+
+diff --git a/maketables b/maketables
+index 0726485..f74f2b1 100755
+--- a/maketables
++++ b/maketables
+@@ -51,6 +51,7 @@ value.  (This is for consistency with C array bounds.)
+ import glob
+ import sys
+ import string
++import os
+ from templatefile import TemplateFile
+ class DataType:
+@@ -58,74 +59,74 @@ class DataType:
+     def __init__(self, path):
+         """read the first line of path, then make tuples of the rest"""
+-        source = file(path)
+-        definition = source.readline().rstrip()
+-        self.name, qualifiers = string.split(definition, ': ', 2)
+-        if '; ' in qualifiers:
+-            self.prefix, columns = string.split(qualifiers, '; ')
+-        else:
+-            self.prefix = qualifiers
+-            columns = []
+-        self.flags = False
+-        if len(columns):
+-            self.columns = []
+-            columns = string.split(columns, ', ')
+-            for col in columns:
+-                indexed = False
+-                if col.startswith("FLAGS"):
+-                    print("Flags: set for %s" % self.name)
+-                    self.flags = True
++        with open(path,'r') as source:
++            definition = source.readline().rstrip()
++            self.name, qualifiers = definition.split(': ', 2)
++            if '; ' in qualifiers:
++                self.prefix, columns = qualifiers.split('; ')
++            else:
++                self.prefix = qualifiers
++                columns = []
++            self.flags = False
++            if len(columns):
++                self.columns = []
++                columns = columns.split(', ')
++                for col in columns:
++                    indexed = False
++                    if col.startswith("FLAGS"):
++                        print("Flags: set for %s" % self.name)
++                        self.flags = True
++                        continue
++                    if col.startswith("INDEXED "):
++                        col = col[8:]
++                        indexed = True
++                    if "=" in col:
++                        name, default = col.split(' = ')
++                    else:
++                        name, default = col, ""
++                    if " " in name:
++                        words = name.split(' ')
++                        name = words[-1]
++                        del words[-1]
++                        type = ' '.join(words)
++                    else:
++                        type = "char *"
++                    self.columns.append({"indexed":indexed, "type":type, "name":name, "value":default})
++            else:
++                self.columns = []
++            self.data = []
++            self.comments = []
++            index = 1
++            for line in source.readlines():
++                item = {}
++                if line.startswith('#'):
++                    self.comments.append(line.rstrip().replace('#', ''))
+                     continue
+-                if col.startswith("INDEXED "):
+-                    col = col[8:]
+-                    indexed = True
+-                if "=" in col:
+-                    name, default = string.split(col, ' = ')
+-                else:
+-                    name, default = col, ""
+-                if " " in name:
+-                    words = string.split(name, ' ')
+-                    name = words[-1]
+-                    del words[-1]
+-                    type = ' '.join(words)
+-                else:
+-                    type = "char *"
+-                self.columns.append({"indexed":indexed, "type":type, "name":name, "value":default})
+-        else:
+-            self.columns = []
+-        self.data = []
+-        self.comments = []
+-        index = 1
+-        for line in source.readlines():
+-            item = {}
+-            if line.startswith('#'):
+-                self.comments.append(line.rstrip().replace('#', ''))
+-                continue
+-            # first entry on the line is the "real" name/id, following hunks
+-            # are additional columns
+-            cols = string.split(line.rstrip(), ', ')
+-            item["name"] = cols.pop(0)
+-            item["upper"] = item["name"].replace('-', '_').upper()
+-            column_list = []
+-            for col in self.columns:
+-                if len(cols) > 0:
+-                    value = cols.pop(0)
+-                    if col["indexed"]:
+-                        if not "max" in col:
+-                            col["max"] = value
+-                        if value > col["max"]:
+-                            col["max"] = value
+-                        if not "min" in col:
+-                            col["min"] = value
+-                        if value < col["min"]:
+-                            col["min"] = value
+-                    column_list.append({"name":col["name"], "value":value})
+-                else:
+-                    column_list.append({"name":col["name"], "value":col["value"]})
+-            item["cols"] = column_list
+-            item["index"] = index
+-            index = index + 1
+-            self.data.append(item)
++                # first entry on the line is the "real" name/id, following hunks
++                # are additional columns
++                cols = line.rstrip().split(', ')
++                item["name"] = cols.pop(0)
++                item["upper"] = item["name"].replace('-', '_').upper()
++                column_list = []
++                for col in self.columns:
++                    if len(cols) > 0:
++                        value = cols.pop(0)
++                        if col["indexed"]:
++                            if not "max" in col:
++                                col["max"] = value
++                            if value > col["max"]:
++                                col["max"] = value
++                            if not "min" in col:
++                                col["min"] = value
++                            if value < col["min"]:
++                                col["min"] = value
++                        column_list.append({"name":col["name"], "value":value})
++                    else:
++                        column_list.append({"name":col["name"], "value":col["value"]})
++                item["cols"] = column_list
++                item["index"] = index
++                index = index + 1
++                self.data.append(item)
+     def __getitem__(self, key):
+         """Make this object look like a dict for Templates to use"""
+diff --git a/makewrappers b/makewrappers
+index bac856b..ff08ba0 100755
+--- a/makewrappers
++++ b/makewrappers
+@@ -453,6 +453,8 @@ additional ports to include.
+ """
+     def __init__(self, port, sources):
++        if type(port) is not str:
++            port = str(port, encoding="ascii")
+         self.name = port
+         self.subports = []
+         self.preports = []
+@@ -483,7 +485,7 @@ additional ports to include.
+             if retcode:
+                 raise Exception("preports script failed for port %s" % self.name)
+-            for preport in string.split(portlist):
++            for preport in portlist.split():
+                 next = Port(preport, sources)
+                 self.preports.append(next)
+@@ -494,7 +496,7 @@ additional ports to include.
+             if retcode:
+                 raise Exception("subports script failed for port %s" % self.name)
+-            for subport in string.split(portlist):
++            for subport in portlist.split():
+                 next = Port(subport, sources)
+                 self.subports.append(next)
+@@ -519,7 +521,7 @@ additional ports to include.
+         return mergedfuncs
+     def define(self):
+-        return '#define PSEUDO_PORT_%s 1' % string.upper(self.name).replace('/', '_')
++        return '#define PSEUDO_PORT_%s 1' % self.name.upper().replace('/', '_')
+     def portdeps(self):
+         deps = []
+-- 
+2.10.1
+
index 5822d0e6f32107bc869dbde2388daf4f7f2b33ec..1553a293fdddb8bba7c2766e312bb21879652016 100644 (file)
@@ -1,2 +1,2 @@
 # Locally computed
-sha256  d7767c9a73b0df4f1f26952cf5eca4c6ff6fc4bc5ef15a904ea3839c70161936  pseudo-7abc9396731149df5eaf43c84fed4f3053b64de6.tar.gz
+sha256  7d4b767302f118fa1c3f89b551cf3f3f2aa92721dab86ff62f0600a394b8a81a  pseudo-45eca34c754d416a38bee90fb2d3c110a0b6cc5f.tar.gz
index e2c56fff060ab54d3094b1e4c3547b08f7e38c17..8144cca825dbba2ea6a90ad04b3e682feec5e677 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-PSEUDO_VERSION = 7abc9396731149df5eaf43c84fed4f3053b64de6
+PSEUDO_VERSION = 45eca34c754d416a38bee90fb2d3c110a0b6cc5f
 PSEUDO_SITE = https://git.yoctoproject.org/git/pseudo
 PSEUDO_SITE_METHOD = git
 
@@ -12,17 +12,18 @@ PSEUDO_SITE_METHOD = git
 PSEUDO_LICENSE = LGPLv2.1
 PSEUDO_LICENSE_FILES = COPYING
 
-HOST_PSEUDO_DEPENDENCIES = host-sqlite
+HOST_PSEUDO_DEPENDENCIES = host-attr host-sqlite
 
 # configure script is not generated by autoconf, so passing --libdir
 # is necessary, even if the infrastructure passes --prefix already.
+# It also does not use CFLAGS from the environment, they need to be
+# specified with a custom --cflags option. Also force rpath to avoid
+# a warning at configure time.
 HOST_PSEUDO_CONF_OPTS = \
+       --cflags="$(HOSTCFLAGS)" \
+       --with-rpath=$(HOST_DIR)/usr/lib \
+       --bits=$(if $(filter %64,$(HOSTARCH)),64,32) \
        --libdir=$(HOST_DIR)/usr/lib \
        --with-sqlite=$(HOST_DIR)/usr
 
-define HOST_PSEUDO_FAKEROOT_SYMLINK
-       ln -sf pseudo $(HOST_DIR)/usr/bin/fakeroot
-endef
-HOST_PSEUDO_POST_INSTALL_HOOKS += HOST_PSEUDO_FAKEROOT_SYMLINK
-
 $(eval $(host-autotools-package))
index da6a10684bb9df1311a5aab25d0b0e69b86b2357..d53b13534c30d7b77330abd2ee1ae3bfa0cbe29a 100644 (file)
@@ -24,6 +24,12 @@ else
 PTPD2_CONF_OPTS += --disable-snmp
 endif
 
+# GCC bug with Os/O1/O2/O3
+# internal compiler error: in gen_add2_insn, at optabs.c:4454
+ifeq ($(BR2_bfin),y)
+PTPD2_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O0"
+endif
+
 define PTPD2_INSTALL_INIT_SYSV
        $(INSTALL) -m 755 -D package/ptpd2/S65ptpd2 \
                $(TARGET_DIR)/etc/init.d/S65ptpd2
index cc6537683740a30e0a94cef919ac9ec583590b73..cfd5a0af12ffb8d62bf308a950cf35056e349c98 100644 (file)
@@ -140,6 +140,13 @@ PYTHON_CONF_ENV += \
        ac_cv_prog_HAS_HG=/bin/false \
        ac_cv_prog_SVNVERSION=/bin/false
 
+# GCC is always compliant with IEEE754
+ifeq ($(BR2_ENDIAN),"LITTLE")
+PYTHON_CONF_ENV += ac_cv_little_endian_double=yes
+else
+PYTHON_CONF_ENV += ac_cv_big_endian_double=yes
+endif
+
 PYTHON_CONF_OPTS += \
        --without-cxx-main      \
        --without-doc-strings   \
diff --git a/package/python3/0031-Add-an-option-to-disable-openssl.patch b/package/python3/0031-Add-an-option-to-disable-openssl.patch
new file mode 100644 (file)
index 0000000..d437520
--- /dev/null
@@ -0,0 +1,23 @@
+From: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
+Subject: [PATCH] Add an option to disable openssl support.
+
+Signed-off-by: Nicolas Cavallari <nicolas.cavallari@green-communications.fr>
+---
+ configure.ac | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -3027,6 +3027,12 @@
+            DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} unicodedata"
+         fi])
++AC_ARG_ENABLE(openssl,
++      AS_HELP_STRING([--disable-openssl], [disable openssl support]),
++      [ if test "$enableval" = "no"; then
++           DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ssl _ssl _hashlib"
++        fi])
++
+ AC_SUBST(TK)
+ AC_ARG_ENABLE(tk,
+       AS_HELP_STRING([--disable-tk], [disable tk]),
index b3f31c0aa0d4de5dfa3b7eb02be8e4e9f18f5919..8bfae79f58e1d2ffea84dfa9dc8b95a48ce52641 100644 (file)
@@ -36,7 +36,8 @@ HOST_PYTHON3_CONF_OPTS +=     \
        --enable-unicodedata    \
        --disable-test-modules  \
        --disable-idle3         \
-       --disable-ossaudiodev
+       --disable-ossaudiodev   \
+       --disable-openssl
 
 # Make sure that LD_LIBRARY_PATH overrides -rpath.
 # This is needed because libpython may be installed at the same time that
@@ -126,6 +127,13 @@ PYTHON3_CONF_ENV += \
        ac_cv_working_tzset=yes \
        ac_cv_prog_HAS_HG=/bin/false
 
+# GCC is always compliant with IEEE754
+ifeq ($(BR2_ENDIAN),"LITTLE")
+PYTHON3_CONF_ENV += ac_cv_little_endian_double=yes
+else
+PYTHON3_CONF_ENV += ac_cv_big_endian_double=yes
+endif
+
 # uClibc is known to have a broken wcsftime() implementation, so tell
 # Python 3 to fall back to strftime() instead.
 ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
index b9c1ca181657a453e746715a09d33eeaefad7427..f4a75fc269ddf357417c16b2d01f8280c061548e 100644 (file)
@@ -70,11 +70,16 @@ comment "systems emulation needs a toolchain w/ dynamic library"
 
 config BR2_PACKAGE_QEMU_LINUX_USER
        bool "Enable all Linux user-land emulation"
+       # Incompatible "struct sigevent" definition on musl
+       depends on !BR2_TOOLCHAIN_USES_MUSL
        help
          Say 'y' to build all Linux user-land emulators that QEMU supports.
 
 # Note: bsd-user can not be build on Linux
 
+comment "Linux user-land emulation needs a glibc or uClibc toolchain"
+       depends on BR2_TOOLCHAIN_USES_MUSL
+
 endif # BR2_PACKAGE_QEMU_CUSTOM_TARGETS == ""
 
 config BR2_PACKAGE_QEMU_HAS_EMULS
diff --git a/package/qextserialport/0002-Create-a-main-include-file-QExtSerialPort.patch b/package/qextserialport/0002-Create-a-main-include-file-QExtSerialPort.patch
new file mode 100644 (file)
index 0000000..e1d99f0
--- /dev/null
@@ -0,0 +1,40 @@
+From 62fbe9c3539945df6204501b7e3ae0d51db075a3 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Thu, 24 Nov 2016 22:30:40 +0100
+Subject: [PATCH] Create a main include file QExtSerialPort
+
+This main include file will be installed in
+<QtExtSerialPort/QExtSerialPort> so that Qt applications can use this
+library by including header files in a Qt-like style.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+[Arnout: add it to qextserialport.pri so it is installed]
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ src/QExtSerialPort     | 2 ++
+ src/qextserialport.pri | 3 ++-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+ create mode 100644 src/QExtSerialPort
+
+diff --git a/src/QExtSerialPort b/src/QExtSerialPort
+new file mode 100644
+index 0000000..a48aeea
+--- /dev/null
++++ b/src/QExtSerialPort
+@@ -0,0 +1,2 @@
++#include "qextserialport.h"
++#include "qextserialenumerator.h"
+diff --git a/src/qextserialport.pri b/src/qextserialport.pri
+index 461d56f..f8a678d 100644
+--- a/src/qextserialport.pri
++++ b/src/qextserialport.pri
+@@ -3,7 +3,8 @@
\r
+ PUBLIC_HEADERS         += $$PWD/qextserialport.h \\r
+                           $$PWD/qextserialenumerator.h \\r
+-                          $$PWD/qextserialport_global.h\r
++                          $$PWD/qextserialport_global.h \\r
++                        $$PWD/QExtSerialPort\r
\r
+ HEADERS                += $$PUBLIC_HEADERS \\r
+                           $$PWD/qextserialport_p.h \\r
diff --git a/package/qextserialport/0002-main-include.patch b/package/qextserialport/0002-main-include.patch
deleted file mode 100644 (file)
index 858f335..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Create a main include file QExtSerialPort
-
-This main include file will be installed in
-<QExtSerialPort/QExtSerialPort> so that Qt applications can use this
-library by including header files in a Qt-like style.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: qextserialport-ef4af2a2ee3f/src/QExtSerialPort
-===================================================================
---- /dev/null
-+++ qextserialport-ef4af2a2ee3f/src/QExtSerialPort
-@@ -0,0 +1,2 @@
-+#include "qextserialport.h"
-+#include "qextserialenumerator.h"
diff --git a/package/qextserialport/0003-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch b/package/qextserialport/0003-Tell-qmake-to-add-a-pkgconfig-file-to-ease-usage-wit.patch
new file mode 100644 (file)
index 0000000..09e26a9
--- /dev/null
@@ -0,0 +1,28 @@
+From 14d4d3e7b5c748118acffddd397fb67b37fd5054 Mon Sep 17 00:00:00 2001
+From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
+Date: Thu, 24 Nov 2016 22:44:02 +0100
+Subject: [PATCH] Tell qmake to add a pkgconfig file to ease usage with
+ applications
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ qextserialport.pro | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/qextserialport.pro b/qextserialport.pro
+index 8d2c03a..2fcb39c 100644
+--- a/qextserialport.pro
++++ b/qextserialport.pro
+@@ -42,7 +42,8 @@ TEMPLATE=lib
+ include(src/qextserialport.pri)
+ #create_prl is needed, otherwise, MinGW can't found libqextserialport1.a
+-CONFIG += create_prl
++CONFIG += create_prl create_pc
++QMAKE_PKGCONFIG_DESTDIR = pkgconfig
+ #mac framework is designed for shared library
+ macx:qesp_mac_framework:qesp_static: CONFIG -= qesp_static
+-- 
+2.10.2
+
diff --git a/package/qextserialport/0003-pkgconfig.patch b/package/qextserialport/0003-pkgconfig.patch
deleted file mode 100644 (file)
index d67f3fc..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Add a pkgconfig file to ease usage with applications
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: qextserialport-ef4af2a2ee3f/qextserialport.pc
-===================================================================
---- /dev/null
-+++ qextserialport-ef4af2a2ee3f/qextserialport.pc
-@@ -0,0 +1,10 @@
-+prefix=/usr
-+exec_prefix=${prefix}
-+libdir=${prefix}/lib
-+includedir=${prefix}/include/QExtSerialPort
-+
-+Name: QtExtSerialPort
-+Description: QtExtSerialPort library
-+Version: 1.2.0
-+Libs: -L${libdir} -lqextserialport
-+Cflags: -I${includedir}
index 39e04075b73385c0686e88af55cd3116b99b7246..11009467ebafe7b2631086b09dd40df8571bf50e 100644 (file)
@@ -10,32 +10,36 @@ QEXTSERIALPORT_LICENSE = MIT
 QEXTSERIALPORT_LICENSE_FILES = LICENSE.md
 QEXTSERIALPORT_INSTALL_STAGING = YES
 
+ifeq ($(BR2_STATIC_LIBS),y)
+QEXTSERIALPORT_CONF_OPTS += CONFIG+=qesp_static
+endif
+
 ifeq ($(BR2_PACKAGE_QT),y)
 QEXTSERIALPORT_DEPENDENCIES += qt
-define QEXTSERIALPORT_CONFIGURE_CMDS
-       (cd $(@D); $(TARGET_MAKE_ENV) $(QT_QMAKE))
-endef
+QEXTSERIALPORT_QMAKE = $(QT_QMAKE)
 else ifeq ($(BR2_PACKAGE_QT5),y)
 QEXTSERIALPORT_DEPENDENCIES += qt5base
+QEXTSERIALPORT_QMAKE = $(QT5_QMAKE)
+endif
+
 define QEXTSERIALPORT_CONFIGURE_CMDS
-       (cd $(@D); $(TARGET_MAKE_ENV) $(QT5_QMAKE))
+       cd $(@D); $(TARGET_MAKE_ENV) $(QEXTSERIALPORT_QMAKE) $(QEXTSERIALPORT_CONF_OPTS)
 endef
-endif
 
 define QEXTSERIALPORT_BUILD_CMDS
        $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
 endef
 
 define QEXTSERIALPORT_INSTALL_STAGING_CMDS
-       mkdir -p $(STAGING_DIR)/usr/include/QExtSerialPort
-       cp $(@D)/src/*.h $(STAGING_DIR)/usr/include/QExtSerialPort/
-       cp $(@D)/src/QExtSerialPort $(STAGING_DIR)/usr/include/QExtSerialPort/
-       cp -a $(@D)/*.so* $(STAGING_DIR)/usr/lib/
-       cp $(@D)/qextserialport.pc $(STAGING_DIR)/usr/lib/pkgconfig/
+       $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install
 endef
 
+ifeq ($(BR2_STATIC_LIBS),y)
+QEXTSERIALPORT_INSTALL_STAGING = NO
+else
 define QEXTSERIALPORT_INSTALL_TARGET_CMDS
        cp -a $(@D)/*.so.* $(TARGET_DIR)/usr/lib
 endef
+endif
 
 $(eval $(generic-package))
diff --git a/package/qt5/qt5base/0007-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch b/package/qt5/qt5base/0007-eglfs-fix-eglfs_mali-compile-for-odroid-mali.patch
new file mode 100644 (file)
index 0000000..cbafb39
--- /dev/null
@@ -0,0 +1,53 @@
+From b6c602e4264021f98ec2c72316e2a2000bf35e82 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Mon, 14 Nov 2016 23:42:25 +0100
+Subject: [PATCH] eglfs: fix eglfs_mali compile for odroid-mali
+
+Avoid duplicated struct fbdev_window definition (introduced by [1]) by
+renaming struct fbdev_window to shadow_fbdev_window.
+
+Fixes the following buildroot compile failure ([2]):
+
+qeglfsmaliintegration.cpp:45:8: error: redefinition of 'struct fbdev_window'
+ struct fbdev_window {
+        ^
+In file included from /accts/mlweber1/rc-buildroot-test/scripts/instance-0/output/host/usr/aarch64-buildroot-linux-gnu/sysroot/usr/include/EGL/eglplatform.h:28:0,
+                 from /accts/mlweber1/rc-buildroot-test/scripts/instance-0/output/host/usr/aarch64-buildroot-linux-gnu/sysroot/usr/include/EGL/egl.h:36,
+                 from ../../../eglfs/qeglfsglobal.h:45,
+                 from ../../../eglfs/qeglfsdeviceintegration.h:48,
+                 from qeglfsmaliintegration.h:37,
+                 from qeglfsmaliintegration.cpp:34:
+
+[1] https://code.qt.io/cgit/qt/qtbase.git/commit/?h=dev&id=58bed4cda98e8e25db8adc61c7db73b6853077dc
+[2] http://autobuild.buildroot.net/results/48c/48c458c035162169e8ca7c34ae65e9064822f25a
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ .../eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp      | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp
+index 43decdf..aeba83f 100644
+--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp
++++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_mali/qeglfsmaliintegration.cpp
+@@ -42,7 +42,7 @@
+ QT_BEGIN_NAMESPACE
+-struct fbdev_window {
++struct shadow_fbdev_window {
+     unsigned short width;
+     unsigned short height;
+ };
+@@ -85,7 +85,7 @@ EGLNativeWindowType QEglFSMaliIntegration::createNativeWindow(QPlatformWindow *w
+     Q_UNUSED(window);
+     Q_UNUSED(format);
+-    fbdev_window *fbwin = reinterpret_cast<fbdev_window *>(malloc(sizeof(fbdev_window)));
++    shadow_fbdev_window *fbwin = reinterpret_cast<shadow_fbdev_window *>(malloc(sizeof(shadow_fbdev_window)));
+     if (NULL == fbwin)
+         return 0;
+-- 
+2.8.1
+
index 56b8cad93c6233f73a8af18a4d15d9d5f36365d7..4eacaf047a8d38bfa4fdf11d92fd71b48ce44ab5 100644 (file)
@@ -25,9 +25,9 @@ config BR2_PACKAGE_QUAGGA_TCP_ZEBRA
          on different hosts.
 
 config BR2_PACKAGE_QUAGGA_BGPD
-       bool "BPGv4+ protocol"
+       bool "BGPv4+ protocol"
        help
-         Build bpgd daemon.
+         Build bgpd daemon.
 
 config BR2_PACKAGE_QUAGGA_BGP_ANNOUNCE
        bool "BGP route announcement"
diff --git a/package/quota/0003-remove-non-posix-types.patch b/package/quota/0003-remove-non-posix-types.patch
new file mode 100644 (file)
index 0000000..869c85f
--- /dev/null
@@ -0,0 +1,200 @@
+Use proper C99 integer types
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+[Thomas: borrowed from OpenEmbedded.]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: quota-tools/bylabel.c
+===================================================================
+--- quota-tools.orig/bylabel.c
++++ quota-tools/bylabel.c
+@@ -20,6 +20,7 @@
+ #include <ctype.h>
+ #include <fcntl.h>
+ #include <unistd.h>
++#include <stdint.h>
+ #include "bylabel.h"
+ #include "common.h"
+@@ -37,32 +38,32 @@ static struct uuidCache_s {
+ #define EXT2_SUPER_MAGIC      0xEF53
+ struct ext2_super_block {
+-      u_char s_dummy1[56];
+-      u_char s_magic[2];
+-      u_char s_dummy2[46];
+-      u_char s_uuid[16];
+-      u_char s_volume_name[16];
++      uint8_t s_dummy1[56];
++      uint8_t s_magic[2];
++      uint8_t s_dummy2[46];
++      uint8_t s_uuid[16];
++      uint8_t s_volume_name[16];
+ };
+-#define ext2magic(s)  ((uint) s.s_magic[0] + (((uint) s.s_magic[1]) << 8))
++#define ext2magic(s)  ((uint32_t) s.s_magic[0] + (((uint32_t) s.s_magic[1]) << 8))
+ #define XFS_SUPER_MAGIC "XFSB"
+ #define XFS_SUPER_MAGIC2 "BSFX"
+ struct xfs_super_block {
+-      u_char s_magic[4];
+-      u_char s_dummy[28];
+-      u_char s_uuid[16];
+-      u_char s_dummy2[60];
+-      u_char s_fsname[12];
++      uint8_t s_magic[4];
++      uint8_t s_dummy[28];
++      uint8_t s_uuid[16];
++      uint8_t s_dummy2[60];
++      uint8_t s_fsname[12];
+ };
+ #define REISER_SUPER_MAGIC    "ReIsEr2Fs"
+ struct reiserfs_super_block {
+-      u_char s_dummy1[52];
+-      u_char s_magic[10];
+-      u_char s_dummy2[22];
+-      u_char s_uuid[16];
+-      u_char s_volume_name[16];
++      uint8_t s_dummy1[52];
++      uint8_t s_magic[10];
++      uint8_t s_dummy2[22];
++      uint8_t s_uuid[16];
++      uint8_t s_volume_name[16];
+ };
+ static inline unsigned short swapped(unsigned short a)
+@@ -222,7 +223,7 @@ static char *get_spec_by_x(int n, const
+       return NULL;
+ }
+-static u_char fromhex(char c)
++static uint8_t fromhex(char c)
+ {
+       if (isdigit(c))
+               return (c - '0');
+@@ -234,7 +235,7 @@ static u_char fromhex(char c)
+ static char *get_spec_by_uuid(const char *s)
+ {
+-      u_char uuid[16];
++      uint8_t uuid[16];
+       int i;
+       if (strlen(s) != 36 || s[8] != '-' || s[13] != '-' || s[18] != '-' || s[23] != '-')
+Index: quota-tools/quot.c
+===================================================================
+--- quota-tools.orig/quot.c
++++ quota-tools/quot.c
+@@ -47,6 +47,7 @@
+ #include <utmp.h>
+ #include <pwd.h>
+ #include <grp.h>
++#include <stdint.h>
+ #include "pot.h"
+ #include "quot.h"
+@@ -56,8 +57,8 @@
+ #include "quotasys.h"
+ #define       TSIZE   500
+-static __uint64_t sizes[TSIZE];
+-static __uint64_t overflow;
++static uint64_t sizes[TSIZE];
++static uint64_t overflow;
+ static int aflag;
+ static int cflag;
+@@ -72,7 +73,7 @@ static time_t now;
+ char *progname;
+ static void mounttable(void);
+-static char *idname(__uint32_t, int);
++static char *idname(uint32_t, int);
+ static void report(const char *, const char *, int);
+ static void creport(const char *, const char *);
+@@ -173,7 +174,7 @@ static int qcmp(du_t * p1, du_t * p2)
+ static void creport(const char *file, const char *fsdir)
+ {
+       int i;
+-      __uint64_t t = 0;
++      uint64_t t = 0;
+       printf(_("%s (%s):\n"), file, fsdir);
+       for (i = 0; i < TSIZE - 1; i++)
+@@ -219,7 +220,7 @@ static void report(const char *file, con
+       }
+ }
+-static idcache_t *getnextent(int type, __uint32_t id, int byid)
++static idcache_t *getnextent(int type, uint32_t id, int byid)
+ {
+       struct passwd *pw;
+       struct group  *gr;
+@@ -240,7 +241,7 @@ static idcache_t *getnextent(int type, _
+       return &idc;
+ }
+-static char *idname(__uint32_t id, int type)
++static char *idname(uint32_t id, int type)
+ {
+       idcache_t *ncp, *idp;
+       static idcache_t nc[2][NID];
+@@ -286,8 +287,8 @@ static void acctXFS(xfs_bstat_t *p)
+ {
+       register du_t *dp;
+       du_t **hp;
+-      __uint64_t size;
+-      __uint32_t i, id;
++      uint64_t size;
++      uint32_t i, id;
+       if ((p->bs_mode & S_IFMT) == 0)
+               return;
+Index: quota-tools/quot.h
+===================================================================
+--- quota-tools.orig/quot.h
++++ quota-tools/quot.h
+@@ -35,18 +35,18 @@
+ #define       SEC24HR (60*60*24)      /* seconds per day */
+ typedef struct {
+-      __uint32_t id;
++      uint32_t id;
+       char name[UT_NAMESIZE + 1];
+ } idcache_t;
+ typedef struct du {
+       struct du *next;
+-      __uint64_t blocks;
+-      __uint64_t blocks30;
+-      __uint64_t blocks60;
+-      __uint64_t blocks90;
+-      __uint64_t nfiles;
+-      __uint32_t id;
++      uint64_t blocks;
++      uint64_t blocks30;
++      uint64_t blocks60;
++      uint64_t blocks90;
++      uint64_t nfiles;
++      uint32_t id;
+ } du_t;
+ #define       NDU     60000
+Index: quota-tools/rquota_server.c
+===================================================================
+--- quota-tools.orig/rquota_server.c
++++ quota-tools/rquota_server.c
+@@ -60,7 +60,7 @@ extern char nfs_pseudoroot[PATH_MAX];
+  */
+ extern struct authunix_parms *unix_cred;
+-int in_group(gid_t * gids, u_int len, gid_t gid)
++int in_group(gid_t * gids, uint32_t len, gid_t gid)
+ {
+       gid_t *gidsp = gids + len;
diff --git a/package/quota/0004-import-sys-cdefs.patch b/package/quota/0004-import-sys-cdefs.patch
new file mode 100644 (file)
index 0000000..9acd1fe
--- /dev/null
@@ -0,0 +1,18 @@
+Add missing <sys/cdefs.h> include
+
+quota.h uses the __P definition, so it must include <sys/cdefs.h>.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/quota.h
+===================================================================
+--- a/quota.h
++++ b/quota.h
+@@ -2,6 +2,7 @@
+ #define GUARD_QUOTA_H
+ #include <sys/types.h>
++#include <sys/cdefs.h>
+ typedef u_int32_t qid_t;      /* Type in which we store ids in memory */
+ typedef int64_t qsize_t;      /* Type in which we store size limitations */
diff --git a/package/quota/0005-include-fcntl.patch b/package/quota/0005-include-fcntl.patch
new file mode 100644 (file)
index 0000000..fe7ea98
--- /dev/null
@@ -0,0 +1,20 @@
+Include <fcntl.h> to get loff_t definition
+
+Fixes the following build issue with musl:
+
+dqblk_v2.h:32:2: error: unknown type name â€˜loff_t’
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/dqblk_v2.h
+===================================================================
+--- a/dqblk_v2.h
++++ b/dqblk_v2.h
+@@ -8,6 +8,7 @@
+ #define GUARD_DQBLK_V2_H
+ #include <sys/types.h>
++#include <fcntl.h>
+ #include "quota_tree.h"
+ #define Q_V2_GETQUOTA 0x0D00  /* Get limits and usage */
index dabbda27754e095e5fbfdb03c4fb29ddadbb8e78..a678637b6c8569f536cd2553a53f72e1f4964a41 100644 (file)
@@ -30,6 +30,7 @@ config BR2_PACKAGE_QWT_OPENGL
        depends on (BR2_PACKAGE_HAS_LIBGLES && BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_QT) || \
                (BR2_PACKAGE_QT5_GL_AVAILABLE && BR2_PACKAGE_QT5)
        select BR2_PACKAGE_QT_OPENGL if BR2_PACKAGE_QT
+       select BR2_PACKAGE_QT5BASE_OPENGL if BR2_PACKAGE_QT5
        select BR2_PACKAGE_QT5BASE_OPENGL_LIB if BR2_PACKAGE_QT5
 
 endif
diff --git a/package/sane-backends/0003-sane_backend-add-missing-config.h.patch b/package/sane-backends/0003-sane_backend-add-missing-config.h.patch
new file mode 100644 (file)
index 0000000..8e56b02
--- /dev/null
@@ -0,0 +1,49 @@
+From 13aadf79659dd238b618c8be7c1de44960bd5d50 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Fri, 11 Nov 2016 22:20:03 +0100
+Subject: [PATCH] sane_backend: add missing config.h
+
+We should include config.h from sanei_backend.h in order to use the
+correct if/else HAVE_FOO.
+
+For some reason with Glibc or uClibc there is no problem but with musl
+we have the following weird issue:
+
+In file included from epsonds.h:41:0,
+                 from epsonds-jpeg.c:18:
+../include/sane/sanei_backend.h:99:33: error: expected ';', identifier or '(' before 'int'
+ # define sigset_t               int
+                                 ^
+../include/sane/sanei_backend.h:99:33: warning: useless type name in empty declaration
+
+That's because HAVE_SIGPROCMASK is not defined although it's correctly
+detected by the configure script.
+
+$ grep config.log
+config.log:#define HAVE_SIGPROCMASK 1
+
+So, include config.h to avoid to redefine sigset_t.
+
+Fixes:
+http://autobuild.buildroot.net/results/9f1/9f1f1cb727b5c5407e69172280a3dee880e55cdf
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ include/sane/sanei_backend.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/sane/sanei_backend.h b/include/sane/sanei_backend.h
+index 1b5afe2..2a96532 100644
+--- a/include/sane/sanei_backend.h
++++ b/include/sane/sanei_backend.h
+@@ -8,6 +8,7 @@
+  * @sa sanei.h sanei_thread.h
+  */
++#include "../include/sane/config.h"
+ /*
+  * Compiler related options
+-- 
+2.5.5
+
index 8156e858dce989cbb091d2574862f827c0e6d2b6..3e5a27ffe0f33af7a6f0c7fb2225862f6b7ed63e 100644 (file)
@@ -1,6 +1,7 @@
 config BR2_PACKAGE_SANE_BACKENDS
        bool "sane-backends"
        depends on BR2_USE_MMU # fork()
+       depends on !BR2_STATIC_LIBS
        help
          SANE - Scanner Access Now Easy
 
@@ -9,3 +10,7 @@ config BR2_PACKAGE_SANE_BACKENDS
          Backends are included automatically based on the libraries that have
          been selected: libusb, jpeg, tiff, avahi (with dbus and libglib2),
          and netsnmp.
+
+comment "sane-backends needs a toolchain w/ dynamic library"
+       depends on BR2_USE_MMU
+       depends on BR2_STATIC_LIBS
index 8090c067bb6e301184e6426e25ae984d670bdddb..b33512edcbbfcbd43d3bb3ef352269f63ade0c9d 100644 (file)
@@ -9,6 +9,12 @@ SER2NET_SITE = http://downloads.sourceforge.net/project/ser2net/ser2net
 SER2NET_LICENSE = GPLv2+
 SER2NET_LICENSE_FILES = COPYING
 
+ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
+SER2NET_CONF_OPTS += --with-pthreads
+else
+SER2NET_CONF_OPTS += --without-pthreads
+endif
+
 define SER2NET_INSTALL_INIT_SYSV
        $(INSTALL) -D -m 755 package/ser2net/S50ser2net \
                $(TARGET_DIR)/etc/init.d/S50ser2net
index 385c0029ccb1c989b336d4d6fe23cd311ad19f70..59418af855cf383b7590b2b1123bbb490eda85b1 100644 (file)
@@ -10,6 +10,14 @@ STRACE_SITE = http://downloads.sourceforge.net/project/strace/strace/$(STRACE_VE
 STRACE_LICENSE = BSD-3c
 STRACE_LICENSE_FILES = COPYING
 
+# strace bundle some kernel headers to build libmpers, this mixes userspace
+# headers and kernel headers which break the build with musl.
+# The stddef.h from gcc is used instead of the one from musl.
+ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
+STRACE_CONF_OPTS += st_cv_m32_mpers=no \
+       st_cv_mx32_mpers=no
+endif
+
 define STRACE_REMOVE_STRACE_GRAPH
        rm -f $(TARGET_DIR)/usr/bin/strace-graph
 endef
diff --git a/package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch b/package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch
new file mode 100644 (file)
index 0000000..f2365ea
--- /dev/null
@@ -0,0 +1,32 @@
+From 88fee5c6eb2271d3de6b9878cd29a0494999aa18 Mon Sep 17 00:00:00 2001
+From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
+Date: Sun, 20 Nov 2016 23:46:45 +0100
+Subject: [PATCH] Use correct variables for GnuTLS detection
+
+At least with recent CMake, it seems the variables created by
+find_package (GnuTLS) are called PC_GNUTLS_INCLUDE_DIRS and
+PC_GNUTLS_LIBRARIES.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d8125d9..ccf827b 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -110,8 +110,8 @@ message ("-- Looking for GnuTLS")
+ find_package (GnuTLS REQUIRED)
+ if (GNUTLS_FOUND)
+   set (HAVE_LIBGNUTLS true)
+-  set (TASKD_INCLUDE_DIRS ${TASKD_INCLUDE_DIRS} ${GNUTLS_INCLUDE_DIR})
+-  set (TASKD_LIBRARIES    ${TASKD_LIBRARIES}    ${GNUTLS_LIBRARIES})
++  set (TASKD_INCLUDE_DIRS ${TASKD_INCLUDE_DIRS} ${PC_GNUTLS_INCLUDE_DIRS})
++  set (TASKD_LIBRARIES    ${TASKD_LIBRARIES}    ${PC_GNUTLS_LIBRARIES})
+ endif (GNUTLS_FOUND)
+ message ("-- Looking for libuuid")
+-- 
+2.10.2
+
diff --git a/package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch b/package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch
new file mode 100644 (file)
index 0000000..34139fe
--- /dev/null
@@ -0,0 +1,40 @@
+CMakeLists.txt: use pkg-config to detect uuid when possible
+
+In order to take into account the libraries used by libuuid when
+building statically, using pkg-config is recommended. This patch
+therefore improves the CMakeLists.txt to use pkg-config to detect
+libuuid when pkg-config is available.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/CMakeLists.txt
+===================================================================
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,6 +6,7 @@
+ include (CheckFunctionExists)
+ include (CheckStructHasMember)
++include (FindPkgConfig)
+ set (HAVE_CMAKE true)
+@@ -119,8 +120,16 @@
+   # Apple and FreeBSD include the uuid functions in their libc, rather than libuuid
+   check_function_exists (uuid_unparse_lower HAVE_UUID_UNPARSE_LOWER)
+ else (DARWIN OR FREEBSD)
+-  find_path    (UUID_INCLUDE_DIR   uuid/uuid.h)
+-  find_library (UUID_LIBRARY NAMES uuid)
++  if(PKG_CONFIG_FOUND)
++    pkg_check_modules(PC_UUID uuid)
++    if(PC_UUID_FOUND)
++      set (UUID_INCLUDE_DIR ${PC_UUID_INCLUDE_DIRS})
++      set (UUID_LIBRARY ${PC_UUID_LIBRARIES})
++    endif(PC_UUID_FOUND)
++  else(PKG_CONFIG_FOUND)
++    find_path    (UUID_INCLUDE_DIR   uuid/uuid.h)
++    find_library (UUID_LIBRARY NAMES uuid)
++  endif(PKG_CONFIG_FOUND)
+   if (UUID_INCLUDE_DIR AND UUID_LIBRARY)
+     set (TASKD_INCLUDE_DIRS ${TASKD_INCLUDE_DIRS} ${UUID_INCLUDE_DIR})
+     set (TASKD_LIBRARIES    ${TASKD_LIBRARIES}    ${UUID_LIBRARY})
index 34a260ea0e6bc05df95e4768e80bdc3db3e3d699..b19be68912e74c0cf591b541705da11fd8d76a10 100644 (file)
@@ -8,6 +8,6 @@ TASKD_VERSION = 1.1.0
 TASKD_SITE = http://taskwarrior.org/download
 TASKD_LICENSE = MIT
 TASKD_LICENSE_FILES = COPYING
-TASKD_DEPENDENCIES = gnutls util-linux
+TASKD_DEPENDENCIES = gnutls util-linux host-pkgconf
 
 $(eval $(cmake-package))
index 6e5c176588e2f5c0fccdc70790bf53a1bd490c91..092a7f3fcabf35e55a03d3cdfd10ad799a3d0d14 100644 (file)
@@ -3,7 +3,7 @@ menuconfig BR2_PACKAGE_TIFF
        help
          Library for handling TIFF (Tag Image File Format) images.
 
-         http://www.remotesensing.org/libtiff/
+         http://simplesystems.org/libtiff/
 
 if BR2_PACKAGE_TIFF
 
index 7ff746f6c9233bc3c71f379bb9deee48f98b806d..4439a35f398d4208d11f6abba0c9c0daaba41c7c 100644 (file)
@@ -1,2 +1,2 @@
 # Locally computed
-sha256 4d57a50907b510e3049a4bba0d7888930fdfc16ce49f1bf693e5b6247370d68c        tiff-4.0.6.tar.gz
+sha256 9f43a2cfb9589e5cecaa66e16bf87f814c945f22df7ba600d63aac4632c4f019  tiff-4.0.7.tar.gz
index a53d7bb3b8f4c5f2eea3723277e33fa0da9e6b65..ffb1a425cbea925a656abde5d22f6eff53726b2b 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-TIFF_VERSION = 4.0.6
+TIFF_VERSION = 4.0.7
 TIFF_SITE = http://download.osgeo.org/libtiff
 TIFF_LICENSE = tiff license
 TIFF_LICENSE_FILES = COPYRIGHT
index 4cd01d5d44036267a091c325f15c4852703f281f..87753d6f4e387f1089d124fb0294c73fccc8687d 100644 (file)
@@ -16,6 +16,7 @@ endef
 define TINYALSA_INSTALL_STAGING_CMDS
        $(TARGET_MAKE_ENV) $(MAKE) \
                -C $(@D) \
+               PREFIX="/usr" \
                CROSS_COMPILE="$(TARGET_CROSS)" \
                DESTDIR="$(STAGING_DIR)" install
 endef
@@ -23,6 +24,7 @@ endef
 define TINYALSA_INSTALL_TARGET_CMDS
        $(TARGET_MAKE_ENV) $(MAKE) \
                -C $(@D) \
+               PREFIX="/usr" \
                CROSS_COMPILE="$(TARGET_CROSS)" \
                DESTDIR="$(TARGET_DIR)" install
 endef
diff --git a/package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch b/package/tinymembench/0001-arm-fix-build-on-Thumb-only-architectures.patch
new file mode 100644 (file)
index 0000000..88559ec
--- /dev/null
@@ -0,0 +1,47 @@
+From 034a3552e9700c6d424bd706db106f5bce1f5a5e Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Fri, 11 Nov 2016 21:49:39 +0100
+Subject: [PATCH] arm: fix build on Thumb-only architectures
+
+Building tinymembench for ARM Cortex-M currently fails, because the
+arm-neon.S file contains ARM code that doesn't build on Thumb-only
+architectures. To account for this and fix the build for Cortex-M,
+this patch adjusts the compile time condition to also verify that the
+architecture supports the ARM instruction set, by testing the
+__ARM_ARCH_ISA_ARM compiler define.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ arm-neon.S | 2 +-
+ asm-opt.c  | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arm-neon.S b/arm-neon.S
+index 4db78ce..19c30ad 100644
+--- a/arm-neon.S
++++ b/arm-neon.S
+@@ -21,7 +21,7 @@
+  * DEALINGS IN THE SOFTWARE.
+  */
+-#ifdef __arm__
++#if defined(__arm__) && defined(__ARM_ARCH_ISA_ARM)
+ .text
+ .fpu neon
+diff --git a/asm-opt.c b/asm-opt.c
+index 9da4596..eba1183 100644
+--- a/asm-opt.c
++++ b/asm-opt.c
+@@ -202,7 +202,7 @@ bench_info *get_asm_framebuffer_benchmarks(void)
+         return empty;
+ }
+-#elif defined(__arm__)
++#elif defined(__arm__) && defined(__ARM_ARCH_ISA_ARM)
+ #include "arm-neon.h"
+-- 
+2.7.4
+
index 97b0ce36e4a3884a0500812939fb68507c1dc85b..2a791b6729f15065f6ac307bf5bff5be5ee31b75 100644 (file)
@@ -16,9 +16,17 @@ TREMOR_DEPENDENCIES = libogg
 
 # tremor has ARM assembly code that cannot be compiled in Thumb2 mode,
 # so we must force the traditional ARM mode.
+# However, some ARM architectures like ARNv7-M only supports Thumb
+# instructions, but the tremor build configuration enables ARM assembly
+# code unconditionally for all arm triplets by defining _ARM_ASSEM_.
+# We are overriding this by undefining this macro for the ARM
+# architectures not supporting ARM instructions.
 ifeq ($(BR2_arm),y)
-TREMOR_CONF_ENV = \
-       CFLAGS="$(TARGET_CFLAGS) -marm"
+ifeq ($(BR2_ARM_CPU_HAS_ARM),y)
+TREMOR_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -marm"
+else
+TREMOR_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) -U_ARM_ASSEM_"
+endif
 endif
 
 $(eval $(autotools-package))
index 3d9e0badc233315f6c5c4faaeec004e36a9f0252..4fc949909e14f50e8cb980c70798d036e48ef79f 100644 (file)
@@ -18,6 +18,10 @@ ifeq ($(BR2_PACKAGE_LIBICONV),y)
 TROUSERS_DEPENDENCIES += libiconv
 endif
 
+ifeq ($(BR2_arc770d)$(BR2_arc750d),y)
+TROUSERS_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -mno-compact-casesi"
+endif
+
 # The TrouSerS build system attempts to create the tss user and group
 # on the host system. Disable the user checking feature as a
 # workaround.
diff --git a/package/uclibc/0002-do-not-define-madvise-related-macros-for-noMMU-targe.patch b/package/uclibc/0002-do-not-define-madvise-related-macros-for-noMMU-targe.patch
new file mode 100644 (file)
index 0000000..31e763a
--- /dev/null
@@ -0,0 +1,66 @@
+From 2ca4e8dcbd35e5c6da41a195550d741ccb2f7978 Mon Sep 17 00:00:00 2001
+From: Waldemar Brodkorb <wbx@uclibc-ng.org>
+Date: Sat, 26 Nov 2016 19:47:41 +0100
+Subject: [PATCH] do not define madvise related macros for noMMU targets
+
+Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
+---
+ libc/sysdeps/linux/common/bits/mman-common.h | 41 +++++++++++++++-------------
+ 1 file changed, 22 insertions(+), 19 deletions(-)
+
+diff --git a/libc/sysdeps/linux/common/bits/mman-common.h b/libc/sysdeps/linux/common/bits/mman-common.h
+index 6cde5da..5b20da4 100644
+--- a/libc/sysdeps/linux/common/bits/mman-common.h
++++ b/libc/sysdeps/linux/common/bits/mman-common.h
+@@ -83,26 +83,29 @@
+ # define MREMAP_FIXED 2
+ #endif
++/* only define for MMU targets, no-MMU does not support madvise.  */
++#ifdef __ARCH_USE_MMU__
+ /* Advice to `madvise'.  */
+-#ifdef __USE_BSD
+-# define MADV_NORMAL    0     /* No further special treatment.  */
+-# define MADV_RANDOM    1     /* Expect random page references.  */
+-# define MADV_SEQUENTIAL  2   /* Expect sequential page references.  */
+-# define MADV_WILLNEED          3     /* Will need these pages.  */
+-# define MADV_DONTNEED          4     /* Don't need these pages.  */
+-# define MADV_REMOVE    9     /* Remove these pages and resources.  */
+-# define MADV_DONTFORK          10    /* Do not inherit across fork.  */
+-# define MADV_DOFORK    11    /* Do inherit across fork.  */
+-# define MADV_MERGEABLE         12    /* KSM may merge identical pages.  */
+-# define MADV_UNMERGEABLE 13  /* KSM may not merge identical pages.  */
+-# define MADV_HWPOISON          100   /* Poison a page for testing.  */
+-#endif
++# ifdef __USE_BSD
++#  define MADV_NORMAL   0     /* No further special treatment.  */
++#  define MADV_RANDOM   1     /* Expect random page references.  */
++#  define MADV_SEQUENTIAL 2   /* Expect sequential page references.  */
++#  define MADV_WILLNEED         3     /* Will need these pages.  */
++#  define MADV_DONTNEED         4     /* Don't need these pages.  */
++#  define MADV_REMOVE   9     /* Remove these pages and resources.  */
++#  define MADV_DONTFORK         10    /* Do not inherit across fork.  */
++#  define MADV_DOFORK   11    /* Do inherit across fork.  */
++#  define MADV_MERGEABLE  12  /* KSM may merge identical pages.  */
++#  define MADV_UNMERGEABLE 13 /* KSM may not merge identical pages.  */
++#  define MADV_HWPOISON         100   /* Poison a page for testing.  */
++# endif
+ /* The POSIX people had to invent similar names for the same things.  */
+-#ifdef __USE_XOPEN2K
+-# define POSIX_MADV_NORMAL    0 /* No further special treatment.  */
+-# define POSIX_MADV_RANDOM    1 /* Expect random page references.  */
+-# define POSIX_MADV_SEQUENTIAL        2 /* Expect sequential page references.  */
+-# define POSIX_MADV_WILLNEED  3 /* Will need these pages.  */
+-# define POSIX_MADV_DONTNEED  4 /* Don't need these pages.  */
++# ifdef __USE_XOPEN2K
++#  define POSIX_MADV_NORMAL   0 /* No further special treatment.  */
++#  define POSIX_MADV_RANDOM   1 /* Expect random page references.  */
++#  define POSIX_MADV_SEQUENTIAL       2 /* Expect sequential page references.  */
++#  define POSIX_MADV_WILLNEED 3 /* Will need these pages.  */
++#  define POSIX_MADV_DONTNEED 4 /* Don't need these pages.  */
++# endif
+ #endif
+-- 
+2.1.4
+
diff --git a/package/uclibc/0003-posix_madvise-not-available-for-noMMU.patch b/package/uclibc/0003-posix_madvise-not-available-for-noMMU.patch
new file mode 100644 (file)
index 0000000..008aac7
--- /dev/null
@@ -0,0 +1,30 @@
+From 9945c6d21797553e78cbef8034f6dd16b3824df5 Mon Sep 17 00:00:00 2001
+From: Waldemar Brodkorb <wbx@openadk.org>
+Date: Mon, 28 Nov 2016 07:31:00 +0100
+Subject: [PATCH] posix_madvise not available for noMMU
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+---
+ libc/sysdeps/linux/common/posix_madvise.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/libc/sysdeps/linux/common/posix_madvise.c b/libc/sysdeps/linux/common/posix_madvise.c
+index 2f95bcb..541dabe 100644
+--- a/libc/sysdeps/linux/common/posix_madvise.c
++++ b/libc/sysdeps/linux/common/posix_madvise.c
+@@ -4,6 +4,7 @@
+ #include <sys/mman.h>
+ #include <sys/syscall.h>
++#ifdef __ARCH_USE_MMU__
+ #if defined __NR_madvise && defined __USE_XOPEN2K && defined __UCLIBC_HAS_ADVANCED_REALTIME__
+ int posix_madvise(void *addr, size_t len, int advice)
+ {
+@@ -23,3 +24,4 @@ int posix_madvise(void *addr, size_t len, int advice)
+       return INTERNAL_SYSCALL_ERRNO (result, err);
+ }
+ #endif
++#endif
+-- 
+2.1.4
+
diff --git a/package/udisks/0002-Fix-systemd-service-file.patch b/package/udisks/0002-Fix-systemd-service-file.patch
new file mode 100644 (file)
index 0000000..ea347ae
--- /dev/null
@@ -0,0 +1,33 @@
+From bf8b4362cef24a6f747e4329305a4939c8f585d1 Mon Sep 17 00:00:00 2001
+From: David King <amigadave@amigadave.com>
+Date: Thu, 2 Jul 2015 13:49:22 +0100
+Subject: [PATCH] Fix systemd service file
+
+udisks-daemon is installed to $(libexecdir), not $(prefix)/lib/udisks.
+
+https://bugzilla.redhat.com/show_bug.cgi?id=1238664
+https://bugs.freedesktop.org/show_bug.cgi?id=91191
+
+[This patch has been backported from upstream:
+https://cgit.freedesktop.org/udisks/commit/?h=udisks1&id=bf8b4362cef24a6f747e4329305a4939c8f585d1]
+Signed-off-by: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
+---
+ data/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/data/Makefile.am b/data/Makefile.am
+index 411ea0f..08af5f4 100644
+--- a/data/Makefile.am
++++ b/data/Makefile.am
+@@ -31,7 +31,7 @@ systemdservicedir       = $(systemdsystemunitdir)
+ systemdservice_DATA     = $(systemdservice_in_files:.service.in=.service)
+ $(systemdservice_DATA): $(systemdservice_in_files) Makefile
+-      @sed -e "s|\@libexecdir\@|$(prefix)/lib/udisks|" $< > $@
++      @sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
+ endif
+ udevrulesdir = $(slashlibdir)/udev/rules.d
+-- 
+2.7.4
+
index eea79e5659e7441df001d39fe0d56f4a8e128015..4d3ede71b1f3ed77677547fb8f6a699b425be54d 100644 (file)
@@ -8,6 +8,8 @@ UDISKS_VERSION = 1.0.5
 UDISKS_SITE = http://hal.freedesktop.org/releases
 UDISKS_LICENSE = GPLv2+
 UDISKS_LICENSE_FILES = COPYING
+# For 0002-Fix-systemd-service-file.patch
+UDISKS_AUTORECONF = YES
 
 UDISKS_DEPENDENCIES =  \
        sg3_utils       \
index 09f711662b0fd8e6db0559ac665ac6db5f5e1479..087a3813afec0d6abaec236a3606724000255023 100644 (file)
@@ -9,7 +9,9 @@ VALGRIND_SITE = http://valgrind.org/downloads
 VALGRIND_SOURCE = valgrind-$(VALGRIND_VERSION).tar.bz2
 VALGRIND_LICENSE = GPLv2 GFDLv1.2
 VALGRIND_LICENSE_FILES = COPYING COPYING.DOCS
-VALGRIND_CONF_OPTS = --disable-ubsan
+VALGRIND_CONF_OPTS = \
+       --disable-ubsan \
+       --without-mpicc
 VALGRIND_INSTALL_STAGING = YES
 
 # patch 0004-Fixes-for-musl-libc.patch touching configure.ac
diff --git a/package/weston/0002-shared-platform-include-weston-egl-ext.h-only-if-ENA.patch b/package/weston/0002-shared-platform-include-weston-egl-ext.h-only-if-ENA.patch
new file mode 100644 (file)
index 0000000..baa3a4f
--- /dev/null
@@ -0,0 +1,38 @@
+From e338ced1e04bf4b97322d5eed2b5bdf5b052095a Mon Sep 17 00:00:00 2001
+From: Krzysztof Konopko <kris@youview.com>
+Date: Thu, 15 Sep 2016 13:01:49 +0200
+Subject: [PATCH] shared/platform: include weston-egl-ext.h only if ENABLE_EGL
+ is defined
+
+Including `weston-egl-ext.h` causes compilation failure for configurations
+with EGL disabled.
+
+Verified with `--disable-egl`, `--disable-x11-compositor`
+and `--disable-drm-compositor`.
+
+Signed-off-by: Krzysztof Konopko <kris@youview.com>
+Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
+[yann.morin.1998@free.fr: backported from upstream]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ shared/platform.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/shared/platform.h b/shared/platform.h
+index 1eb96fd..30db1a6 100644
+--- a/shared/platform.h
++++ b/shared/platform.h
+@@ -33,9 +33,9 @@
+ #include <wayland-egl.h>
+ #include <EGL/egl.h>
+ #include <EGL/eglext.h>
+-#endif
+ #include "weston-egl-ext.h"
++#endif
+ #ifdef  __cplusplus
+ extern "C" {
+-- 
+2.7.4
+
diff --git a/package/wget/0001-utils-rename-base64_-encode-decode.patch b/package/wget/0001-utils-rename-base64_-encode-decode.patch
new file mode 100644 (file)
index 0000000..f219afa
--- /dev/null
@@ -0,0 +1,134 @@
+From 9e68787576fec304da23af26dca963a4cdea7765 Mon Sep 17 00:00:00 2001
+From: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
+Date: Tue, 8 Nov 2016 23:42:53 +0530
+Subject: [PATCH] utils: rename base64_{encode,decode}
+
+When statically linking with gnutls, we get definition clash error for
+base64_encode which is also defined by gnutls.
+
+/home/rahul.bedarkar/buildroot/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libgnutls.a(base64.o): In function `base64_encode':
+base64.c:(.text+0x148): multiple definition of `base64_encode'
+utils.o:utils.c:(.text+0x4378): first defined here
+collect2: error: ld returned 1 exit status
+
+To prevent definition clash, rename base64_{encode,decode}
+
+Signed-off-by: Rahul Bedarkar <rahul.bedarkar@imgtec.com>
+---
+ src/http-ntlm.c | 6 +++---
+ src/http.c      | 4 ++--
+ src/utils.c     | 8 ++++----
+ src/utils.h     | 4 ++--
+ 4 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/src/http-ntlm.c b/src/http-ntlm.c
+index 56c40ae..87f5a37 100644
+--- a/src/http-ntlm.c
++++ b/src/http-ntlm.c
+@@ -122,7 +122,7 @@ ntlm_input (struct ntlmdata *ntlm, const char *header)
+       DEBUGP (("Received a type-2 NTLM message.\n"));
+-      size = base64_decode (header, buffer);
++      size = wget_base64_decode (header, buffer);
+       if (size < 0)
+         return false;           /* malformed base64 from server */
+@@ -411,7 +411,7 @@ ntlm_output (struct ntlmdata *ntlm, const char *user, const char *passwd,
+     size = 32 + hostlen + domlen;
+     base64 = (char *) alloca (BASE64_LENGTH (size) + 1);
+-    base64_encode (ntlmbuf, size, base64);
++    wget_base64_encode (ntlmbuf, size, base64);
+     output = concat_strings ("NTLM ", base64, (char *) 0);
+     break;
+@@ -584,7 +584,7 @@ ntlm_output (struct ntlmdata *ntlm, const char *user, const char *passwd,
+     /* convert the binary blob into base64 */
+     base64 = (char *) alloca (BASE64_LENGTH (size) + 1);
+-    base64_encode (ntlmbuf, size, base64);
++    wget_base64_encode (ntlmbuf, size, base64);
+     output = concat_strings ("NTLM ", base64, (char *) 0);
+diff --git a/src/http.c b/src/http.c
+index 7e60a07..368d30d 100644
+--- a/src/http.c
++++ b/src/http.c
+@@ -2818,7 +2818,7 @@ metalink_from_http (const struct response *resp, const struct http_stat *hs,
+           char *bin_hash = alloca (dig_hash_str_len * 3 / 4 + 1);
+           size_t hash_bin_len;
+-          hash_bin_len = base64_decode (dig_hash, bin_hash);
++          hash_bin_len = wget_base64_decode (dig_hash, bin_hash);
+           /* One slot for me, one for zero-termination.  */
+           mfile->checksums =
+@@ -4546,7 +4546,7 @@ basic_authentication_encode (const char *user, const char *passwd)
+   sprintf (t1, "%s:%s", user, passwd);
+   t2 = (char *)alloca (BASE64_LENGTH (len1) + 1);
+-  base64_encode (t1, len1, t2);
++  wget_base64_encode (t1, len1, t2);
+   return concat_strings ("Basic ", t2, (char *) 0);
+ }
+diff --git a/src/utils.c b/src/utils.c
+index b07da9f..355f0ce 100644
+--- a/src/utils.c
++++ b/src/utils.c
+@@ -2140,7 +2140,7 @@ xsleep (double seconds)
+    base64 data.  */
+ size_t
+-base64_encode (const void *data, size_t length, char *dest)
++wget_base64_encode (const void *data, size_t length, char *dest)
+ {
+   /* Conversion table.  */
+   static const char tbl[64] = {
+@@ -2208,7 +2208,7 @@ base64_encode (const void *data, size_t length, char *dest)
+    This function originates from Free Recode.  */
+ ssize_t
+-base64_decode (const char *base64, void *dest)
++wget_base64_decode (const char *base64, void *dest)
+ {
+   /* Table of base64 values for first 128 characters.  Note that this
+      assumes ASCII (but so does Wget in other places).  */
+@@ -2588,7 +2588,7 @@ wg_pubkey_pem_to_der (const char *pem, unsigned char **der, size_t *der_len)
+   base64data = xmalloc (BASE64_LENGTH(stripped_pem_count));
+-  size = base64_decode (stripped_pem, base64data);
++  size = wget_base64_decode (stripped_pem, base64data);
+   if (size < 0) {
+     xfree (base64data);           /* malformed base64 from server */
+@@ -2651,7 +2651,7 @@ wg_pin_peer_pubkey (const char *pinnedpubkey, const char *pubkey, size_t pubkeyl
+           end_pos[0] = '\0';
+         /* decode base64 pinnedpubkey, 8 is length of "sha256//" */
+-        decoded_hash_length = base64_decode (begin_pos + 8, expectedsha256sumdigest);
++        decoded_hash_length = wget_base64_decode (begin_pos + 8, expectedsha256sumdigest);
+         /* if valid base64, compare sha256 digests directly */
+         if (SHA256_DIGEST_SIZE == decoded_hash_length &&
+            !memcmp (sha256sumdigest, expectedsha256sumdigest, SHA256_DIGEST_SIZE)) {
+diff --git a/src/utils.h b/src/utils.h
+index f224b73..aaac730 100644
+--- a/src/utils.h
++++ b/src/utils.h
+@@ -140,8 +140,8 @@ void xsleep (double);
+ /* How many bytes it will take to store LEN bytes in base64.  */
+ #define BASE64_LENGTH(len) (4 * (((len) + 2) / 3))
+-size_t base64_encode (const void *, size_t, char *);
+-ssize_t base64_decode (const char *, void *);
++size_t wget_base64_encode (const void *, size_t, char *);
++ssize_t wget_base64_decode (const char *, void *);
+ #ifdef HAVE_LIBPCRE
+ void *compile_pcre_regex (const char *);
+-- 
+2.6.2
+
index 9cda76b6a213f001b885f1909a6a582ed6b5d96c..c9efc03302adc617bb047e4dbbfdb8699d9899b0 100644 (file)
@@ -17,26 +17,17 @@ WGET_DEPENDENCIES += busybox
 endif
 
 ifeq ($(BR2_PACKAGE_GNUTLS),y)
-WGET_CONF_OPTS += \
-       --with-ssl=gnutls \
-       --with-libgnutls-prefix=$(STAGING_DIR)
+WGET_CONF_OPTS += --with-ssl=gnutls
 WGET_DEPENDENCIES += gnutls
-endif
-
-ifeq ($(BR2_PACKAGE_OPENSSL),y)
-WGET_CONF_OPTS += --with-ssl=openssl --with-libssl-prefix=$(STAGING_DIR)
+else ifeq ($(BR2_PACKAGE_OPENSSL),y)
+WGET_CONF_OPTS += --with-ssl=openssl
 WGET_DEPENDENCIES += openssl
+else
+WGET_CONF_OPTS += --without-ssl
 endif
 
 ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
 WGET_DEPENDENCIES += util-linux
 endif
 
-# --with-ssl is default
-ifneq ($(BR2_PACKAGE_GNUTLS),y)
-ifneq ($(BR2_PACKAGE_OPENSSL),y)
-WGET_CONF_OPTS += --without-ssl
-endif
-endif
-
 $(eval $(autotools-package))
index 21c003ffc2f176076c0b768de8f74b8213834760..c90f5bbe0cd8870d9647673dce7282229039702e 100644 (file)
@@ -1,2 +1,2 @@
-# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.2.1.txt
-sha256 900e22af04c8b35e0d02a25a360ab1fb7cfe5ac18fc48a9afd75a7103e569149  wireshark-2.2.1.tar.bz2
+# From: https://www.wireshark.org/download/src/all-versions/SIGNATURES-2.2.2.txt
+sha256 f9acef5e9a9021a400b4244fafc06969f41ec594ec57fd7f0ff63bafca0055b3  wireshark-2.2.2.tar.bz2
index 227ead6a926e325ff343163552a3142bc7aa4e6d..6a40b8e640de678b29893623dc00007a7ab9a404 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-WIRESHARK_VERSION = 2.2.1
+WIRESHARK_VERSION = 2.2.2
 WIRESHARK_SOURCE = wireshark-$(WIRESHARK_VERSION).tar.bz2
 WIRESHARK_SITE = https://www.wireshark.org/download/src/all-versions
 WIRESHARK_LICENSE = wireshark license
index 1db0db57174d2969b3e1f3348a609dc095a72e2e..364d247a952454fd8e180f829fb7999051382046 100644 (file)
@@ -11,4 +11,9 @@ XAPP_XLOAD_LICENSE = MIT
 XAPP_XLOAD_LICENSE_FILES = COPYING
 XAPP_XLOAD_DEPENDENCIES = xlib_libXaw
 
+ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
+# musl doesn't have rwhod.h, but xload can replace it with stubs
+XAPP_XLOAD_CONF_OPTS += CFLAGS="$(TARGET_CFLAGS) -DRLOADSTUB"
+endif
+
 $(eval $(autotools-package))
index d6dec122da542bfe4d6a873365531bb19d8404b0..92b5beaa9d2a4970a7644aea03ad57c7757bedef 100644 (file)
@@ -1,2 +1,2 @@
 # Locally generated
-sha256 88fcb9af4ba52c0757ac9c0d8cd5ec79951a22905ae886897e06954353d6a643  x265_2.1.tar.gz
+sha256 3e4654133ed957a98708fdb4cb9a154d9e80922b84e26e43fc462a101c5b15c8        x265_1.9.tar.gz
index ba284dacf961fa95baf8a4a921739a0389e4037f..e737c313756fc5971b2dfb730e5f019ccb519ba1 100644 (file)
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-X265_VERSION = 2.1
+X265_VERSION = 1.9
 X265_SOURCE = x265_$(X265_VERSION).tar.gz
 X265_SITE = https://bitbucket.org/multicoreware/x265/downloads
 X265_LICENSE = GPLv2+
diff --git a/package/xenomai/0001-bfin-remove-inline-keyword.patch b/package/xenomai/0001-bfin-remove-inline-keyword.patch
new file mode 100644 (file)
index 0000000..376bd21
--- /dev/null
@@ -0,0 +1,62 @@
+From 2a96c8bbe19a193d9ae6d0780fc274abc4df03e3 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@gmail.com>
+Date: Sat, 5 Nov 2016 19:09:00 +0100
+Subject: [PATCH] bfin: remove inline keyword
+
+Xenomai user space tools fail to build for bfin target since it's
+provide it's own pthread_atfork(), shm_open() and shm_unlink()
+definition using the inline keyword and weak attribute.
+
+With gcc 5+ the weak attribute is discarded by the inline keyword,
+so each symbol are global and are redefined several time while
+linking.
+
+Fixes:
+http://autobuild.buildroot.net/results/0c2/0c2e5eb4edd4f9427f61d3c9b67a12a7a0e24140
+
+Patch status: upstream,
+https://git.xenomai.org/xenomai-2.6.git/commit/?id=917dcebb26ec492f276cdc3b55867aa90e01fa12
+
+Signed-off-by: Romain Naour <romain.naour@gmail.com>
+---
+ include/asm-blackfin/syscall.h | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/include/asm-blackfin/syscall.h b/include/asm-blackfin/syscall.h
+index 9eda8b9..b5728b5 100644
+--- a/include/asm-blackfin/syscall.h
++++ b/include/asm-blackfin/syscall.h
+@@ -132,9 +132,9 @@ static inline int __xn_interrupted_p(struct pt_regs *regs)
+ #define XENOMAI_SKINCALL5(id,op,a1,a2,a3,a4,a5) XENOMAI_DO_SYSCALL(5,id,op,a1,a2,a3,a4,a5)
+ /* uClibc does not provide pthread_atfork() for this arch; provide it
+-   here. Note: let the compiler decides whether it wants to actually
+-   inline this routine, i.e. do not force always_inline. */
+-inline __attribute__((weak)) int pthread_atfork(void (*prepare)(void),
++   here.
++*/
++__attribute__((weak)) int pthread_atfork(void (*prepare)(void),
+                                               void (*parent)(void),
+                                               void (*child)(void))
+ {
+@@ -143,7 +143,7 @@ inline __attribute__((weak)) int pthread_atfork(void (*prepare)(void),
+ #include <errno.h>
+-inline __attribute__((weak)) int shm_open(const char *name,
++__attribute__((weak)) int shm_open(const char *name,
+                                         int oflag,
+                                         mode_t mode)
+ {
+@@ -151,7 +151,7 @@ inline __attribute__((weak)) int shm_open(const char *name,
+       return -1;
+ }
+-inline __attribute__((weak)) int shm_unlink(const char *name)
++__attribute__((weak)) int shm_unlink(const char *name)
+ {
+       errno = ENOSYS;
+       return -1;
+-- 
+2.5.5
+
diff --git a/package/xmlstarlet/0001-Fix-static-linking-problem-with-libgcrypt.patch b/package/xmlstarlet/0001-Fix-static-linking-problem-with-libgcrypt.patch
deleted file mode 100644 (file)
index ea54c98..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From 8cee09b59a8c1ff2ebfc8c46097825d2eafdc4dd Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sat, 16 May 2015 17:32:13 +0200
-Subject: [PATCH] Fix static linking problem with libgcrypt
-
-When libgcrypt is used, it is linked with libgpg-error, so we should
-also test that libgpg-error is available, and include -lgpg-error in
-the LIBS variable.
-
-This fixes build issues like:
-
-  CCLD     xml
-/home/thomas/projets/buildroot/output/host/usr/bfin-buildroot-uclinux-uclibc/sysroot/usr/lib/libexslt.a(crypto.o): In function `_exsltCryptoGcryptInit':
-crypto.c:(.text+0x112): undefined reference to `_gcry_check_version'
-/home/thomas/projets/buildroot/output/host/usr/bfin-buildroot-uclinux-uclibc/sysroot/usr/lib/libexslt.a(crypto.o): In function `_exsltCryptoRc4DecryptFunction':
-crypto.c:(.text+0x316): undefined reference to `_gcry_cipher_open'
-crypto.c:(.text+0x32a): undefined reference to `_gcry_strerror'
-crypto.c:(.text+0x34c): undefined reference to `_gcry_cipher_setkey'
-
-Which are caused by the AC_SEARCH_LIBS() test for libgcrypt to fail
-due to -lgpg-error not been present in the LIBS variable.
-
-Note that using PKG_CHECK_MODULES() would be a much much better
-replacement than this complicated handling of static libraries, but
-it's a much more significant effort.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- configure.ac | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/configure.ac b/configure.ac
-index 4db0129..e378996 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -125,6 +125,7 @@ AS_IF([test "x$STATIC_LIBS" != xno],
-     [AC_SEARCH_LIBS([libiconv_open], [iconv], [], [], "$USER_LIBS")], "$USER_LIBS")
-     AC_SEARCH_LIBS([clock_gettime], [rt], [], [], "$USER_LIBS")
-     AC_SEARCH_LIBS([deflate], [z], [], [], "$USER_LIBS")
-+    AC_SEARCH_LIBS([gpg_strerror], [gpg-error], [], [], "$USER_LIBS")
-     AC_SEARCH_LIBS([gcry_cipher_encrypt], [gcrypt], [], [], "$USER_LIBS")
-     # Checks for inet libraries:
--- 
-2.1.0
-
index 98efd077308694e174ddbde4cf27d8f31ec09a9e..61d38f29ff553bd9e777cc5734da3a782af27fa6 100644 (file)
@@ -8,8 +8,6 @@ XMLSTARLET_VERSION = 1.6.1
 XMLSTARLET_SITE = http://downloads.sourceforge.net/project/xmlstar/xmlstarlet/$(XMLSTARLET_VERSION)
 XMLSTARLET_LICENSE = MIT
 XMLSTARLET_LICENSE_FILES = COPYING
-# We're patching configure.ac
-XMLSTARLET_AUTORECONF = YES
 
 XMLSTARLET_DEPENDENCIES += libxml2 libxslt \
        $(if $(BR2_PACKAGE_LIBICONV),libiconv)
@@ -21,7 +19,7 @@ XMLSTARLET_CONF_OPTS += \
 
 ifeq ($(BR2_STATIC_LIBS),y)
 XMLSTARLET_CONF_OPTS += --enable-static-libs
-XMLSTARLET_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libxml-2.0`"
+XMLSTARLET_CONF_ENV = LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libxml-2.0 libexslt` $(if $(BR2_NEEDS_GETTEXT_IF_LOCALE),-lintl)"
 else
 XMLSTARLET_CONF_OPTS += --disable-static-libs
 endif
index 5e56d5d8a192c8c8fce8acdc15d6a9053db59e5b..66d9505b0f53f81468c3cb618c11688ee1c9160f 100644 (file)
@@ -5,7 +5,7 @@
 ################################################################################
 
 # Buildroot version to use
-RELEASE='2016.08'
+RELEASE='2016.11'
 
 ### Change here for more memory/cores ###
 VM_MEMORY=2048
index e095356b79788e46c4dfd15ceddb5d355c72309f..d4252dd9e7cb512dbea8ee8555ce004938b8aba9 100644 (file)
@@ -25,8 +25,8 @@ set(CMAKE_SYSTEM_PROCESSOR @@CMAKE_SYSTEM_PROCESSOR@@)
 #   screwed up and there is nothing Buildroot can do about that :(
 set(CMAKE_C_FLAGS_DEBUG "" CACHE STRING "Debug CFLAGS")
 set(CMAKE_CXX_FLAGS_DEBUG "" CACHE STRING "Debug CXXFLAGS")
-set(CMAKE_C_FLAGS_RELEASE " -DNEBUG" CACHE STRING "Release CFLAGS")
-set(CMAKE_CXX_FLAGS_RELEASE " -DNEBUG" CACHE STRING "Release CXXFLAGS")
+set(CMAKE_C_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release CFLAGS")
+set(CMAKE_CXX_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release CXXFLAGS")
 
 # Build type from the Buildroot configuration
 set(CMAKE_BUILD_TYPE @@CMAKE_BUILD_TYPE@@ CACHE STRING "Buildroot build configuration")
@@ -36,7 +36,7 @@ set(CMAKE_BUILD_TYPE @@CMAKE_BUILD_TYPE@@ CACHE STRING "Buildroot build configur
 # want to customize the compiler/linker flags, then:
 # * set them all on the cmake command line, e.g.:
 #     cmake -DCMAKE_C_FLAGS="@@TARGET_CFLAGS@@ -Dsome_custom_flag" ...
-# * and make sure the project's CMake code extendsthem like this if needed:
+# * and make sure the project's CMake code extends them like this if needed:
 #     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Dsome_definitions")
 set(CMAKE_C_FLAGS "@@TARGET_CFLAGS@@" CACHE STRING "Buildroot CFLAGS")
 set(CMAKE_CXX_FLAGS "@@TARGET_CXXFLAGS@@" CACHE STRING "Buildroot CXXFLAGS")
@@ -58,7 +58,7 @@ set(CMAKE_C_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CC@@")
 set(CMAKE_CXX_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_CXX@@")
 if(@@TOOLCHAIN_HAS_FORTRAN@@)
   set(CMAKE_Fortran_FLAGS_DEBUG "" CACHE STRING "Debug Fortran FLAGS")
-  set(CMAKE_Fortran_FLAGS_RELEASE " -DNEBUG" CACHE STRING "Release Fortran FLAGS")
+  set(CMAKE_Fortran_FLAGS_RELEASE " -DNDEBUG" CACHE STRING "Release Fortran FLAGS")
   set(CMAKE_Fortran_FLAGS "@@TARGET_FCFLAGS@@" CACHE STRING "Buildroot FCFLAGS")
   set(CMAKE_Fortran_COMPILER "${RELOCATED_HOST_DIR}/@@TARGET_FC@@")
 endif()
index 055dc08555e1f7a472413c75db3d454aa1f61196..84bc334f77c55aed6f13f9deb61904bd38a0aa89 100755 (executable)
@@ -1,10 +1,12 @@
 #!/bin/bash
 set -e
 
-# The names and locations of the br2-external trees, once validated.
+# This script must be able to run with bash-3.1, so it can't use
+# associative arrays. Instead, it emulates them using 'eval'. It
+# can however use indexed arrays, supported since at least bash-3.0.
+
+# The names of the br2-external trees, once validated.
 declare -a BR2_EXT_NAMES
-declare -A BR2_EXT_PATHS
-declare -A BR2_EXT_DESCS
 
 # URL to manual for help in converting old br2-external trees.
 # Escape '#' so that make does not consider it a comment.
@@ -68,7 +70,7 @@ do_validate() {
 
 do_validate_one() {
     local br2_ext="${1}"
-    local br2_name br2_desc n
+    local br2_name br2_desc n d
 
     if [ ! -d "${br2_ext}" ]; then
         error "'%s': no such file or directory\n" "${br2_ext}"
@@ -91,9 +93,10 @@ do_validate_one() {
         error "'%s': name '%s' contains invalid chars: '%s'\n" \
             "${br2_ext}" "${br2_name//\$/\$\$}" "${n//\$/\$\$}"
     fi
-    if [ -n "${BR2_EXT_PATHS["${br2_name}"]}" ]; then
+    eval d="\"\${BR2_EXT_PATHS_${br2_name}}\""
+    if [ -n "${d}" ]; then
         error "'%s': name '%s' is already used in '%s'\n" \
-            "${br2_ext}" "${br2_name}" "${BR2_EXT_PATHS["${br2_name}"]}"
+            "${br2_ext}" "${br2_name}" "${d}"
     fi
     br2_desc="$(sed -r -e '/^desc: +(.*)$/!d; s//\1/' "${br2_ext}/external.desc")"
     if [ ! -f "${br2_ext}/external.mk" ]; then
@@ -105,8 +108,8 @@ do_validate_one() {
 
     # Register this br2-external tree
     BR2_EXT_NAMES+=( "${br2_name}" )
-    BR2_EXT_PATHS["${br2_name}"]="${br2_ext}"
-    BR2_EXT_DESCS["${br2_name}"]="${br2_desc:-${br2_name}}"
+    eval BR2_EXT_PATHS_${br2_name}="\"\${br2_ext}\""
+    eval BR2_EXT_DESCS_${br2_name}="\"\${br2_desc:-\${br2_name}}\""
 }
 
 # Generate the .mk snippet that defines makefile variables
@@ -117,13 +120,10 @@ do_mk() {
     printf '#\n# Automatically generated file; DO NOT EDIT.\n#\n'
     printf '\n'
 
-    # We can't use ${BR2_EXT_NAMES[@]} directly: it is not guaranteed
-    # to be in the order paths were added (because it is an associative
-    # array). So we need to iterate on BR2_EXT_NAMES, which is sorted
-    # in the order names were added (because it is an indexed array).
     printf 'BR2_EXTERNAL ?='
     for br2_name in "${BR2_EXT_NAMES[@]}"; do
-        printf ' %s' "${BR2_EXT_PATHS["${br2_name}"]}"
+        eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\""
+        printf ' %s' "${br2_ext}"
     done
     printf '\n'
 
@@ -138,8 +138,8 @@ do_mk() {
     fi
 
     for br2_name in "${BR2_EXT_NAMES[@]}"; do
-        br2_desc="${BR2_EXT_DESCS["${br2_name}"]}"
-        br2_ext="${BR2_EXT_PATHS["${br2_name}"]}"
+        eval br2_desc="\"\${BR2_EXT_DESCS_${br2_name}}\""
+        eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\""
         printf '\n'
         printf 'BR2_EXTERNAL_NAMES += %s\n' "${br2_name}"
         printf 'BR2_EXTERNAL_DIRS += %s\n' "${br2_ext}"
@@ -165,8 +165,8 @@ do_kconfig() {
     printf '\n'
 
     for br2_name in "${BR2_EXT_NAMES[@]}"; do
-        br2_desc="${BR2_EXT_DESCS["${br2_name}"]}"
-        br2_ext="${BR2_EXT_PATHS["${br2_name}"]}"
+        eval br2_desc="\"\${BR2_EXT_DESCS_${br2_name}}\""
+        eval br2_ext="\"\${BR2_EXT_PATHS_${br2_name}}\""
         if [ ${#BR2_EXT_NAMES[@]} -gt 1 ]; then
             printf 'menu "%s"\n' "${br2_desc}"
         fi
index 83f1e5b9b260d163579862c51a7e14174b5ac04a..40ed08ffe1e7db5d88af839402772c555634f90c 100755 (executable)
@@ -42,7 +42,7 @@ def __main__():
     if args.check:
         files = getdeveloperlib.check_developers(devs)
         for f in files:
-            print f
+            print(f)
 
     # Handle the architecture action
     if args.architecture is not None:
index 5cffa2dad3bc2f4103bdb54e0c40419485139736..c72f9d73caac1616c3e57830f2b12a9d6abc1672 100644 (file)
@@ -9,7 +9,7 @@ config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
                BR2_x86_64
        depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
        # Unsupported MIPS cores
-       depends on !BR2_mips_interaptiv && !BR2_mips_m5100 && !BR2_mips_m5101
+       depends on !BR2_mips_interaptiv && !BR2_mips_m5150
        # Unsupported for MIPS R6
        depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
        select BR2_TOOLCHAIN_EXTERNAL_MUSL
index 925d01394c34f09c55e5d8b1326b5cc0c4335b07..d59629b0489ba06d21b46f3088ab204c664d3f9b 100644 (file)
@@ -66,6 +66,9 @@ static char *predef_args[] = {
 #ifdef BR_OMIT_LOCK_PREFIX
        "-Wa,-momit-lock-prefix=yes",
 #endif
+#ifdef BR_NO_FUSED_MADD
+       "-mno-fused-madd",
+#endif
 #ifdef BR_BINFMT_FLAT
        "-Wl,-elf2flt",
 #endif
index e7aa5fb829ff769ccaf83de46bf91f3f71928eb8..c7b50195d3bb6b9694dde45cff2188d097d95d00 100644 (file)
@@ -26,6 +26,11 @@ ifeq ($(BR2_x86_x1000),y)
 TOOLCHAIN_WRAPPER_ARGS += -DBR_OMIT_LOCK_PREFIX
 endif
 
+# Avoid FPU bug on XBurst CPUs
+ifeq ($(BR2_mips_xburst),y)
+TOOLCHAIN_WRAPPER_ARGS += -DBR_NO_FUSED_MADD
+endif
+
 ifeq ($(BR2_CCACHE_USE_BASEDIR),y)
 TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE_BASEDIR='"$(BASE_DIR)"'
 endif