include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
-PKG_VERSION:=2017.11
+PKG_VERSION:=2017.07
-PKG_HASH:=6a018fd3caf58f3dcfa23ee989a82bd35df03af71872b9dca8c6d758a0d26c05
+PKG_HASH:=5374bfdc8acb9a38c025371b1ff20f45e7533668e84e685d0df5d9e7c0e4feff
PKG_MAINTAINER:=Zoltan HERPAI <wigyori@uid0.hu>
--- /dev/null
+From 335d30050b0d02444c9297f7a9b0cbf75dce847f Mon Sep 17 00:00:00 2001
+From: Olliver Schinagl <oliver@schinagl.nl>
+Date: Fri, 12 May 2017 11:38:54 +0200
+Subject: sun7i: Add support for Olimex A20-OLinuXino-LIME2-eMMC
+
+This patch adds support for the Olimex OLinuXino Lime2 with eMMC flash
+storage.
+https://www.olimex.com/Products/OLinuXino/A20/A20-OLinuXino-LIME2-eMMC/
+
+It is a assembly variant of the regular Lime2 but featuring eMMC for
+storage.
+
+Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
+Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
+Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+Reviewed-by: Jagan Teki <jagan@openedev.com>
+---
+ board/sunxi/MAINTAINERS | 5 +++++
+ configs/A20-OLinuXino-Lime2-eMMC_defconfig | 36 ++++++++++++++++++++++++++++++
+ 2 files changed, 41 insertions(+)
+ create mode 100644 configs/A20-OLinuXino-Lime2-eMMC_defconfig
+
+--- a/board/sunxi/MAINTAINERS
++++ b/board/sunxi/MAINTAINERS
+@@ -88,6 +88,11 @@ M: Iain Paton <ipaton0@gmail.com>
+ S: Maintained
+ F: configs/A20-OLinuXino-Lime2_defconfig
+
++A20-OLINUXINO-LIME2-EMMC BOARD
++M: Olliver Schinagl <oliver@schinagl.nl>
++S: Maintained
++F: configs/A20-OLinuXino-Lime2-eMMC_defconfig
++
+ A33-OLINUXINO BOARD
+ M: Stefan Mavrodiev <stefan.mavrodiev@gmail.com>
+ S: Maintained
+--- /dev/null
++++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
+@@ -0,0 +1,37 @@
++CONFIG_ARM=y
++CONFIG_ARCH_SUNXI=y
++CONFIG_MACH_SUN7I=y
++CONFIG_DRAM_CLK=384
++CONFIG_MMC0_CD_PIN="PH1"
++CONFIG_MMC_SUNXI_SLOT_EXTRA=2
++CONFIG_USB0_VBUS_PIN="PC17"
++CONFIG_USB0_VBUS_DET="PH5"
++CONFIG_I2C1_ENABLE=y
++CONFIG_SATAPWR="PC3"
++CONFIG_DEFAULT_DEVICE_TREE="sun7i-a20-olinuxino-lime2-emmc"
++CONFIG_AHCI=y
++# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
++CONFIG_SPL=y
++CONFIG_SPL_I2C_SUPPORT=y
++# CONFIG_CMD_IMLS is not set
++# CONFIG_CMD_FLASH is not set
++CONFIG_CMD_DFU=y
++CONFIG_CMD_USB_MASS_STORAGE=y
++# CONFIG_CMD_FPGA is not set
++# CONFIG_SPL_DOS_PARTITION is not set
++# CONFIG_SPL_ISO_PARTITION is not set
++# CONFIG_SPL_PARTITION_UUIDS is not set
++CONFIG_DFU_RAM=y
++CONFIG_ETH_DESIGNWARE=y
++CONFIG_RGMII=y
++CONFIG_SUN7I_GMAC=y
++CONFIG_GMAC_TX_DELAY=1
++CONFIG_AXP_ALDO3_VOLT=2800
++CONFIG_AXP_ALDO4_VOLT=2800
++CONFIG_USB_EHCI_HCD=y
++CONFIG_USB_MUSB_GADGET=y
++CONFIG_USB_GADGET=y
++CONFIG_USB_GADGET_DOWNLOAD=y
++CONFIG_G_DNL_MANUFACTURER="Allwinner Technology"
++CONFIG_G_DNL_VENDOR_NUM=0x1f3a
++CONFIG_G_DNL_PRODUCT_NUM=0x1010
--- /dev/null
+From fb7fe04da2187b9853d713cb643d01bd56813e3d Mon Sep 17 00:00:00 2001
+From: Emmanuel Vadot <manu@bidouilliste.com>
+Date: Fri, 12 May 2017 11:38:53 +0200
+Subject: ARM: dts: sunxi: Change node name for pwrseq pin on
+ Olinuxino-lime2-emmc
+
+The node name for the power seq pin is mmc2@0 like the mmc2_pins_a one.
+This makes the original node (mmc2_pins_a) scrapped out of the dtb and
+result in a unusable eMMC if U-Boot didn't configured the pins to the
+correct functions.
+
+Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
+Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+Reviewed-by: Jagan Teki <jagan@openedev.com>
+---
+ arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts
++++ b/arch/arm/dts/sun7i-a20-olinuxino-lime2-emmc.dts
+@@ -56,7 +56,7 @@
+ };
+
+ &pio {
+- mmc2_pins_nrst: mmc2@0 {
++ mmc2_pins_nrst: mmc2-rst-pin {
+ allwinner,pins = "PC16";
+ allwinner,function = "gpio_out";
+ allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+CONFIG_GMAC_TX_DELAY=1
CONFIG_AXP_ALDO3_VOLT=2800
CONFIG_AXP_ALDO4_VOLT=2800
- CONFIG_SCSI=y
+ CONFIG_USB_EHCI_HCD=y
-From 637800493945ffed2f454756300437a4ec86e3b1 Mon Sep 17 00:00:00 2001
+From 5b707cdadb35d896daafff52983416e1c617745b Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Wed, 19 Jul 2017 22:23:15 +0200
-Subject: mkimage: check environment for dtc binary location
+Subject: [PATCH] mkimage: check environment for dtc binary location
Currently mkimage assumes the dtc binary is in the path and fails
otherwise. This patch makes it check the DTC environment variable first
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
-@@ -650,9 +650,14 @@ static int fit_handle_file(struct image_
+@@ -647,9 +647,14 @@ static int fit_handle_file(struct image_
}
*cmd = '\0';
} else if (params->datafile) {
+ dtc = MKIMAGE_DTC;
+
/* dtc -I dts -O dtb -p 500 datafile > tmpfile */
- snprintf(cmd, sizeof(cmd), "%s %s \"%s\" > \"%s\"",
+ snprintf(cmd, sizeof(cmd), "%s %s %s > %s",
- MKIMAGE_DTC, params->dtc, params->datafile, tmpfile);
+ dtc, params->dtc, params->datafile, tmpfile);
debug("Trying to execute \"%s\"\n", cmd);
} else {
- snprintf(cmd, sizeof(cmd), "cp \"%s\" \"%s\"",
+ snprintf(cmd, sizeof(cmd), "cp %s %s",
--- /dev/null
+From eed65e5c25cbc4b6e893f140e9d7898f4624c114 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <hauke@hauke-m.de>
+Date: Wed, 19 Jul 2017 23:12:38 +0200
+Subject: [PATCH 210/213] Revert "fdt: Makefile: Build python libfdt library if
+ needed"
+
+This reverts commit e38ffc42674fedc750ca895046be0bd983b56dd5.
+---
+ Makefile | 17 ++---------------
+ scripts/Makefile.spl | 17 ++++-------------
+ 2 files changed, 6 insertions(+), 28 deletions(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -1116,7 +1116,7 @@ cmd_ldr = $(LD) $(LDFLAGS_$(@F)) \
+
+ u-boot.rom: u-boot-x86-16bit.bin u-boot.bin \
+ $(if $(CONFIG_SPL_X86_16BIT_INIT),spl/u-boot-spl.bin) \
+- $(if $(CONFIG_HAVE_REFCODE),refcode.bin) checkbinman FORCE
++ $(if $(CONFIG_HAVE_REFCODE),refcode.bin) FORCE
+ $(call if_changed,binman)
+
+ OBJCOPYFLAGS_u-boot-x86-16bit.bin := -O binary -j .start16 -j .resetvec
+@@ -1125,8 +1125,7 @@ u-boot-x86-16bit.bin: u-boot FORCE
+ endif
+
+ ifneq ($(CONFIG_ARCH_SUNXI),)
+-u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb \
+- checkbinman FORCE
++u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb FORCE
+ $(call if_changed,binman)
+ endif
+
+@@ -1355,18 +1354,6 @@ $(version_h): include/config/uboot.relea
+ $(timestamp_h): $(srctree)/Makefile FORCE
+ $(call filechk,timestamp.h)
+
+-checkbinman: tools
+- @if ! ( echo 'import libfdt' | ( PYTHONPATH=tools python )); then \
+- echo >&2; \
+- echo >&2 '*** binman needs the Python libfdt library.'; \
+- echo >&2 '*** Either install it on your system, or try:'; \
+- echo >&2 '***'; \
+- echo >&2 '*** sudo apt-get install swig libpython-dev'; \
+- echo >&2 '***'; \
+- echo >&2 '*** to have U-Boot build its own version.'; \
+- false; \
+- fi
+-
+ # ---------------------------------------------------------------------------
+ quiet_cmd_cpp_lds = LDS $@
+ cmd_cpp_lds = $(CPP) -Wp,-MD,$(depfile) $(cpp_flags) $(LDPPFLAGS) \
+--- a/scripts/Makefile.spl
++++ b/scripts/Makefile.spl
+@@ -257,12 +257,14 @@ PHONY += dts_dir
+ dts_dir:
+ $(shell [ -d $(obj)/dts ] || mkdir -p $(obj)/dts)
+
+-include/generated/dt-structs.h: $(obj)/$(SPL_BIN).dtb dts_dir checkdtoc
++include/generated/dt-structs.h: $(obj)/$(SPL_BIN).dtb dts_dir dtoc
+ $(call if_changed,dtoch)
+
+-$(obj)/dts/dt-platdata.c: $(obj)/$(SPL_BIN).dtb dts_dir checkdtoc
++$(obj)/dts/dt-platdata.c: $(obj)/$(SPL_BIN).dtb dts_dir dtoc
+ $(call if_changed,dtocc)
+
++dtoc: #$(objtree)/tools/_libfdt.so
++
+ ifdef CONFIG_SAMSUNG
+ ifdef CONFIG_VAR_SIZE_SPL
+ VAR_SIZE_PARAM = --vs
+@@ -355,17 +357,6 @@ ifneq ($(cmd_files),)
+ include $(cmd_files)
+ endif
+
+-checkdtoc: tools
+- @if ! ( echo 'import libfdt' | ( PYTHONPATH=tools python )); then \
+- echo '*** dtoc needs the Python libfdt library. Either '; \
+- echo '*** install it on your system, or try:'; \
+- echo '***'; \
+- echo '*** sudo apt-get install swig libpython-dev'; \
+- echo '***'; \
+- echo '*** to have U-Boot build its own version.'; \
+- false; \
+- fi
+-
+ PHONY += FORCE
+ FORCE:
+
+++ /dev/null
-From def280c4792262a368c8861312dc6b376181021f Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens <hauke@hauke-m.de>
-Date: Mon, 1 Jan 2018 23:10:56 +0100
-Subject: sunxi: deactivate binman
-
-Use the old way to generate the images instead of binman.
-binman needs python with swig to avoid this host tool dependency use the
-old way of generating images.
----
- Makefile | 7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
---- a/Makefile
-+++ b/Makefile
-@@ -1144,9 +1144,10 @@ u-boot-x86-16bit.bin: u-boot FORCE
- endif
-
- ifneq ($(CONFIG_ARCH_SUNXI),)
--u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb \
-- checkbinman FORCE
-- $(call if_changed,binman)
-+OBJCOPYFLAGS_u-boot-sunxi-with-spl.bin = -I binary -O binary \
-+ --pad-to=$(CONFIG_SPL_PAD_TO) --gap-fill=0xff
-+u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img FORCE
-+ $(call if_changed,pad_cat)
- endif
-
- ifneq ($(CONFIG_TEGRA),)
--- /dev/null
+From cdee74ad13e933631caf7f544c319d8e981c6063 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <hauke@hauke-m.de>
+Date: Thu, 20 Jul 2017 19:49:25 +0200
+Subject: [PATCH 211/213] Revert "scripts/Makefile.lib: Always have
+ ...-u-boot.dtsi be able to override"
+
+This reverts commit 7452946e7f3742b3ff1cb4a50603e7492aceea88.
+---
+ scripts/Makefile.lib | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -306,10 +306,10 @@ $(obj)/%.dtb.S: $(obj)/%.dtb
+
+ quiet_cmd_dtc = DTC $@
+ # Modified for U-Boot
+-# Bring in any U-Boot-specific include at the end of the file
++# Bring in any U-Boot-specific include after the '/dts-v1/;' header
+ cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
+ cat $< $(if $(u_boot_dtsi),\
+- | sed "$$ a\#include \"$(u_boot_dtsi)\"") | \
++ | sed '/^\/ {$$/{x;s%$$%\#include \"$(u_boot_dtsi)\"%;G;}') | \
+ $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) - ; \
+ $(DTC) -O dtb -o $@ -b 0 \
+ -i $(dir $<) $(DTC_FLAGS) \
--- /dev/null
+From 53d123333fa0ddc64b2c55d48366f4582ac6922d Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <hauke@hauke-m.de>
+Date: Thu, 20 Jul 2017 19:50:52 +0200
+Subject: [PATCH 212/213] Revert "Avoid non-portable sed construct"
+
+This reverts commit 208db781cad4c24f538658a9cb17e24fa43ca3c9.
+---
+ scripts/Makefile.lib | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -309,7 +309,7 @@ quiet_cmd_dtc = DTC $@
+ # Bring in any U-Boot-specific include after the '/dts-v1/;' header
+ cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
+ cat $< $(if $(u_boot_dtsi),\
+- | sed '/^\/ {$$/{x;s%$$%\#include \"$(u_boot_dtsi)\"%;G;}') | \
++ | sed 's%^/ {$$%\#include \"$(u_boot_dtsi)\"\n&%') | \
+ $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) - ; \
+ $(DTC) -O dtb -o $@ -b 0 \
+ -i $(dir $<) $(DTC_FLAGS) \
--- /dev/null
+From cf1defd80b7594f6f2721ab2dacffe48522abfca Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <hauke@hauke-m.de>
+Date: Thu, 20 Jul 2017 19:51:01 +0200
+Subject: [PATCH 213/213] Revert "sunxi: Use binman for sunxi boards"
+
+This reverts commit 61b994a386eb6f631dc1c2194d4cce9b1a43542c.
+---
+ Makefile | 6 ++++--
+ arch/arm/dts/sunxi-u-boot.dtsi | 14 --------------
+ scripts/Makefile.lib | 4 ++--
+ 3 files changed, 6 insertions(+), 18 deletions(-)
+ delete mode 100644 arch/arm/dts/sunxi-u-boot.dtsi
+
+--- a/Makefile
++++ b/Makefile
+@@ -1125,8 +1125,10 @@ u-boot-x86-16bit.bin: u-boot FORCE
+ endif
+
+ ifneq ($(CONFIG_ARCH_SUNXI),)
+-u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img u-boot.dtb FORCE
+- $(call if_changed,binman)
++OBJCOPYFLAGS_u-boot-sunxi-with-spl.bin = -I binary -O binary \
++ --pad-to=$(CONFIG_SPL_PAD_TO) --gap-fill=0xff
++u-boot-sunxi-with-spl.bin: spl/sunxi-spl.bin u-boot.img FORCE
++ $(call if_changed,pad_cat)
+ endif
+
+ ifneq ($(CONFIG_TEGRA),)
+--- a/arch/arm/dts/sunxi-u-boot.dtsi
++++ /dev/null
+@@ -1,14 +0,0 @@
+-#include <config.h>
+-
+-/ {
+- binman {
+- filename = "u-boot-sunxi-with-spl.bin";
+- pad-byte = <0xff>;
+- blob {
+- filename = "spl/sunxi-spl.bin";
+- };
+- u-boot-img {
+- pos = <CONFIG_SPL_PAD_TO>;
+- };
+- };
+-};
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -308,8 +308,8 @@ quiet_cmd_dtc = DTC $@
+ # Modified for U-Boot
+ # Bring in any U-Boot-specific include after the '/dts-v1/;' header
+ cmd_dtc = mkdir -p $(dir ${dtc-tmp}) ; \
+- cat $< $(if $(u_boot_dtsi),\
+- | sed 's%^/ {$$%\#include \"$(u_boot_dtsi)\"\n&%') | \
++ cat $< $(if $(u-boot-dtsi),\
++ | sed 's%^/ {$$%\#include \"$(u-boot-dtsi)\"\n&%') | \
+ $(CPP) $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) - ; \
+ $(DTC) -O dtb -o $@ -b 0 \
+ -i $(dir $<) $(DTC_FLAGS) \
--- /dev/null
+From 6ff005cf19363382fc867d7876a75fd8a386e894 Mon Sep 17 00:00:00 2001
+From: Dave Prue <dave@prue.com>
+Date: Thu, 31 Aug 2017 19:21:01 +0200
+Subject: [PATCH] sunxi: Fix CONFIG_SUNXI_GMAC references
+
+SUNXI_GMAC was still used to configure the code where as the
+same has been renamed and moved to Kconfig in below commit
+"sunxi: Move SUNXI_GMAC to Kconfig"
+(sha1: 4d43d065db3262f9a9918ba72457bf36dfb8e0bb)
+
+Signed-off-by: Dave Prue <dave@prue.com>
+Reviewed-by: Simon Glass <sjg@chromium.org>
+Reviewed-by: Jagan Teki <jagan@openedev.com>
+Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
+Tested-by: Mark Kettenis <kettenis@openbsd.org>
+[Tweek commit message, config_whitelist.txt, build-whitelist.sh]
+Signed-off-by: Jagan Teki <jagan@openedev.com>
+---
+ arch/arm/include/asm/arch-sunxi/sys_proto.h | 2 +-
+ board/sunxi/Makefile | 2 +-
+ include/configs/sunxi-common.h | 2 +-
+ scripts/build-whitelist.sh | 4 ++--
+ scripts/config_whitelist.txt | 1 -
+ 5 files changed, 5 insertions(+), 6 deletions(-)
+
+--- a/arch/arm/include/asm/arch-sunxi/sys_proto.h
++++ b/arch/arm/include/asm/arch-sunxi/sys_proto.h
+@@ -24,7 +24,7 @@ void sdelay(unsigned long);
+ void return_to_fel(uint32_t lr, uint32_t sp);
+
+ /* Board / SoC level designware gmac init */
+-#if !defined CONFIG_SPL_BUILD && defined CONFIG_SUNXI_GMAC
++#if !defined CONFIG_SPL_BUILD && defined CONFIG_SUN7I_GMAC
+ void eth_init_board(void);
+ #else
+ static inline void eth_init_board(void) {}
+--- a/board/sunxi/Makefile
++++ b/board/sunxi/Makefile
+@@ -9,7 +9,7 @@
+ # SPDX-License-Identifier: GPL-2.0+
+ #
+ obj-y += board.o
+-obj-$(CONFIG_SUNXI_GMAC) += gmac.o
++obj-$(CONFIG_SUN7I_GMAC) += gmac.o
+ obj-$(CONFIG_SUNXI_AHCI) += ahci.o
+ obj-$(CONFIG_MACH_SUN4I) += dram_sun4i_auto.o
+ obj-$(CONFIG_MACH_SUN5I) += dram_sun5i_auto.o
+--- a/include/configs/sunxi-common.h
++++ b/include/configs/sunxi-common.h
+@@ -302,7 +302,7 @@ extern int soft_i2c_gpio_scl;
+ #define CONFIG_PHYLIB
+ #endif
+
+-#ifdef CONFIG_SUNXI_GMAC
++#ifdef CONFIG_SUN7I_GMAC
+ #define CONFIG_PHY_GIGE /* GMAC can use gigabit PHY */
+ #define CONFIG_PHY_ADDR 1
+ #define CONFIG_MII /* MII PHY management */
+--- a/scripts/build-whitelist.sh
++++ b/scripts/build-whitelist.sh
+@@ -13,10 +13,10 @@ export LC_ALL=C LC_COLLATE=C
+ # There are two independent greps. The first pulls out the component parts
+ # of CONFIG_SYS_EXTRA_OPTIONS. An example is:
+ #
+-# SUNXI_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)
++# SUN7I_GMAC,AHCI,SATAPWR=SUNXI_GPB(8)
+ #
+ # We want this to produce:
+-# CONFIG_SUNXI_GMAC
++# CONFIG_SUN7I_GMAC
+ # CONFIG_AHCI
+ # CONFIG_SATAPWR
+ #
+--- a/scripts/config_whitelist.txt
++++ b/scripts/config_whitelist.txt
+@@ -2371,7 +2371,6 @@ CONFIG_STV0991_HZ_CLOCK
+ CONFIG_ST_SMI
+ CONFIG_SUNXI_AHCI
+ CONFIG_SUNXI_EMAC
+-CONFIG_SUNXI_GMAC
+ CONFIG_SUNXI_GPIO
+ CONFIG_SUNXI_MAX_FB_SIZE
+ CONFIG_SUNXI_USB_PHYS