Add support for i.MX 7Dual and i.MX 6QuadPlus SoC.
Note that defconfig is same for mx6 and mx7 so changing
defconfig diretory to imx to use for both.
Signed-off-by: Lauren Post <lauren.post@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
+++ /dev/null
-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
-
+++ /dev/null
-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
-
+++ /dev/null
-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
-
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_SOC_IMX6Q=y
CONFIG_SOC_IMX6SL=y
CONFIG_SOC_IMX6SX=y
+CONFIG_SOC_IMX7D=y
CONFIG_SOC_VF610=y
# CONFIG_SWP_EMULATE is not set
CONFIG_SMP=y
+CONFIG_HAVE_ARM_ARCH_TIMER=y
CONFIG_VMSPLIT_2G=y
CONFIG_PREEMPT=y
CONFIG_AEABI=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=y
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
CONFIG_ARM_IMX6Q_CPUFREQ=y
+CONFIG_ARM_IMX7D_CPUFREQ=y
CONFIG_CPU_IDLE=y
CONFIG_VFP=y
CONFIG_NEON=y
CONFIG_I2C_ALGOPCA=m
CONFIG_I2C_IMX=y
CONFIG_SPI=y
+CONFIG_SPI_GPIO=y
CONFIG_SPI_IMX=y
CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_MAX732X=y
+CONFIG_GPIO_74X164=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
CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y
CONFIG_FB_MXC_HDMI=y
CONFIG_FB_MXC_EINK_PANEL=y
+CONFIG_FB_MXC_EINK_V2_PANEL=y
CONFIG_FB_MXS_SII902X=y
CONFIG_FB_MXC_DCIC=m
CONFIG_HANNSTAR_CABC=y
CONFIG_SND_IMX_SOC=y
CONFIG_SND_SOC_EUKREA_TLV320=y
CONFIG_SND_SOC_IMX_CS42888=y
+CONFIG_SND_SOC_IMX_SII902X=y
+CONFIG_SND_SOC_IMX_WM8958=y
+CONFIG_SND_SOC_IMX_WM8960=y
CONFIG_SND_SOC_IMX_WM8962=y
CONFIG_SND_SOC_IMX_SGTL5000=y
CONFIG_SND_SOC_IMX_MQS=y
CONFIG_SND_SOC_IMX_HDMI=y
CONFIG_SND_SOC_IMX_SI476X=y
CONFIG_USB=y
+CONFIG_USB_OTG_FSM=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_MXC=y
CONFIG_USB_ACM=m
CONFIG_MMC_SDHCI_ESDHC_IMX=y
CONFIG_MXC_IPU=y
CONFIG_MXC_GPU_VIV=y
+CONFIG_MXC_IPU_V3_PRE=y
CONFIG_MXC_MIPI_CSI2=y
CONFIG_MXC_MLB150=m
+CONFIG_MXC_SIM=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_RTC_DRV_SNVS=y
CONFIG_DMADEVICES=y
CONFIG_MXC_PXP_V2=y
+CONFIG_MXC_PXP_V3=y
CONFIG_IMX_SDMA=y
CONFIG_MXS_DMA=y
CONFIG_STAGING=y
# CONFIG_IOMMU_SUPPORT is not set
CONFIG_IIO=y
CONFIG_VF610_ADC=y
+CONFIG_AD2802A=y
CONFIG_PWM=y
CONFIG_PWM_IMX=y
CONFIG_EXT2_FS=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_BUGVERBOSE is not set
# CONFIG_FTRACE is not set
+CONFIG_CORESIGHT=y
+CONFIG_CORESIGHT_LINK_AND_SINK_TMC=y
+CONFIG_CORESIGHT_SINK_TPIU=y
+CONFIG_CORESIGHT_SINK_ETBV10=y
+CONFIG_CORESIGHT_SOURCE_ETM3X=y
CONFIG_SECURITYFS=y
CONFIG_CRYPTO_USER=y
CONFIG_CRYPTO_TEST=m
DEPENDS += "lzop-native bc-native"
-SRCBRANCH = "imx_3.14.28_1.0.0_ga"
-LOCALVERSION = "-1.0.0_ga"
-SRCREV = "91cf351a2afc17ac4a260e4d2ad1e32d00925a1b"
+SRCBRANCH = "imx_3.14.38_6qp_beta"
+LOCALVERSION = "-6QP_beta"
+SRCREV = "a4dec7730c98f2639fe250a1a67f782b6f73bdf5"
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 \
"
-COMPATIBLE_MACHINE = "(mx6)"
+COMPATIBLE_MACHINE = "(mx6|mx7)"