summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mk/kernel-ver.mk6
-rw-r--r--package/u-boot/files/boot.script.imx64
-rw-r--r--target/arm/bcm28xx/patches/4.1.26/0001-raspberry-pi-github.patch (renamed from target/arm/bcm28xx/patches/4.1.24/0001-raspberry-pi-github.patch)0
-rw-r--r--target/arm/kernel/solidrun-imx61
-rw-r--r--target/arm/solidrun-imx6/patches/3.14.69/0001-cec-hdmi.patch133
-rw-r--r--target/arm/solidrun-imx6/patches/3.14.72/0001-solidrun-imx6.patch696919
-rw-r--r--target/arm/solidrun-imx6/patches/4.1.26/0001-xbian.patch (renamed from target/arm/solidrun-imx6/patches/4.1.24/0001-xbian.patch)0
-rw-r--r--target/arm/solidrun-imx6/patches/4.1.26/0002-rt.patch (renamed from target/arm/solidrun-imx6/patches/4.1.24/0002-rt.patch)0
-rw-r--r--target/avr32/atmel-ngw100/patches/4.1.26/0001-net-macb-improve-big-endian-CPU-support.patch (renamed from target/avr32/atmel-ngw100/patches/4.1.24/0001-net-macb-improve-big-endian-CPU-support.patch)0
-rw-r--r--target/config/Config.in.kernelversion8
-rw-r--r--target/cris/qemu-cris/patches/4.1.26/crisv32_ethernet_driver.patch (renamed from target/cris/qemu-cris/patches/4.1.24/crisv32_ethernet_driver.patch)0
-rw-r--r--target/linux/patches/3.14.72/bsd-compatibility.patch (renamed from target/linux/patches/3.14.69/bsd-compatibility.patch)0
-rw-r--r--target/linux/patches/3.14.72/cleankernel.patch (renamed from target/linux/patches/3.14.69/cleankernel.patch)0
-rw-r--r--target/linux/patches/3.14.72/defaults.patch (renamed from target/linux/patches/3.14.69/defaults.patch)0
-rw-r--r--target/linux/patches/3.14.72/disable-netfilter.patch (renamed from target/linux/patches/3.14.69/disable-netfilter.patch)0
-rw-r--r--target/linux/patches/3.14.72/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.14.69/export-symbol-for-exmap.patch)0
-rw-r--r--target/linux/patches/3.14.72/fblogo.patch (renamed from target/linux/patches/3.14.69/fblogo.patch)0
-rw-r--r--target/linux/patches/3.14.72/gemalto.patch (renamed from target/linux/patches/3.14.69/gemalto.patch)0
-rw-r--r--target/linux/patches/3.14.72/initramfs-nosizelimit.patch (renamed from target/linux/patches/3.14.69/initramfs-nosizelimit.patch)0
-rw-r--r--target/linux/patches/3.14.72/lemote-rfkill.patch (renamed from target/linux/patches/3.14.69/lemote-rfkill.patch)0
-rw-r--r--target/linux/patches/3.14.72/microblaze-axi.patch (renamed from target/linux/patches/3.14.69/microblaze-axi.patch)0
-rw-r--r--target/linux/patches/3.14.72/microblaze-ethernet.patch (renamed from target/linux/patches/3.14.69/microblaze-ethernet.patch)0
-rw-r--r--target/linux/patches/3.14.72/mips-fpu.patch (renamed from target/linux/patches/3.14.69/mips-fpu.patch)0
-rw-r--r--target/linux/patches/3.14.72/mkpiggy.patch (renamed from target/linux/patches/3.14.69/mkpiggy.patch)0
-rw-r--r--target/linux/patches/3.14.72/mtd-rootfs.patch (renamed from target/linux/patches/3.14.69/mtd-rootfs.patch)0
-rw-r--r--target/linux/patches/3.14.72/nfsv3-tcp.patch (renamed from target/linux/patches/3.14.69/nfsv3-tcp.patch)0
-rw-r--r--target/linux/patches/3.14.72/non-static.patch (renamed from target/linux/patches/3.14.69/non-static.patch)0
-rw-r--r--target/linux/patches/3.14.72/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.14.69/ppc64-missing-zlib.patch)0
-rw-r--r--target/linux/patches/3.14.72/regmap-boolean.patch (renamed from target/linux/patches/3.14.69/regmap-boolean.patch)0
-rw-r--r--target/linux/patches/3.14.72/relocs.patch (renamed from target/linux/patches/3.14.69/relocs.patch)0
-rw-r--r--target/linux/patches/3.14.72/sgidefs.patch (renamed from target/linux/patches/3.14.69/sgidefs.patch)0
-rw-r--r--target/linux/patches/3.14.72/sortext.patch (renamed from target/linux/patches/3.14.69/sortext.patch)0
-rw-r--r--target/linux/patches/3.14.72/startup.patch (renamed from target/linux/patches/3.14.69/startup.patch)0
-rw-r--r--target/linux/patches/3.14.72/wlan-cf.patch (renamed from target/linux/patches/3.14.69/wlan-cf.patch)0
-rw-r--r--target/linux/patches/3.14.72/xargs.patch (renamed from target/linux/patches/3.14.69/xargs.patch)0
-rw-r--r--target/linux/patches/3.14.72/yaffs2.patch (renamed from target/linux/patches/3.14.69/yaffs2.patch)0
-rw-r--r--target/linux/patches/3.14.72/zlib-inflate.patch (renamed from target/linux/patches/3.14.69/zlib-inflate.patch)0
-rw-r--r--target/m68k/qemu-m68k-mcf5208/patches/3.14.72/m68k-coldfire-fec.patch (renamed from target/m68k/qemu-m68k-mcf5208/patches/3.14.69/m68k-coldfire-fec.patch)0
-rw-r--r--target/m68k/qemu-m68k-mcf5208/patches/4.1.26/m68k-coldfire-fec.patch (renamed from target/m68k/qemu-m68k-mcf5208/patches/4.1.24/m68k-coldfire-fec.patch)0
-rw-r--r--target/mips/ath79/patches/4.1.26/0001-openwrt-ath79.patch (renamed from target/mips/ath79/patches/4.1.24/0001-openwrt-ath79.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.14.72/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.14.69/rb532-cfgfs.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.14.72/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.14.69/rb532-pci.patch)0
-rw-r--r--target/or1k/patches/4.1.26/ld-or1k.patch (renamed from target/or1k/patches/4.1.24/ld-or1k.patch)0
43 files changed, 696932 insertions, 139 deletions
diff --git a/mk/kernel-ver.mk b/mk/kernel-ver.mk
index f8b073ef1..9dcee0a1b 100644
--- a/mk/kernel-ver.mk
+++ b/mk/kernel-ver.mk
@@ -49,11 +49,11 @@ KERNEL_RELEASE:= 1
KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE)
KERNEL_HASH:= 33f2a5d10769c05f6ed6a9eff24429ffd4fbaeb492320e3f9da318d56afdaa30
endif
-ifeq ($(ADK_TARGET_KERNEL_VERSION_3_14_69),y)
-KERNEL_FILE_VER:= 3.14.69
+ifeq ($(ADK_TARGET_KERNEL_VERSION_3_14_72),y)
+KERNEL_FILE_VER:= 3.14.72
KERNEL_RELEASE:= 1
KERNEL_VERSION:= $(KERNEL_FILE_VER)-$(KERNEL_RELEASE)
-KERNEL_HASH:= 0effaa7f1036eeb4a71d64e42619b1b4fffe0901e7df51446cc14e799154fd69
+KERNEL_HASH:= 0c64e38255e591dc06d57881ce08e29009c2d31fcdaab2b1a4b736bc873f4724
endif
ifeq ($(ADK_TARGET_KERNEL_VERSION_3_12_59),y)
KERNEL_FILE_VER:= 3.12.59
diff --git a/package/u-boot/files/boot.script.imx6 b/package/u-boot/files/boot.script.imx6
new file mode 100644
index 000000000..855f0bc8f
--- /dev/null
+++ b/package/u-boot/files/boot.script.imx6
@@ -0,0 +1,4 @@
+setenv bootargs console=ttymxc0,115200 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32
+ext4load mmc 0:1 0x42000000 boot/${fdtfile}
+ext4load mmc 0:1 0x10800000 boot/kernel
+bootz 0x10800000 - 0x42000000
diff --git a/target/arm/bcm28xx/patches/4.1.24/0001-raspberry-pi-github.patch b/target/arm/bcm28xx/patches/4.1.26/0001-raspberry-pi-github.patch
index 6f9089b88..6f9089b88 100644
--- a/target/arm/bcm28xx/patches/4.1.24/0001-raspberry-pi-github.patch
+++ b/target/arm/bcm28xx/patches/4.1.26/0001-raspberry-pi-github.patch
diff --git a/target/arm/kernel/solidrun-imx6 b/target/arm/kernel/solidrun-imx6
index 874ed9183..093090111 100644
--- a/target/arm/kernel/solidrun-imx6
+++ b/target/arm/kernel/solidrun-imx6
@@ -9,5 +9,6 @@ CONFIG_LOCAL_TIMERS=y
CONFIG_MXC_DEBUG_BOARD=y
CONFIG_KUSER_HELPERS=y
CONFIG_PCI_IMX6=y
+CONFIG_PM_SLEEP=y
CONFIG_ATAGS=y
CONFIG_CMDLINE_FORCE=y
diff --git a/target/arm/solidrun-imx6/patches/3.14.69/0001-cec-hdmi.patch b/target/arm/solidrun-imx6/patches/3.14.69/0001-cec-hdmi.patch
deleted file mode 100644
index 6fbc80b00..000000000
--- a/target/arm/solidrun-imx6/patches/3.14.69/0001-cec-hdmi.patch
+++ /dev/null
@@ -1,133 +0,0 @@
-diff -Nur linux-3.14.45.orig/drivers/mxc/hdmi-cec/mxc_hdmi-cec.c linux-3.14.45/drivers/mxc/hdmi-cec/mxc_hdmi-cec.c
---- linux-3.14.45.orig/drivers/mxc/hdmi-cec/mxc_hdmi-cec.c 2015-07-16 01:45:57.033999867 -0500
-+++ linux-3.14.45/drivers/mxc/hdmi-cec/mxc_hdmi-cec.c 2015-07-16 01:44:12.826000821 -0500
-@@ -67,7 +67,6 @@
- u8 msg_len;
- int tx_answer;
- u16 latest_cec_stat;
-- u8 link_status;
- spinlock_t irq_lock;
- struct delayed_work hdmi_cec_work;
- struct mutex lock;
-@@ -83,8 +82,6 @@
-
- static LIST_HEAD(head);
-
--static int hdmi_cec_ready = 0;
--static int hdmi_cec_started;
- static int hdmi_cec_major;
- static struct class *hdmi_cec_class;
- static struct hdmi_cec_priv hdmi_cec_data;
-@@ -98,7 +95,6 @@
- struct hdmi_cec_priv *hdmi_cec = data;
- u16 cec_stat = 0;
- unsigned long flags;
-- u8 phy_stat0;
- irqreturn_t ret = IRQ_HANDLED;
-
- spin_lock_irqsave(&hdmi_cec->irq_lock, flags);
-@@ -107,7 +103,6 @@
-
- cec_stat = hdmi_readb(HDMI_IH_CEC_STAT0);
- hdmi_writeb(cec_stat, HDMI_IH_CEC_STAT0);
-- phy_stat0 = hdmi_readb(HDMI_PHY_STAT0) & 0x02;
-
- if ((cec_stat & (HDMI_IH_CEC_STAT0_ERROR_INIT | \
- HDMI_IH_CEC_STAT0_NACK | HDMI_IH_CEC_STAT0_EOM | \
-@@ -115,14 +110,7 @@
- ret = IRQ_NONE;
- cec_stat = 0;
- }
-- if (hdmi_cec->link_status ^ phy_stat0) {
-- /* HPD value changed */
-- hdmi_cec->link_status = phy_stat0;
-- if (hdmi_cec->link_status)
-- cec_stat |= 0x80; /* Connected */
-- else
-- cec_stat |= 0x100; /* Disconnected */
-- }
-+
- pr_debug("HDMI CEC interrupt received\n");
- hdmi_cec->latest_cec_stat = cec_stat ;
-
-@@ -315,7 +303,7 @@
- mutex_unlock(&hdmi_cec_data.lock);
- return -EACCES;
- }
-- /* Ensure that there is only one writer who is the only listener of tx_cec_queue */
-+ /* Ensure that there is only one writer who is the unique listener of tx_cec_queue */
- if (hdmi_cec_data.tx_answer != CEC_TX_AVAIL) {
- mutex_unlock(&hdmi_cec_data.lock);
- return -EBUSY;
-@@ -363,9 +351,6 @@
- {
- u8 val;
-
-- if (!hdmi_cec_ready || hdmi_cec_started)
-- return;
--
- val = hdmi_readb(HDMI_MC_CLKDIS);
- val &= ~HDMI_MC_CLKDIS_CECCLK_DISABLE;
- hdmi_writeb(val, HDMI_MC_CLKDIS);
-@@ -377,12 +362,7 @@
- val = HDMI_IH_CEC_STAT0_WAKEUP | HDMI_IH_CEC_STAT0_ERROR_FOLL | HDMI_IH_CEC_STAT0_ARB_LOST;
- hdmi_writeb(val, HDMI_CEC_MASK);
- hdmi_writeb(val, HDMI_IH_MUTE_CEC_STAT0);
-- hdmi_cec_data.link_status = hdmi_readb(HDMI_PHY_STAT0) & 0x02;
-- mutex_lock(&hdmi_cec_data.lock);
- hdmi_cec_data.cec_state = true;
-- mutex_unlock(&hdmi_cec_data.lock);
--
-- hdmi_cec_started = 1;
- }
- EXPORT_SYMBOL(hdmi_cec_start_device);
-
-@@ -390,9 +370,6 @@
- {
- u8 val;
-
-- if (!hdmi_cec_ready || !hdmi_cec_started)
-- return;
--
- hdmi_writeb(0x10, HDMI_CEC_CTRL);
- val = HDMI_IH_CEC_STAT0_WAKEUP | HDMI_IH_CEC_STAT0_ERROR_FOLL | HDMI_IH_CEC_STAT0_ERROR_INIT | HDMI_IH_CEC_STAT0_ARB_LOST | \
- HDMI_IH_CEC_STAT0_NACK | HDMI_IH_CEC_STAT0_EOM | HDMI_IH_CEC_STAT0_DONE;
-@@ -402,11 +379,7 @@
- val = hdmi_readb(HDMI_MC_CLKDIS);
- val |= HDMI_MC_CLKDIS_CECCLK_DISABLE;
- hdmi_writeb(val, HDMI_MC_CLKDIS);
-- mutex_lock(&hdmi_cec_data.lock);
- hdmi_cec_data.cec_state = false;
-- mutex_unlock(&hdmi_cec_data.lock);
--
-- hdmi_cec_started = 0;
- }
- EXPORT_SYMBOL(hdmi_cec_stop_device);
-
-@@ -481,11 +454,18 @@
- */
- static int hdmi_cec_release(struct inode *inode, struct file *filp)
- {
-+ struct hdmi_cec_event *event, *tmp_event;
- mutex_lock(&hdmi_cec_data.lock);
- if (open_count) {
- open_count = 0;
- hdmi_cec_data.cec_state = false;
- hdmi_cec_data.Logical_address = 15;
-+
-+ /* Flush eventual events which have not been read by user space */
-+ list_for_each_entry_safe(event, tmp_event, &head, list) {
-+ list_del(&event->list);
-+ vfree(event);
-+ }
- }
- mutex_unlock(&hdmi_cec_data.lock);
-
-@@ -580,7 +560,6 @@
- INIT_DELAYED_WORK(&hdmi_cec_data.hdmi_cec_work, mxc_hdmi_cec_worker);
-
- dev_info(&pdev->dev, "HDMI CEC initialized\n");
-- hdmi_cec_ready = 1;
- goto out;
-
- err_out_class:
diff --git a/target/arm/solidrun-imx6/patches/3.14.72/0001-solidrun-imx6.patch b/target/arm/solidrun-imx6/patches/3.14.72/0001-solidrun-imx6.patch
new file mode 100644
index 000000000..3e6393cb2
--- /dev/null
+++ b/target/arm/solidrun-imx6/patches/3.14.72/0001-solidrun-imx6.patch
@@ -0,0 +1,696919 @@
+diff -Nur linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-cm-fx6.dts linux-3.14.72/arch/arm/boot/dts/imx6dl-cm-fx6.dts
+--- linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-cm-fx6.dts 1970-01-01 01:00:00.000000000 +0100
++++ linux-3.14.72/arch/arm/boot/dts/imx6dl-cm-fx6.dts 2016-06-19 22:11:55.009158180 +0200
+@@ -0,0 +1,21 @@
++/*
++ * Copyright 2015 CompuLab Ltd.
++ *
++ * Author: Valentin Raevsky <valentin@compulab.co.il>
++ *
++ * The code contained herein is licensed under the GNU General Public
++ * License. You may obtain a copy of the GNU General Public License
++ * Version 2 or later at the following locations:
++ *
++ * http://www.opensource.org/licenses/gpl-license.html
++ * http://www.gnu.org/copyleft/gpl.html
++ */
++
++/dts-v1/;
++#include "imx6dl.dtsi"
++#include "imx6qdl-cm-fx6.dtsi"
++
++/ {
++ model = "CompuLab CM-FX6";
++ compatible = "compulab,cm-fx6", "fsl,imx6dl";
++};
+diff -Nur linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-cubox-i.dts linux-3.14.72/arch/arm/boot/dts/imx6dl-cubox-i.dts
+--- linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-cubox-i.dts 2016-06-08 02:22:20.000000000 +0200
++++ linux-3.14.72/arch/arm/boot/dts/imx6dl-cubox-i.dts 2016-06-19 22:11:55.009158180 +0200
+@@ -1,5 +1,43 @@
+ /*
+ * Copyright (C) 2014 Russell King
++ *
++ * This file is dual-licensed: you can use it either under the terms
++ * of the GPL or the X11 license, at your option. Note that this dual
++ * licensing only applies to this file, and not this project as a
++ * whole.
++ *
++ * a) This file is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of the
++ * License.
++ *
++ * This file is distributed in the hope that it will be useful
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * Or, alternatively
++ *
++ * b) Permission is hereby granted, free of charge, to any person
++ * obtaining a copy of this software and associated documentation
++ * files (the "Software"), to deal in the Software without
++ * restriction, including without limitation the rights to use
++ * copy, modify, merge, publish, distribute, sublicense, and/or
++ * sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following
++ * conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ * OTHER DEALINGS IN THE SOFTWARE.
+ */
+ /dts-v1/;
+
+diff -Nur linux-3.14.72.orig/arch/arm/boot/dts/imx6dl.dtsi linux-3.14.72/arch/arm/boot/dts/imx6dl.dtsi
+--- linux-3.14.72.orig/arch/arm/boot/dts/imx6dl.dtsi 2016-06-08 02:22:20.000000000 +0200
++++ linux-3.14.72/arch/arm/boot/dts/imx6dl.dtsi 2016-06-19 22:11:55.009158180 +0200
+@@ -8,6 +8,7 @@
+ *
+ */
+
++#include <dt-bindings/interrupt-controller/irq.h>
+ #include "imx6dl-pinfunc.h"
+ #include "imx6qdl.dtsi"
+
+@@ -16,11 +17,37 @@
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+- cpu@0 {
++ cpu0: cpu@0 {
+ compatible = "arm,cortex-a9";
+ device_type = "cpu";
+ reg = <0>;
+ next-level-cache = <&L2>;
++ operating-points = <
++ /* kHz uV */
++ 996000 1275000
++ 792000 1175000
++ 396000 1175000
++ >;
++ fsl,soc-operating-points = <
++ /* ARM kHz SOC-PU uV */
++ 996000 1175000
++ 792000 1175000
++ 396000 1175000
++ >;
++ clock-latency = <61036>; /* two CLK32 periods */
++ clocks = <&clks IMX6QDL_CLK_ARM>,
++ <&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
++ <&clks IMX6QDL_CLK_STEP>,
++ <&clks IMX6QDL_CLK_PLL1_SW>,
++ <&clks IMX6QDL_CLK_PLL1_SYS>,
++ <&clks IMX6QDL_PLL1_BYPASS>,
++ <&clks IMX6QDL_CLK_PLL1>,
++ <&clks IMX6QDL_PLL1_BYPASS_SRC> ;
++ clock-names = "arm", "pll2_pfd2_396m", "step",
++ "pll1_sw", "pll1_sys", "pll1_bypass", "pll1", "pll1_bypass_src";
++ arm-supply = <&reg_arm>;
++ pu-supply = <&reg_pu>;
++ soc-supply = <&reg_soc>;
+ };
+
+ cpu@1 {
+@@ -32,40 +59,117 @@
+ };
+
+ soc {
+- ocram: sram@00900000 {
++ busfreq {
++ compatible = "fsl,imx6_busfreq";
++ clocks = <&clks IMX6QDL_CLK_PLL2_BUS>, <&clks IMX6QDL_CLK_PLL2_PFD2_396M>,
++ <&clks IMX6QDL_CLK_PLL2_198M>, <&clks IMX6QDL_CLK_ARM>,
++ <&clks IMX6QDL_CLK_PLL3_USB_OTG>, <&clks IMX6QDL_CLK_PERIPH>,
++ <&clks IMX6QDL_CLK_PERIPH_PRE>, <&clks IMX6QDL_CLK_PERIPH_CLK2>,
++ <&clks IMX6QDL_CLK_PERIPH_CLK2_SEL>, <&clks IMX6QDL_CLK_OSC>,
++ <&clks IMX6QDL_CLK_AXI_ALT_SEL>, <&clks IMX6QDL_CLK_AXI_SEL> ,
++ <&clks IMX6QDL_CLK_PLL3_PFD1_540M>;
++ clock-names = "pll2_bus", "pll2_pfd2_396m", "pll2_198m", "arm", "pll3_usb_otg", "periph",
++ "periph_pre", "periph_clk2", "periph_clk2_sel", "osc", "axi_alt_sel", "axi_sel", "pll3_pfd1_540m";
++ interrupts = <0 107 0x04>, <0 112 0x4>;
++ interrupt-names = "irq_busfreq_0", "irq_busfreq_1";
++ fsl,max_ddr_freq = <400000000>;
++ };
++
++ gpu@00130000 {
++ compatible = "fsl,imx6dl-gpu", "fsl,imx6q-gpu";
++ reg = <0x00130000 0x4000>, <0x00134000 0x4000>,
++ <0x0 0x0>;
++ reg-names = "iobase_3d", "iobase_2d",
++ "phys_baseaddr";
++ interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>,
++ <0 10 IRQ_TYPE_LEVEL_HIGH>;
++ interrupt-names = "irq_3d", "irq_2d";
++ clocks = <&clks IMX6QDL_CLK_OPENVG_AXI>, <&clks IMX6QDL_CLK_GPU3D_AXI>,
++ <&clks IMX6QDL_CLK_GPU2D_CORE>, <&clks IMX6QDL_CLK_GPU3D_CORE>,
++ <&clks IMX6QDL_CLK_DUMMY>;
++ clock-names = "gpu2d_axi_clk", "gpu3d_axi_clk",
++ "gpu2d_clk", "gpu3d_clk",
++ "gpu3d_shader_clk";
++ resets = <&src 0>, <&src 3>;
++ reset-names = "gpu3d", "gpu2d";
++ power-domains = <&gpc 1>;
++ };
++
++ ocrams: sram@00900000 {
++ compatible = "fsl,lpm-sram";
++ reg = <0x00900000 0x4000>;
++ clocks = <&clks IMX6QDL_CLK_OCRAM>;
++ };
++
++ ocrams_ddr: sram@00904000 {
++ compatible = "fsl,ddr-lpm-sram";
++ reg = <0x00904000 0x1000>;
++ clocks = <&clks IMX6QDL_CLK_OCRAM>;
++ };
++
++ ocram: sram@00905000 {
+ compatible = "mmio-sram";
+- reg = <0x00900000 0x20000>;
+- clocks = <&clks 142>;
++ reg = <0x00905000 0x1B000>;
++ clocks = <&clks IMX6QDL_CLK_OCRAM>;
+ };
+
+ aips1: aips-bus@02000000 {
++ vpu@02040000 {
++ iramsize = <0>;
++ };
++
+ iomuxc: iomuxc@020e0000 {
+ compatible = "fsl,imx6dl-iomuxc";
+ };
+
++ dcic2: dcic@020e8000 {
++ clocks = <&clks IMX6QDL_CLK_DCIC1 >,
++ <&clks IMX6QDL_CLK_DCIC2>; /* DCIC2 depend on DCIC1 clock in imx6dl*/
++ clock-names = "dcic", "disp-axi";
++ };
++
+ pxp: pxp@020f0000 {
++ compatible = "fsl,imx6dl-pxp-dma";
+ reg = <0x020f0000 0x4000>;
+- interrupts = <0 98 0x04>;
++ interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
++ clocks = <&clks IMX6QDL_CLK_IPU2>, <&clks IMX6QDL_CLK_DUMMY>;
++ clock-names = "pxp-axi", "disp-axi";
++ status = "disabled";
+ };
+
+ epdc: epdc@020f4000 {
++ compatible = "fsl,imx6dl-epdc";
+ reg = <0x020f4000 0x4000>;
+- interrupts = <0 97 0x04>;
++ interrupts = <0 97 IRQ_TYPE_LEVEL_HIGH>;
++ clocks = <&clks IMX6QDL_CLK_IPU2>, <&clks IMX6QDL_CLK_IPU2_DI1>;
++ clock-names = "epdc_axi", "epdc_pix";
++ status = "disabled";
+ };
+
+ lcdif: lcdif@020f8000 {
+ reg = <0x020f8000 0x4000>;
+- interrupts = <0 39 0x04>;
++ interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
+ };
+ };
+
+ aips2: aips-bus@02100000 {
++ mipi_dsi: mipi@021e0000 {
++ compatible = "fsl,imx6dl-mipi-dsi";
++ reg = <0x021e0000 0x4000>;
++ interrupts = <0 102 0x04>;
++ gpr = <&gpr>;
++ clocks = <&clks IMX6QDL_CLK_HSI_TX>, <&clks IMX6QDL_CLK_VIDEO_27M>;
++ clock-names = "mipi_pllref_clk", "mipi_cfg_clk";
++ status = "disabled";
++ };
++
+ i2c4: i2c@021f8000 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+- compatible = "fsl,imx1-i2c";
++ compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
+ reg = <0x021f8000 0x4000>;
+- interrupts = <0 35 0x04>;
++ interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>;
++ clocks = <&clks IMX6DL_CLK_I2C4>;
+ status = "disabled";
+ };
+ };
+@@ -73,18 +177,18 @@
+ };
+
+ &ldb {
+- clocks = <&clks 33>, <&clks 34>,
+- <&clks 39>, <&clks 40>,
+- <&clks 135>, <&clks 136>;
+- clock-names = "di0_pll", "di1_pll",
+- "di0_sel", "di1_sel",
+- "di0", "di1";
+-
+- lvds-channel@0 {
+- crtcs = <&ipu1 0>, <&ipu1 1>;
+- };
++ compatible = "fsl,imx6dl-ldb", "fsl,imx53-ldb";
+
+- lvds-channel@1 {
+- crtcs = <&ipu1 0>, <&ipu1 1>;
+- };
++ clocks = <&clks IMX6QDL_CLK_LDB_DI0>, <&clks IMX6QDL_CLK_LDB_DI1>,
++ <&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>,
++ <&clks IMX6QDL_CLK_IPU2_DI0_SEL>,
++ <&clks IMX6QDL_CLK_LDB_DI0_DIV_3_5>, <&clks IMX6QDL_CLK_LDB_DI1_DIV_3_5>,
++ <&clks IMX6QDL_CLK_LDB_DI0_DIV_7>, <&clks IMX6QDL_CLK_LDB_DI1_DIV_7>,
++ <&clks IMX6QDL_CLK_LDB_DI0_DIV_SEL>, <&clks IMX6QDL_CLK_LDB_DI1_DIV_SEL>;
++ clock-names = "ldb_di0", "ldb_di1",
++ "di0_sel", "di1_sel",
++ "di2_sel",
++ "ldb_di0_div_3_5", "ldb_di1_div_3_5",
++ "ldb_di0_div_7", "ldb_di1_div_7",
++ "ldb_di0_div_sel", "ldb_di1_div_sel";
+ };
+diff -Nur linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-hummingboard2.dts linux-3.14.72/arch/arm/boot/dts/imx6dl-hummingboard2.dts
+--- linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-hummingboard2.dts 1970-01-01 01:00:00.000000000 +0100
++++ linux-3.14.72/arch/arm/boot/dts/imx6dl-hummingboard2.dts 2016-06-19 22:11:55.009158180 +0200
+@@ -0,0 +1,52 @@
++/*
++ * Device Tree file for SolidRun HummingBoard2
++ * Copyright (C) 2015 Rabeeh Khoury <rabeeh@solid-run.com>
++ * Based on work by Russell King
++ *
++ * This file is dual-licensed: you can use it either under the terms
++ * of the GPL or the X11 license, at your option. Note that this dual
++ * licensing only applies to this file, and not this project as a
++ * whole.
++ *
++ * a) This file is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of the
++ * License.
++ *
++ * This file is distributed in the hope that it will be useful
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * Or, alternatively
++ *
++ * b) Permission is hereby granted, free of charge, to any person
++ * obtaining a copy of this software and associated documentation
++ * files (the "Software"), to deal in the Software without
++ * restriction, including without limitation the rights to use
++ * copy, modify, merge, publish, distribute, sublicense, and/or
++ * sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following
++ * conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ * OTHER DEALINGS IN THE SOFTWARE.
++ */
++/dts-v1/;
++
++#include "imx6dl.dtsi"
++#include "imx6qdl-hummingboard2.dtsi"
++
++/ {
++ model = "SolidRun HummingBoard2 Solo/DualLite";
++ compatible = "solidrun,hummingboard2/dl", "fsl,imx6dl";
++};
+diff -Nur linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-hummingboard.dts linux-3.14.72/arch/arm/boot/dts/imx6dl-hummingboard.dts
+--- linux-3.14.72.orig/arch/arm/boot/dts/imx6dl-hummingboard.dts 2016-06-08 02:22:20.000000000 +0200
++++ linux-3.14.72/arch/arm/boot/dts/imx6dl-hummingboard.dts 2016-06-19 22:11:55.013158022 +0200
+@@ -1,163 +1,51 @@
+ /*
+- * Copyright (C) 2013,2014 Russell King
++ * Copyright (C) 2014 Rabeeh Khoury (rabeeh@solid-run.com)
++ * Based on dt work by Russell King
++ *
++ * This file is dual-licensed: you can use it either under the terms
++ * of the GPL or the X11 license, at your option. Note that this dual
++ * licensing only applies to this file, and not this project as a
++ * whole.
++ *
++ * a) This file is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public License as
++ * published by the Free Software Foundation; either version 2 of the
++ * License.
++ *
++ * This file is distributed in the hope that it will be useful
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * Or, alternatively
++ *
++ * b) Permission is hereby granted, free of charge, to any person
++ * obtaining a copy of this software and associated documentation
++ * files (the "Software"), to deal in the Software without
++ * restriction, including without limitation the rights to use
++ * copy, modify, merge, publish, distribute, sublicense, and/or
++ * sell copies of the Software, and to permit persons to whom the
++ * Software is furnished to do so, subject to the following
++ * conditions:
++ *
++ * The above copyright notice and this permission notice shall be
++ * included in all copies or substantial portions of the Software.
++ *
++ * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
++ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ * OTHER DEALINGS IN THE SOFTWARE.
+ */
+ /dts-v1/;
+
+ #include "imx6dl.dtsi"
+-#include "imx6qdl-microsom.dtsi"
+-#include "imx6qdl-microsom-ar8035.dtsi"
++#include "imx6qdl-hummingboard.dtsi"
+
+ / {
+- model = "SolidRun HummingBoard DL/Solo";
+- compatible = "solidrun,hummingboard", "fsl,imx6dl";
+-
+- ir_recv: ir-receiver {
+- compatible = "gpio-ir-receiver";
+- gpios = <&gpio1 2 1>;
+- pinctrl-names = "default";
+- pinctrl-0 = <&pinctrl_hummingboard_gpio1_2>;
+- };
+-
+- regulators {
+- compatible = "simple-bus";
+-
+- reg_3p3v: 3p3v {
+- compatible = "regulator-fixed";
+- regulator-name = "3P3V";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- regulator-always-on;
+- };
+-
+- reg_usbh1_vbus: usb-h1-vbus {
+- compatible = "regulator-fixed";
+- enable-active-high;
+- gpio = <&gpio1 0 0>;
+- pinctrl-names = "default";
+- pinctrl-0 = <&pinctrl_hummingboard_usbh1_vbus>;
+- regulator-name = "usb_h1_vbus";
+- regulator-min-microvolt = <5000000>;
+- regulator-max-microvolt = <5000000>;
+- };
+-
+- reg_usbotg_vbus: usb-otg-vbus {
+- compatible = "regulator-fixed";
+- enable-active-high;
+- gpio = <&gpio3 22 0>;
+- pinctrl-names = "default";
+- pinctrl-0 = <&pinctrl_hummingboard_usbotg_vbus>;
+- regulator-name = "usb_otg_vbus";
+- regulator-min-microvolt = <5000000>;
+- regulator-max-microvolt = <5000000>;
+- };
+- };
+-
+- sound-spdif {
+- compatible = "fsl,imx-audio-spdif";
+- model = "imx-spdif";
+- /* IMX6 doesn't implement t