ixp4xx: add v3.18 support
[openwrt/svn-archive/archive.git] / target / linux / ixp4xx / patches-3.18 / 001-arm-ixp4xx-set-cohorent_dma_mask-for-ethernet-platfo.patch
diff --git a/target/linux/ixp4xx/patches-3.18/001-arm-ixp4xx-set-cohorent_dma_mask-for-ethernet-platfo.patch b/target/linux/ixp4xx/patches-3.18/001-arm-ixp4xx-set-cohorent_dma_mask-for-ethernet-platfo.patch
new file mode 100644 (file)
index 0000000..495df07
--- /dev/null
@@ -0,0 +1,150 @@
+From 7113f56b683c5123df5c20724ac813cee66fa21a Mon Sep 17 00:00:00 2001
+From: Jonas Gorski <jogo@openwrt.org>
+Date: Mon, 1 Jul 2013 16:49:05 +0200
+Subject: [PATCH 1/2] arm: ixp4xx: set cohorent_dma_mask for ethernet platform
+ devices
+
+ARM requires the cohorent_dma_mask set, so set it for the platform
+devices so that the ethernet driver has access to it.
+
+Signed-off-by: Jonas Gorski <jogo@openwrt.org>
+---
+ arch/arm/mach-ixp4xx/fsg-setup.c     |    2 ++
+ arch/arm/mach-ixp4xx/goramo_mlr.c    |    2 ++
+ arch/arm/mach-ixp4xx/ixdp425-setup.c |    3 +++
+ arch/arm/mach-ixp4xx/nas100d-setup.c |    1 +
+ arch/arm/mach-ixp4xx/nslu2-setup.c   |    1 +
+ arch/arm/mach-ixp4xx/omixp-setup.c   |    3 +++
+ arch/arm/mach-ixp4xx/vulcan-setup.c  |    2 ++
+ 7 files changed, 14 insertions(+)
+
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/fsg-setup.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/fsg-setup.c 2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/fsg-setup.c      2015-02-09 13:54:43.025969682 +0100
+@@ -142,12 +142,14 @@
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev = {
+                       .platform_data  = fsg_plat_eth,
++                      .coherent_dma_mask = DMA_BIT_MASK(32),
+               },
+       }, {
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEC,
+               .dev = {
+                       .platform_data  = fsg_plat_eth + 1,
++                      .coherent_dma_mask = DMA_BIT_MASK(32),
+               },
+       }
+ };
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/goramo_mlr.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/goramo_mlr.c        2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/goramo_mlr.c     2015-02-09 13:54:43.025969682 +0100
+@@ -295,10 +295,12 @@
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev.platform_data      = eth_plat,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }, {
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEC,
+               .dev.platform_data      = eth_plat + 1,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }
+ };
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/ixdp425-setup.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/ixdp425-setup.c     2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/ixdp425-setup.c  2015-02-09 13:54:43.025969682 +0100
+@@ -20,6 +20,7 @@
+ #include <linux/mtd/nand.h>
+ #include <linux/mtd/partitions.h>
+ #include <linux/delay.h>
++#include <linux/dma-mapping.h>
+ #include <linux/gpio.h>
+ #include <asm/types.h>
+ #include <asm/setup.h>
+@@ -196,10 +197,12 @@
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev.platform_data      = ixdp425_plat_eth,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }, {
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEC,
+               .dev.platform_data      = ixdp425_plat_eth + 1,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }
+ };
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/nas100d-setup.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/nas100d-setup.c     2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/nas100d-setup.c  2015-02-09 13:54:43.025969682 +0100
+@@ -170,6 +170,7 @@
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev.platform_data      = nas100d_plat_eth,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }
+ };
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/nslu2-setup.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/nslu2-setup.c       2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/nslu2-setup.c    2015-02-09 13:54:43.025969682 +0100
+@@ -182,6 +182,7 @@
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev.platform_data      = nslu2_plat_eth,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }
+ };
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/omixp-setup.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/omixp-setup.c       2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/omixp-setup.c    2015-02-09 13:55:01.150008153 +0100
+@@ -17,6 +17,7 @@
+ #include <linux/serial_8250.h>
+ #include <linux/mtd/mtd.h>
+ #include <linux/mtd/partitions.h>
++#include <linux/dma-mapping.h>
+ #include <linux/leds.h>
+ #include <asm/setup.h>
+@@ -188,10 +189,12 @@
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev.platform_data      = ixdp425_plat_eth,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       }, {
+               .name                   = "ixp4xx_eth",
+               .id                     = IXP4XX_ETH_NPEC,
+               .dev.platform_data      = ixdp425_plat_eth + 1,
++              .dev.coherent_dma_mask  = DMA_BIT_MASK(32),
+       },
+ };
+Index: linux-3.18.5/arch/arm/mach-ixp4xx/vulcan-setup.c
+===================================================================
+--- linux-3.18.5.orig/arch/arm/mach-ixp4xx/vulcan-setup.c      2015-02-09 13:54:27.000000000 +0100
++++ linux-3.18.5/arch/arm/mach-ixp4xx/vulcan-setup.c   2015-02-09 13:54:43.025969682 +0100
+@@ -139,6 +139,7 @@
+               .id                     = IXP4XX_ETH_NPEB,
+               .dev = {
+                       .platform_data  = &vulcan_plat_eth[0],
++                      .coherent_dma_mask = DMA_BIT_MASK(32),
+               },
+       },
+       [1] = {
+@@ -146,6 +147,7 @@
+               .id                     = IXP4XX_ETH_NPEC,
+               .dev = {
+                       .platform_data  = &vulcan_plat_eth[1],
++                      .coherent_dma_mask = DMA_BIT_MASK(32),
+               },
+       },
+ };