2014-12-01 16:14:21 +00:00
|
|
|
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(+)
|
|
|
|
|
|
|
|
--- a/arch/arm/mach-ixp4xx/fsg-setup.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/fsg-setup.c
|
2014-12-08 12:04:25 +00:00
|
|
|
@@ -142,12 +142,14 @@ static struct platform_device fsg_eth[]
|
2014-12-01 16:14:21 +00:00
|
|
|
.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),
|
|
|
|
},
|
|
|
|
}
|
|
|
|
};
|
|
|
|
--- a/arch/arm/mach-ixp4xx/goramo_mlr.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/goramo_mlr.c
|
|
|
|
@@ -294,10 +294,12 @@ static struct platform_device device_eth
|
|
|
|
.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),
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
--- a/arch/arm/mach-ixp4xx/ixdp425-setup.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/ixdp425-setup.c
|
|
|
|
@@ -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 @@ static struct platform_device ixdp425_et
|
|
|
|
.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),
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
--- a/arch/arm/mach-ixp4xx/nas100d-setup.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/nas100d-setup.c
|
|
|
|
@@ -170,6 +170,7 @@ static struct platform_device nas100d_et
|
|
|
|
.name = "ixp4xx_eth",
|
|
|
|
.id = IXP4XX_ETH_NPEB,
|
|
|
|
.dev.platform_data = nas100d_plat_eth,
|
|
|
|
+ .dev.coherent_dma_mask = DMA_BIT_MASK(32),
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
--- a/arch/arm/mach-ixp4xx/nslu2-setup.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/nslu2-setup.c
|
|
|
|
@@ -182,6 +182,7 @@ static struct platform_device nslu2_eth[
|
|
|
|
.name = "ixp4xx_eth",
|
|
|
|
.id = IXP4XX_ETH_NPEB,
|
|
|
|
.dev.platform_data = nslu2_plat_eth,
|
|
|
|
+ .dev.coherent_dma_mask = DMA_BIT_MASK(32),
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
--- a/arch/arm/mach-ixp4xx/omixp-setup.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/omixp-setup.c
|
|
|
|
@@ -17,6 +17,7 @@
|
|
|
|
#include <linux/serial_8250.h>
|
|
|
|
#include <linux/mtd/mtd.h>
|
|
|
|
#include <linux/mtd/partitions.h>
|
|
|
|
+#include <linux/dma-mapping.h>
|
|
|
|
#ifdef CONFIG_LEDS_CLASS
|
|
|
|
#include <linux/leds.h>
|
|
|
|
#endif
|
|
|
|
@@ -190,10 +191,12 @@ static struct platform_device ixdp425_et
|
|
|
|
.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),
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
|
|
|
--- a/arch/arm/mach-ixp4xx/vulcan-setup.c
|
|
|
|
+++ b/arch/arm/mach-ixp4xx/vulcan-setup.c
|
|
|
|
@@ -139,6 +139,7 @@ static struct platform_device vulcan_eth
|
|
|
|
.id = IXP4XX_ETH_NPEB,
|
|
|
|
.dev = {
|
|
|
|
.platform_data = &vulcan_plat_eth[0],
|
|
|
|
+ .coherent_dma_mask = DMA_BIT_MASK(32),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
[1] = {
|
|
|
|
@@ -146,6 +147,7 @@ static struct platform_device vulcan_eth
|
|
|
|
.id = IXP4XX_ETH_NPEC,
|
|
|
|
.dev = {
|
|
|
|
.platform_data = &vulcan_plat_eth[1],
|
|
|
|
+ .coherent_dma_mask = DMA_BIT_MASK(32),
|
|
|
|
},
|
|
|
|
},
|
|
|
|
};
|