]> code.ossystems Code Review - meta-freescale.git/commitdiff
linux-imx-rt: Upgrade to 3.14.28-1.0.0 GA
authorDominic Sacré <dominic.sacre@gmx.de>
Wed, 8 Jul 2015 09:46:06 +0000 (11:46 +0200)
committerOtavio Salvador <otavio@ossystems.com.br>
Mon, 13 Jul 2015 13:07:30 +0000 (10:07 -0300)
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
12 files changed:
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0001-ARM-clk-imx6q-fix-video-divider-for-revision-1.0-of-.patch [deleted file]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0001-ARM-imx6q-drop-unnecessary-semicolon.patch [new file with mode: 0644]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0001-fix-build.patch [moved from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0001-fix-build.patch with 61% similarity]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0002-ARM-clk-imx6q-fix-video-divider-for-rev-T0-1.0.patch [new file with mode: 0644]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0002-fix-build-with-rt-enabled.patch [moved from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0002-fix-build-with-rt-enabled.patch with 100% similarity]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0003-ARM-imx6sl-Disable-imx6sl-specific-code-when-imx6sl-.patch [new file with mode: 0644]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0003-no-split-ptlocks.patch [moved from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0003-no-split-ptlocks.patch with 90% similarity]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0004-mmc-sdhci-esdhc-imx-Fixup-runtime-PM-conditions-duri.patch [new file with mode: 0644]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0005-Revert-net-fec-fix-the-warning-found-by-dma-debug.patch [new file with mode: 0644]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/mx6/defconfig [moved from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/mx6/defconfig with 82% similarity]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt_3.10.31.bb [deleted file]
meta-fsl-arm/recipes-kernel/linux/linux-imx-rt_3.14.28.bb [new file with mode: 0644]

diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0001-ARM-clk-imx6q-fix-video-divider-for-revision-1.0-of-.patch b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0001-ARM-clk-imx6q-fix-video-divider-for-revision-1.0-of-.patch
deleted file mode 100644 (file)
index 820ce68..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From 0e981452d7130513e796c1c3d7348905c0d00dce Mon Sep 17 00:00:00 2001
-From: Gary Bisson <bisson.gary@gmail.com>
-Date: Tue, 2 Dec 2014 22:11:14 -0800
-Subject: [PATCH] ARM: clk-imx6q: fix video divider for revision 1.0 of i.MX6q
-
-As post dividers do not work on i.MX6Q revision 1.0 they must be fixed
-to 1. As the table index was wrong, a divider a of 4 could still be
-requested which implied the clock not to be set properly. This is the
-root cause of the HDMI not working at high resolution on T1.0 version of
-the SoC, giving the following error:
-mxc_sdc_fb fb.27: timeout when waiting for flip irq
-
-Upstream-Status: Pending
-
-Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
----
- arch/arm/mach-imx/clk-imx6q.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c
-index 25734ed..34e1616f 100644
---- a/arch/arm/mach-imx/clk-imx6q.c
-+++ b/arch/arm/mach-imx/clk-imx6q.c
-@@ -312,7 +312,7 @@ static void __init imx6q_clocks_init(struct device_node *ccm_node)
-               post_div_table[1].div = 1;
-               post_div_table[2].div = 1;
-               video_div_table[1].div = 1;
--              video_div_table[2].div = 1;
-+              video_div_table[3].div = 1;
-       };
-       /*                   type                               name         parent_name  base     div_mask */
--- 
-2.1.3
-
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0001-ARM-imx6q-drop-unnecessary-semicolon.patch b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0001-ARM-imx6q-drop-unnecessary-semicolon.patch
new file mode 100644 (file)
index 0000000..8d43183
--- /dev/null
@@ -0,0 +1,35 @@
+From 5332a5467624b01d0c166309cd1dceac5f7b9d96 Mon Sep 17 00:00:00 2001
+From: Dmitry Voytik <voytikd@gmail.com>
+Date: Thu, 6 Nov 2014 22:46:20 +0400
+Subject: [PATCH 1/3] ARM: imx6q: drop unnecessary semicolon
+
+commit d2a10a1727b3948019128e83162f22c65859f1fd upstream.
+
+Drop unnecessary semicolon after closing curly bracket.
+
+Signed-off-by: Dmitry Voytik <voytikd@gmail.com>
+Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+Upstream-Status: Backport [3.14.29]
+
+---
+ arch/arm/mach-imx/clk-imx6q.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c
+index f0d8000..a5107ab 100644
+--- a/arch/arm/mach-imx/clk-imx6q.c
++++ b/arch/arm/mach-imx/clk-imx6q.c
+@@ -149,7 +149,7 @@ static void __init imx6q_clocks_init(struct device_node *ccm_node)
+               post_div_table[2].div = 1;
+               video_div_table[1].div = 1;
+               video_div_table[2].div = 1;
+-      };
++      }
+       clk[IMX6QDL_PLL1_BYPASS_SRC] = imx_clk_mux("pll1_bypass_src", base + 0x00, 14, 2, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
+       clk[IMX6QDL_PLL2_BYPASS_SRC] = imx_clk_mux("pll2_bypass_src", base + 0x30, 14, 2, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
+-- 
+2.1.4
+
similarity index 61%
rename from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0001-fix-build.patch
rename to meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0001-fix-build.patch
index ffc6b74f2221527c41d6425c2887d034cb603db3..4be4066d65348fc61d697650cc88686f1519976e 100644 (file)
@@ -4,12 +4,13 @@ Upstream-Status: Inappropriate [other]
 Freescale does not support the RT patch
 
 Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se>
+Signed-off-by: Dominic Sacré <dominic.sacre@gmx.de> [updated for 3.14.28]
 
-Index: git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
-===================================================================
---- git.orig/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
-+++ git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
-@@ -7746,7 +7746,7 @@ gckOS_WaitSignal(
+diff --git a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
+index 2ec98dc..5d0b7df 100644
+--- a/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
++++ b/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
+@@ -7344,7 +7344,7 @@ gckOS_WaitSignal(
  
      might_sleep();
  
@@ -18,7 +19,7 @@ Index: git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
  
      if (signal->obj.done)
      {
-@@ -7768,9 +7768,8 @@ gckOS_WaitSignal(
+@@ -7366,9 +7366,8 @@ gckOS_WaitSignal(
              ? MAX_SCHEDULE_TIMEOUT
              : Wait * HZ / 1000;
  
@@ -30,7 +31,7 @@ Index: git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
  
          while (gcvTRUE)
          {
-@@ -7782,9 +7781,9 @@ gckOS_WaitSignal(
+@@ -7380,9 +7379,9 @@ gckOS_WaitSignal(
              }
  
              __set_current_state(TASK_INTERRUPTIBLE);
@@ -42,7 +43,7 @@ Index: git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
  
              if (signal->obj.done)
              {
-@@ -7805,10 +7804,10 @@ gckOS_WaitSignal(
+@@ -7403,10 +7402,10 @@ gckOS_WaitSignal(
              }
          }
  
@@ -55,3 +56,16 @@ Index: git/drivers/mxc/gpu-viv/hal/os/linux/kernel/gc_hal_kernel_os.c
  
  OnError:
      /* Return status. */
+diff --git a/include/linux/imx_sema4.h b/include/linux/imx_sema4.h
+index 9787980..3586199 100644
+--- a/include/linux/imx_sema4.h
++++ b/include/linux/imx_sema4.h
+@@ -9,6 +9,8 @@
+ #ifndef __LINUX_IMX_SEMA4_H__
+ #define __LINUX_IMX_SEMA4_H__
++#include <linux/wait.h>
++
+ #define SEMA4_NUM_DEVICES     1
+ #define SEMA4_NUM_GATES               16
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0002-ARM-clk-imx6q-fix-video-divider-for-rev-T0-1.0.patch b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0002-ARM-clk-imx6q-fix-video-divider-for-rev-T0-1.0.patch
new file mode 100644 (file)
index 0000000..d7b852d
--- /dev/null
@@ -0,0 +1,40 @@
+From 5b9eb0cdaefd7ac8e31c1e1812582e0169ba9722 Mon Sep 17 00:00:00 2001
+From: Gary Bisson <bisson.gary@gmail.com>
+Date: Wed, 3 Dec 2014 15:03:51 -0800
+Subject: [PATCH 2/3] ARM: clk-imx6q: fix video divider for rev T0 1.0
+
+commit 81ef447950bf0955aca46f4a7617d8ce435cf0ce upstream.
+
+The post dividers do not work on i.MX6Q rev T0 1.0 so they must be fixed
+to 1. As the table index was wrong, a divider a of 4 could still be
+requested which implied the clock not to be set properly. This is the
+root cause of the HDMI not working at high resolution on rev T0 1.0 of
+the SoC.
+
+Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
+Cc: <stable@vger.kernel.org>
+Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+Upstream-Status: Backport [3.14.29]
+
+---
+ arch/arm/mach-imx/clk-imx6q.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c
+index a5107ab..cf060a9 100644
+--- a/arch/arm/mach-imx/clk-imx6q.c
++++ b/arch/arm/mach-imx/clk-imx6q.c
+@@ -148,7 +148,7 @@ static void __init imx6q_clocks_init(struct device_node *ccm_node)
+               post_div_table[1].div = 1;
+               post_div_table[2].div = 1;
+               video_div_table[1].div = 1;
+-              video_div_table[2].div = 1;
++              video_div_table[3].div = 1;
+       }
+       clk[IMX6QDL_PLL1_BYPASS_SRC] = imx_clk_mux("pll1_bypass_src", base + 0x00, 14, 2, pll_bypass_src_sels, ARRAY_SIZE(pll_bypass_src_sels));
+-- 
+2.1.4
+
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0003-ARM-imx6sl-Disable-imx6sl-specific-code-when-imx6sl-.patch b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0003-ARM-imx6sl-Disable-imx6sl-specific-code-when-imx6sl-.patch
new file mode 100644 (file)
index 0000000..0743099
--- /dev/null
@@ -0,0 +1,56 @@
+From 8340ad4ab71b568e65dfd1b92cc0967152887f97 Mon Sep 17 00:00:00 2001
+From: Nikolay Dimitrov <picmaster@mail.bg>
+Date: Sun, 8 Feb 2015 22:18:09 +0200
+Subject: [PATCH 3/3] ARM: imx6sl: Disable imx6sl-specific code when imx6sl SOC
+ support is disabled
+
+Currently the build fails when CONFIG_SOC_IMX6SL is disabled, due to some
+hard-coded stuff. The patch purpose is to handle enabling/disabling this
+config option.
+
+Signed-off-by: Nikolay Dimitrov <picmaster@mail.bg>
+Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+
+Upstream-Status: Pending
+
+---
+ arch/arm/mach-imx/Makefile | 3 ++-
+ arch/arm/mach-imx/mxc.h    | 4 ++++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/mach-imx/Makefile b/arch/arm/mach-imx/Makefile
+index b76a214..27f1976 100644
+--- a/arch/arm/mach-imx/Makefile
++++ b/arch/arm/mach-imx/Makefile
+@@ -122,7 +122,8 @@ obj-$(CONFIG_SOC_IMX6SL) += busfreq_lpddr2.o lpddr2_freq_imx6.o imx6sl_lpm_wfi.o
+ AFLAGS_lpddr2_freq_imx6sx.o :=-Wa,-march=armv7-a
+ AFLAGS_ddr3_freq_imx6sx.o :=-Wa,-march=armv7-a
+ AFLAGS_imx6sx_low_power_idle.o :=-Wa,-march=armv7-a
+-obj-$(CONFIG_SOC_IMX6SX) += ddr3_freq_imx6sx.o lpddr2_freq_imx6sx.o imx6sx_low_power_idle.o
++obj-$(CONFIG_SOC_IMX6SX) += ddr3_freq_imx6sx.o lpddr2_freq_imx6sx.o imx6sx_low_power_idle.o \
++      busfreq_lpddr2.o lpddr2_freq_imx6.o
+ endif
+diff --git a/arch/arm/mach-imx/mxc.h b/arch/arm/mach-imx/mxc.h
+index 1510769..e6af4dd 100644
+--- a/arch/arm/mach-imx/mxc.h
++++ b/arch/arm/mach-imx/mxc.h
+@@ -158,10 +158,14 @@ extern unsigned int __mxc_cpu_type;
+ #endif
+ #ifndef __ASSEMBLY__
++#ifdef CONFIG_SOC_IMX6SL
+ static inline bool cpu_is_imx6sl(void)
+ {
+       return __mxc_cpu_type == MXC_CPU_IMX6SL;
+ }
++#else
++# define cpu_is_imx6sl() (0)
++#endif
+ static inline bool cpu_is_imx6dl(void)
+ {
+-- 
+2.1.4
+
similarity index 90%
rename from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/0003-no-split-ptlocks.patch
rename to meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0003-no-split-ptlocks.patch
index b7995b6340e5691427a03d8a7a0fc88c9205fcf1..40c012a5148e9c7d8b58953ec2145aa46ddda52c 100644 (file)
@@ -3,6 +3,7 @@ Work around the oops below by disabling split ptlocks
 Upstream-Status: Inappropriate [disable feature]
 
 Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se>
+Signed-off-by: Dominic Sacré <dominic.sacre@gmx.de> [updated for 3.14.28]
 
 Unable to handle kernel NULL pointer dereference at virtual address 00000000
 pgd = ac5a8000
@@ -69,16 +70,16 @@ Code: e92d4010 e1a04000 e3a00001 ebe8abd7 (e1943f9f)
 ---[ end trace 0000000000000002 ]---
 note: test-qt5[277] exited with preempt_count 1
 
-Index: git/include/linux/mm_types.h
-===================================================================
---- git.orig/include/linux/mm_types.h
-+++ git/include/linux/mm_types.h
+diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
+index 6c1dc6c..8c00faf 100644
+--- a/include/linux/mm_types.h
++++ b/include/linux/mm_types.h
 @@ -24,7 +24,7 @@
  
  struct address_space;
  
--#define USE_SPLIT_PTLOCKS     (NR_CPUS >= CONFIG_SPLIT_PTLOCK_CPUS)
-+#define USE_SPLIT_PTLOCKS     (0)
- /*
-  * Each physical page in the system has a struct page associated with
+-#define USE_SPLIT_PTE_PTLOCKS (NR_CPUS >= CONFIG_SPLIT_PTLOCK_CPUS)
++#define USE_SPLIT_PTE_PTLOCKS (0)
+ #define USE_SPLIT_PMD_PTLOCKS (USE_SPLIT_PTE_PTLOCKS && \
+               IS_ENABLED(CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK))
+ #define ALLOC_SPLIT_PTLOCKS   (SPINLOCK_SIZE > BITS_PER_LONG/8)
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0004-mmc-sdhci-esdhc-imx-Fixup-runtime-PM-conditions-duri.patch b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0004-mmc-sdhci-esdhc-imx-Fixup-runtime-PM-conditions-duri.patch
new file mode 100644 (file)
index 0000000..0d3caa4
--- /dev/null
@@ -0,0 +1,36 @@
+From 77903c01d8c6c5d2544085ba074aceadc1191d21 Mon Sep 17 00:00:00 2001
+From: Ulf Hansson <ulf.hansson@linaro.org>
+Date: Thu, 11 Dec 2014 15:12:25 +0100
+Subject: [PATCH 2/2] mmc: sdhci-esdhc-imx: Fixup runtime PM conditions during
+ ->probe()
+
+By configure runtime PM prior we enable the use of it, we close the gap
+for strange and unhandled conditions. Moreover it makes us rely on the
+driver core, after finalized ->probe(), to request an inactive device
+to become runtime PM idle/suspended, which earlier potentially could
+happen already at pm_runtime_set_autosuspend_delay().
+
+Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
+---
+ drivers/mmc/host/sdhci-esdhc-imx.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c
+index 043866c..10ef824 100644
+--- a/drivers/mmc/host/sdhci-esdhc-imx.c
++++ b/drivers/mmc/host/sdhci-esdhc-imx.c
+@@ -1080,10 +1080,10 @@ static int sdhci_esdhc_imx_probe(struct platform_device *pdev)
+               goto disable_clk;
+       pm_runtime_set_active(&pdev->dev);
+-      pm_runtime_enable(&pdev->dev);
+       pm_runtime_set_autosuspend_delay(&pdev->dev, 50);
+       pm_runtime_use_autosuspend(&pdev->dev);
+       pm_suspend_ignore_children(&pdev->dev, 1);
++      pm_runtime_enable(&pdev->dev);
+       return 0;
+-- 
+1.9.3
+
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0005-Revert-net-fec-fix-the-warning-found-by-dma-debug.patch b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/0005-Revert-net-fec-fix-the-warning-found-by-dma-debug.patch
new file mode 100644 (file)
index 0000000..5e5721c
--- /dev/null
@@ -0,0 +1,100 @@
+From a2fe37b69d4fe369c284d50927193fed81c238a0 Mon Sep 17 00:00:00 2001
+From: Fabio Estevam <fabio.estevam@freescale.com>
+Date: Fri, 13 Mar 2015 14:07:54 -0300
+Subject: [PATCH] Revert "net: fec: fix the warning found by dma debug"
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This reverts commit 2b995f63987013bacde99168218f9c7b252bdcf1.
+
+????? ?????? reported the following regression:
+
+"Commit 2b995f63987013bacde99168218f9c7b252bdcf1 in 4.0.0-rc3 introduces a
+nasty bug in transmit, corrupting packets.
+
+To reproduce:
+
+$ dd if=/dev/zero of=zeros bs=1M count=20
+$ md5sum -b zeros
+8f4e33f3dc3e414ff94e5fb6905cba8c *zeros
+
+This checksum is correct.
+
+Copy file "zeros" to another host with NFS, and it gets corrupted, checksum is
+changed.
+File should be big, small amounts of transmit isn't affected.
+
+I use an i.MX6 Quad board.
+
+If this commit is reverted, all works fine."
+
+Reported-by: ????? ?????? <rockford@yandex.ru>
+Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+---
+ drivers/net/ethernet/freescale/fec_main.c | 34 ++++++++++---------------------
+ 1 file changed, 11 insertions(+), 23 deletions(-)
+
+diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
+index 787db50..78e1ce0 100644
+--- a/drivers/net/ethernet/freescale/fec_main.c
++++ b/drivers/net/ethernet/freescale/fec_main.c
+@@ -1189,13 +1189,12 @@ static void
+ fec_enet_tx_queue(struct net_device *ndev, u16 queue_id)
+ {
+       struct  fec_enet_private *fep;
+-      struct bufdesc *bdp, *bdp_t;
++      struct bufdesc *bdp;
+       unsigned short status;
+       struct  sk_buff *skb;
+       struct fec_enet_priv_tx_q *txq;
+       struct netdev_queue *nq;
+       int     index = 0;
+-      int     i, bdnum;
+       int     entries_free;
+       fep = netdev_priv(ndev);
+@@ -1216,29 +1215,18 @@ fec_enet_tx_queue(struct net_device *ndev, u16 queue_id)
+               if (bdp == txq->cur_tx)
+                       break;
+-              bdp_t = bdp;
+-              bdnum = 1;
+-              index = fec_enet_get_bd_index(txq->tx_bd_base, bdp_t, fep);
+-              skb = txq->tx_skbuff[index];
+-              while (!skb) {
+-                      bdp_t = fec_enet_get_nextdesc(bdp_t, fep, queue_id);
+-                      index = fec_enet_get_bd_index(txq->tx_bd_base, bdp_t, fep);
+-                      skb = txq->tx_skbuff[index];
+-                      bdnum++;
+-              }
+-              if (skb_shinfo(skb)->nr_frags &&
+-                  (status = bdp_t->cbd_sc) & BD_ENET_TX_READY)
+-                      break;
++              index = fec_enet_get_bd_index(txq->tx_bd_base, bdp, fep);
+-              for (i = 0; i < bdnum; i++) {
+-                      if (!IS_TSO_HEADER(txq, bdp->cbd_bufaddr))
+-                              dma_unmap_single(&fep->pdev->dev, bdp->cbd_bufaddr,
+-                                               bdp->cbd_datlen, DMA_TO_DEVICE);
+-                      bdp->cbd_bufaddr = 0;
+-                      if (i < bdnum - 1)
+-                              bdp = fec_enet_get_nextdesc(bdp, fep, queue_id);
+-              }
++              skb = txq->tx_skbuff[index];
+               txq->tx_skbuff[index] = NULL;
++              if (!IS_TSO_HEADER(txq, bdp->cbd_bufaddr))
++                      dma_unmap_single(&fep->pdev->dev, bdp->cbd_bufaddr,
++                                      bdp->cbd_datlen, DMA_TO_DEVICE);
++              bdp->cbd_bufaddr = 0;
++              if (!skb) {
++                      bdp = fec_enet_get_nextdesc(bdp, fep, queue_id);
++                      continue;
++              }
+               /* Check for errors. */
+               if (status & (BD_ENET_TX_HB | BD_ENET_TX_LC |
+-- 
+1.9.3
+
similarity index 82%
rename from meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.10.31/mx6/defconfig
rename to meta-fsl-arm/recipes-kernel/linux/linux-imx-rt-3.14.28/mx6/defconfig
index eb0b6ae27794e198f67ed9ba5e72ed11e6a0eca1..30aabbd39c61924ad80c38a32bac6e9c767588b5 100644 (file)
@@ -1,14 +1,14 @@
+CONFIG_LOCALVERSION="-1.0.0_ga"
 CONFIG_KERNEL_LZO=y
 CONFIG_SYSVIPC=y
 CONFIG_NO_HZ=y
 CONFIG_HIGH_RES_TIMERS=y
-CONFIG_IKCONFIG=y
-CONFIG_IKCONFIG_PROC=y
 CONFIG_LOG_BUF_SHIFT=18
 CONFIG_CGROUPS=y
 CONFIG_RELAY=y
 CONFIG_BLK_DEV_INITRD=y
 CONFIG_EXPERT=y
+CONFIG_KALLSYMS_ALL=y
 CONFIG_PERF_EVENTS=y
 # CONFIG_SLUB_DEBUG is not set
 # CONFIG_COMPAT_BRK is not set
@@ -19,9 +19,9 @@ CONFIG_MODULE_SRCVERSION_ALL=y
 # CONFIG_BLK_DEV_BSG is not set
 CONFIG_GPIO_PCA953X=y
 CONFIG_ARCH_MXC=y
-CONFIG_MXC_DEBUG_BOARD=y
 CONFIG_MACH_IMX51_DT=y
 CONFIG_MACH_EUKREA_CPUIMX51SD=y
+CONFIG_SOC_IMX50=y
 CONFIG_SOC_IMX53=y
 CONFIG_SOC_IMX6Q=y
 CONFIG_SOC_IMX6SL=y
@@ -32,12 +32,16 @@ CONFIG_SMP=y
 CONFIG_VMSPLIT_2G=y
 CONFIG_PREEMPT_RT_FULL=y
 CONFIG_AEABI=y
-# CONFIG_OABI_COMPAT is not set
 CONFIG_HIGHMEM=y
+CONFIG_CMA=y
 CONFIG_CMDLINE="noinitrd console=ttymxc0,115200"
 CONFIG_CPU_FREQ=y
-# CONFIG_CPU_FREQ_STAT is not set
-CONFIG_ARM_IMX6_CPUFREQ=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_INTERACTIVE=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
+CONFIG_ARM_IMX6Q_CPUFREQ=y
 CONFIG_CPU_IDLE=y
 CONFIG_VFP=y
 CONFIG_NEON=y
@@ -62,13 +66,27 @@ CONFIG_LLC2=y
 CONFIG_CAN=y
 CONFIG_CAN_FLEXCAN=y
 CONFIG_CAN_M_CAN=y
+CONFIG_BT=y
+CONFIG_BT_RFCOMM=y
+CONFIG_BT_RFCOMM_TTY=y
+CONFIG_BT_BNEP=y
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+CONFIG_BT_HIDP=y
+CONFIG_BT_HCIBTUSB=y
+CONFIG_BT_HCIBTSDIO=y
+CONFIG_BT_HCIUART=y
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIBCM203X=y
+CONFIG_BT_ATH3K=y
 CONFIG_CFG80211=y
-CONFIG_CFG80211_WEXT=y
 CONFIG_MAC80211=y
 CONFIG_DEVTMPFS=y
 CONFIG_DEVTMPFS_MOUNT=y
 # CONFIG_STANDALONE is not set
-CONFIG_CMA=y
+CONFIG_DMA_CMA=y
 CONFIG_CMA_SIZE_MBYTES=320
 CONFIG_IMX_WEIM=y
 CONFIG_CONNECTOR=y
@@ -87,7 +105,7 @@ CONFIG_MTD_SST25L=y
 CONFIG_MTD_NAND=y
 CONFIG_MTD_NAND_GPMI_NAND=y
 CONFIG_MTD_NAND_MXC=y
-CONFIG_MTD_SPI_NOR_BASE=y
+CONFIG_MTD_SPI_NOR=y
 CONFIG_SPI_FSL_QUADSPI=y
 CONFIG_MTD_UBI=y
 CONFIG_BLK_DEV_LOOP=y
@@ -121,9 +139,15 @@ CONFIG_SMC91X=y
 CONFIG_SMC911X=y
 CONFIG_SMSC911X=y
 # CONFIG_NET_VENDOR_STMICRO is not set
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_RTL8152=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_CDC_EEM=m
 CONFIG_ATH_CARDS=y
 CONFIG_ATH6KL=m
 CONFIG_ATH6KL_SDIO=m
+CONFIG_BRCMFMAC=m
 # CONFIG_INPUT_MOUSEDEV_PSAUX is not set
 CONFIG_INPUT_EVDEV=y
 CONFIG_INPUT_EVBUG=m
@@ -137,11 +161,12 @@ CONFIG_TOUCHSCREEN_EGALAX=y
 CONFIG_TOUCHSCREEN_ELAN=y
 CONFIG_TOUCHSCREEN_MAX11801=y
 CONFIG_TOUCHSCREEN_MC13783=y
+CONFIG_TOUCHSCREEN_TSC2007=y
+CONFIG_TOUCHSCREEN_STMPE=y
 CONFIG_INPUT_MISC=y
 CONFIG_INPUT_MMA8450=y
 CONFIG_INPUT_ISL29023=y
 CONFIG_SERIO_SERPORT=m
-CONFIG_VT_HW_CONSOLE_BINDING=y
 # CONFIG_LEGACY_PTYS is not set
 # CONFIG_DEVKMEM is not set
 CONFIG_SERIAL_IMX=y
@@ -149,7 +174,6 @@ CONFIG_SERIAL_IMX_CONSOLE=y
 CONFIG_SERIAL_FSL_LPUART=y
 CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
 CONFIG_FSL_OTP=y
-CONFIG_MXS_VIIM=y
 # CONFIG_I2C_COMPAT is not set
 CONFIG_I2C_CHARDEV=y
 # CONFIG_I2C_HELPER_AUTO is not set
@@ -159,10 +183,8 @@ CONFIG_I2C_IMX=y
 CONFIG_SPI=y
 CONFIG_SPI_IMX=y
 CONFIG_GPIO_SYSFS=y
-CONFIG_GPIO_MAX732X=y
 CONFIG_POWER_SUPPLY=y
 CONFIG_SABRESD_MAX8903=y
-CONFIG_IMX6_USB_CHARGER=y
 CONFIG_SENSORS_MAX17135=y
 CONFIG_SENSORS_MAG3110=y
 CONFIG_THERMAL=y
@@ -176,34 +198,39 @@ CONFIG_MFD_MC13XXX_SPI=y
 CONFIG_MFD_MC13XXX_I2C=y
 CONFIG_MFD_MAX17135=y
 CONFIG_MFD_SI476X_CORE=y
+CONFIG_MFD_STMPE=y
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_FIXED_VOLTAGE=y
-CONFIG_REGULATOR_DA9052=y
 CONFIG_REGULATOR_ANATOP=y
+CONFIG_REGULATOR_DA9052=y
+CONFIG_REGULATOR_MAX17135=y
 CONFIG_REGULATOR_MC13783=y
 CONFIG_REGULATOR_MC13892=y
-CONFIG_REGULATOR_MAX17135=y
 CONFIG_REGULATOR_PFUZE100=y
 CONFIG_MEDIA_SUPPORT=y
 CONFIG_MEDIA_CAMERA_SUPPORT=y
 CONFIG_MEDIA_RADIO_SUPPORT=y
-CONFIG_VIDEO_V4L2_INT_DEVICE=y
+CONFIG_MEDIA_RC_SUPPORT=y
+CONFIG_RC_DEVICES=y
+CONFIG_IR_GPIO_CIR=y
 CONFIG_MEDIA_USB_SUPPORT=y
 CONFIG_USB_VIDEO_CLASS=m
 CONFIG_V4L_PLATFORM_DRIVERS=y
 CONFIG_VIDEO_MXC_OUTPUT=y
 CONFIG_VIDEO_MXC_CAPTURE=m
-CONFIG_VIDEO_MXC_CSI_CAMERA=m
 CONFIG_MXC_CAMERA_OV5640=m
 CONFIG_MXC_CAMERA_OV5642=m
 CONFIG_MXC_CAMERA_OV5640_MIPI=m
 CONFIG_MXC_TVIN_ADV7180=m
-CONFIG_MXC_VADC=m
 CONFIG_MXC_IPU_DEVICE_QUEUE_SDC=m
 CONFIG_VIDEO_MXC_IPU_OUTPUT=y
 CONFIG_VIDEO_MXC_PXP_V4L2=y
+CONFIG_VIDEO_MXC_CSI_CAMERA=m
+CONFIG_MXC_VADC=m
 CONFIG_SOC_CAMERA=y
 CONFIG_VIDEO_MX3=y
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+CONFIG_VIDEO_CODA=y
 CONFIG_RADIO_SI476X=y
 CONFIG_SOC_CAMERA_OV2640=y
 CONFIG_DRM=y
@@ -227,9 +254,6 @@ CONFIG_FB_MXC_DCIC=m
 CONFIG_HANNSTAR_CABC=y
 CONFIG_FRAMEBUFFER_CONSOLE=y
 CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-CONFIG_FONTS=y
-CONFIG_FONT_8x8=y
-CONFIG_FONT_8x16=y
 CONFIG_LOGO=y
 CONFIG_SOUND=y
 CONFIG_SND=y
@@ -240,23 +264,43 @@ CONFIG_SND_SOC_EUKREA_TLV320=y
 CONFIG_SND_SOC_IMX_CS42888=y
 CONFIG_SND_SOC_IMX_WM8962=y
 CONFIG_SND_SOC_IMX_SGTL5000=y
+CONFIG_SND_SOC_IMX_MQS=y
 CONFIG_SND_SOC_IMX_SPDIF=y
 CONFIG_SND_SOC_IMX_MC13783=y
 CONFIG_SND_SOC_IMX_HDMI=y
 CONFIG_SND_SOC_IMX_SI476X=y
-CONFIG_SND_SOC_CS42XX8_I2C=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_MXC=y
+CONFIG_USB_ACM=m
 CONFIG_USB_STORAGE=y
 CONFIG_USB_CHIPIDEA=y
 CONFIG_USB_CHIPIDEA_UDC=y
 CONFIG_USB_CHIPIDEA_HOST=y
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_EHSET_TEST_FIXTURE=m
 CONFIG_NOP_USB_XCEIV=y
 CONFIG_USB_MXS_PHY=y
 CONFIG_USB_GADGET=y
+CONFIG_USB_CONFIGFS=m
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_MASS_STORAGE=y
+CONFIG_USB_CONFIGFS_F_LB_SS=y
+CONFIG_USB_CONFIGFS_F_FS=y
 CONFIG_USB_ZERO=m
 CONFIG_USB_ETH=m
 CONFIG_USB_G_NCM=m
+CONFIG_USB_GADGETFS=m
 CONFIG_USB_MASS_STORAGE=m
 CONFIG_USB_G_SERIAL=m
 CONFIG_MMC=y
@@ -266,13 +310,16 @@ CONFIG_MMC_SDHCI_PLTFM=y
 CONFIG_MMC_SDHCI_ESDHC_IMX=y
 CONFIG_MXC_IPU=y
 CONFIG_MXC_GPU_VIV=y
-CONFIG_MXC_ASRC=y
 CONFIG_MXC_MIPI_CSI2=y
 CONFIG_MXC_MLB150=m
 CONFIG_NEW_LEDS=y
 CONFIG_LEDS_CLASS=y
 CONFIG_LEDS_GPIO=y
 CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=y
+CONFIG_LEDS_TRIGGER_ONESHOT=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+CONFIG_LEDS_TRIGGER_BACKLIGHT=y
 CONFIG_LEDS_TRIGGER_GPIO=y
 CONFIG_RTC_CLASS=y
 CONFIG_RTC_INTF_DEV_UIE_EMUL=y
@@ -284,7 +331,7 @@ CONFIG_MXC_PXP_V2=y
 CONFIG_IMX_SDMA=y
 CONFIG_MXS_DMA=y
 CONFIG_STAGING=y
-CONFIG_COMMON_CLK_DEBUG=y
+CONFIG_STAGING_MEDIA=y
 # CONFIG_IOMMU_SUPPORT is not set
 CONFIG_IIO=y
 CONFIG_VF610_ADC=y
@@ -324,6 +371,7 @@ CONFIG_NLS_ASCII=y
 CONFIG_NLS_ISO8859_1=y
 CONFIG_NLS_ISO8859_15=m
 CONFIG_NLS_UTF8=y
+CONFIG_DEBUG_FS=y
 CONFIG_MAGIC_SYSRQ=y
 # CONFIG_SCHED_DEBUG is not set
 # CONFIG_DEBUG_BUGVERBOSE is not set
@@ -331,11 +379,9 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_SECURITYFS=y
 CONFIG_CRYPTO_USER=y
 CONFIG_CRYPTO_TEST=m
-CONFIG_CRYPTO_CCM=y
 CONFIG_CRYPTO_GCM=y
 CONFIG_CRYPTO_CBC=y
 CONFIG_CRYPTO_CTS=y
-CONFIG_CRYPTO_ECB=y
 CONFIG_CRYPTO_LRW=y
 CONFIG_CRYPTO_XTS=y
 CONFIG_CRYPTO_MD4=y
@@ -346,7 +392,6 @@ CONFIG_CRYPTO_RMD160=y
 CONFIG_CRYPTO_RMD256=y
 CONFIG_CRYPTO_RMD320=y
 CONFIG_CRYPTO_SHA1=y
-CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=y
 CONFIG_CRYPTO_TGR192=y
 CONFIG_CRYPTO_WP512=y
@@ -363,3 +408,6 @@ CONFIG_CRC_CCITT=m
 CONFIG_CRC_T10DIF=y
 CONFIG_CRC7=m
 CONFIG_LIBCRC32C=m
+CONFIG_FONTS=y
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt_3.10.31.bb b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt_3.10.31.bb
deleted file mode 100644 (file)
index 7724b7b..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-# Adapted from linux-imx_3.10.31.bb
-
-SUMMARY = "Linux real-time kernel based on linux-imx"
-DESCRIPTION = "Linux kernel that is based on Freescale's linux-imx, \
-with added real-time capabilities."
-
-require recipes-kernel/linux/linux-imx.inc
-require recipes-kernel/linux/linux-dtb.inc
-
-DEPENDS += "lzop-native bc-native"
-
-SRCBRANCH = "imx_3.10.31_1.1.0_beta2"
-SRCREV = "30ad12bdf93050a5bae1345bd40dba5f2d63f70f"
-LOCALVERSION = "-1.1.0_beta2"
-
-SRC_URI += "\
-       file://0001-ARM-clk-imx6q-fix-video-divider-for-revision-1.0-of-.patch \
-       https://www.kernel.org/pub/linux/kernel/projects/rt/3.10/older/patch-3.10.27-rt25.patch.gz;name=rt-patch1 \
-       file://0001-fix-build.patch \
-       file://0002-fix-build-with-rt-enabled.patch \
-       file://0003-no-split-ptlocks.patch \
-"
-
-SRC_URI[rt-patch1.md5sum] = "aa231425f2a43220b5e8dbb057c7e5f9"
-SRC_URI[rt-patch1.sha256sum] = "5fbee5cdf260db9b7751651ab141fb59f46d68c7aecfc32e81a2b5d702f47aac"
-
-COMPATIBLE_MACHINE = "(mx6)"
diff --git a/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt_3.14.28.bb b/meta-fsl-arm/recipes-kernel/linux/linux-imx-rt_3.14.28.bb
new file mode 100644 (file)
index 0000000..f5cb580
--- /dev/null
@@ -0,0 +1,31 @@
+# Adapted from linux-imx_3.14.28.bb
+
+SUMMARY = "Linux real-time kernel based on linux-imx"
+DESCRIPTION = "Linux kernel that is based on Freescale's linux-imx, \
+with added real-time capabilities."
+
+require recipes-kernel/linux/linux-imx.inc
+require recipes-kernel/linux/linux-dtb.inc
+
+DEPENDS += "lzop-native bc-native"
+
+SRCBRANCH = "imx_3.14.28_1.0.0_ga"
+SRCREV = "91cf351a2afc17ac4a260e4d2ad1e32d00925a1b"
+LOCALVERSION = "-1.0.0_ga"
+
+SRC_URI += "\
+    file://0001-ARM-imx6q-drop-unnecessary-semicolon.patch \
+    file://0002-ARM-clk-imx6q-fix-video-divider-for-rev-T0-1.0.patch \
+    file://0003-ARM-imx6sl-Disable-imx6sl-specific-code-when-imx6sl-.patch \
+    file://0004-mmc-sdhci-esdhc-imx-Fixup-runtime-PM-conditions-duri.patch \
+    file://0005-Revert-net-fec-fix-the-warning-found-by-dma-debug.patch \
+    https://www.kernel.org/pub/linux/kernel/projects/rt/3.14/older/patch-3.14.28-rt25.patch.gz;name=rt-patch1 \
+    file://0001-fix-build.patch \
+    file://0002-fix-build-with-rt-enabled.patch \
+    file://0003-no-split-ptlocks.patch \
+"
+
+SRC_URI[rt-patch1.md5sum] = "28bfd1e14ccab1ea1fb48f56f982d80c"
+SRC_URI[rt-patch1.sha256sum] = "4c9bd426cf559a99e169208df5535fcb18ec98daec73f148c88859a7c3333e52"
+
+COMPATIBLE_MACHINE = "(mx6)"