summary refs log tree commit diff
path: root/arch/arm/mach-mx5/mm.c
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2011-06-22 22:41:31 +0800
committerSascha Hauer <s.hauer@pengutronix.de>2011-07-07 10:01:12 +0200
commit2e534b21a51bad9d1fad125adac6ad49e64e1d7a (patch)
tree5320494ec94dd8a7a243c76d0cd93d663e2d23c3 /arch/arm/mach-mx5/mm.c
parent3622360430e90d47a0d028dd5333a13771589331 (diff)
downloadlinux-2e534b21a51bad9d1fad125adac6ad49e64e1d7a.tar.gz
dmaengine: imx-sdma: pass sdma firmware name via platform data
It is not good to have cpu_name and to_version encoded into sdma
firmware name as variables.  For example, there are three TOs of
imx51 soc, the sdma script never changes since TO1, which means
all three TOs of imx51 uses TO1 version of sdma script.  But we
have to prepare three identical firmwares, sdma-imx51-to1.bin
sdma-imx51-to2.bin and sdma-imx51-to3.bin, to have the kernel
capable of running on all three TOs.

The patch removes cpu_name and to_version from sdma platform data,
and instead uses fw_name to pass the firmware name, so that we can
pass the TO version where it's relevant and skip it where only one
firmware exists.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx5/mm.c')
-rw-r--r--arch/arm/mach-mx5/mm.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/arch/arm/mach-mx5/mm.c b/arch/arm/mach-mx5/mm.c
index aa848ea987e8..1b7059f1ac76 100644
--- a/arch/arm/mach-mx5/mm.c
+++ b/arch/arm/mach-mx5/mm.c
@@ -116,8 +116,7 @@ static struct sdma_script_start_addrs imx51_sdma_script __initdata = {
 
 static struct sdma_platform_data imx51_sdma_pdata __initdata = {
 	.sdma_version = 2,
-	.cpu_name = "imx51",
-	.to_version = 1,
+	.fw_name = "sdma-imx51.bin",
 	.script_addrs = &imx51_sdma_script,
 };
 
@@ -137,21 +136,17 @@ static struct sdma_script_start_addrs imx53_sdma_script __initdata = {
 
 static struct sdma_platform_data imx53_sdma_pdata __initdata = {
 	.sdma_version = 2,
-	.cpu_name = "imx53",
-	.to_version = 1,
+	.fw_name = "sdma-imx53.bin",
 	.script_addrs = &imx53_sdma_script,
 };
 
 void __init imx51_soc_init(void)
 {
-	int to_version = mx51_revision() >> 4;
-
 	mxc_register_gpio(0, MX51_GPIO1_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO1_LOW, MX51_MXC_INT_GPIO1_HIGH);
 	mxc_register_gpio(1, MX51_GPIO2_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO2_LOW, MX51_MXC_INT_GPIO2_HIGH);
 	mxc_register_gpio(2, MX51_GPIO3_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO3_LOW, MX51_MXC_INT_GPIO3_HIGH);
 	mxc_register_gpio(3, MX51_GPIO4_BASE_ADDR, SZ_16K, MX51_MXC_INT_GPIO4_LOW, MX51_MXC_INT_GPIO4_HIGH);
 
-	imx51_sdma_pdata.to_version = to_version;
 	imx_add_imx_sdma(MX51_SDMA_BASE_ADDR, MX51_INT_SDMA, &imx51_sdma_pdata);
 }