From 3c758839f2b035898f90be490c848a4291231ad1 Mon Sep 17 00:00:00 2001 From: Mekala Natarajan <mekalan@codeaurora.org> Date: Tue, 1 Apr 2014 15:11:58 -0700 Subject: [PATCH] ARM: dts: msm: Add support for UIO devices for RemoteFS for APQ8064 The RemoteFS server now uses the UIO driver. So add the UIO device for APQ8064 CRs-Fixed: 592586 Bug: 12784954 Change-Id: Ia0d643a10827869bfe527bf15ba064842e509487 Signed-off-by: Pratibhasagar V <pratibha@codeaurora.org> Signed-off-by: Mekala Natarajan <mekalan@codeaurora.org> --- arch/arm/mach-msm/board-8064-storage.c | 4 +++- arch/arm/mach-msm/board-8064.h | 1 + arch/arm/mach-msm/devices-8064.c | 24 ++++++++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-msm/board-8064-storage.c b/arch/arm/mach-msm/board-8064-storage.c index 6f7149271b48..0819424d8482 100644 --- a/arch/arm/mach-msm/board-8064-storage.c +++ b/arch/arm/mach-msm/board-8064-storage.c @@ -332,8 +332,10 @@ static struct mmc_platform_data *apq8064_sdc4_pdata; void __init apq8064_init_mmc(void) { - if (apq8064_sdc1_pdata) + if (apq8064_sdc1_pdata) { apq8064_add_sdcc(1, apq8064_sdc1_pdata); + apq8064_add_uio(); + } if (apq8064_sdc2_pdata) apq8064_add_sdcc(2, apq8064_sdc2_pdata); diff --git a/arch/arm/mach-msm/board-8064.h b/arch/arm/mach-msm/board-8064.h index 256fac965fc2..cab700d49bf9 100644 --- a/arch/arm/mach-msm/board-8064.h +++ b/arch/arm/mach-msm/board-8064.h @@ -78,6 +78,7 @@ extern struct regulator_init_data msm8064_saw_regulator_pdata_8821_s1; struct mmc_platform_data; int __init apq8064_add_sdcc(unsigned int controller, struct mmc_platform_data *plat); +int __init apq8064_add_uio(void); void apq8064_init_mmc(void); void apq8064_init_gpiomux(void); diff --git a/arch/arm/mach-msm/devices-8064.c b/arch/arm/mach-msm/devices-8064.c index a17621f21c6e..9fa7360bbbae 100644 --- a/arch/arm/mach-msm/devices-8064.c +++ b/arch/arm/mach-msm/devices-8064.c @@ -1680,6 +1680,30 @@ int __init apq8064_add_sdcc(unsigned int controller, return platform_device_register(pdev); } +#define MSM_UIO_RMTFS_BASE 0x8FF00000 +#define MSM_UIO_RMTFS_END (MSM_UIO_RMTFS_BASE + 0x40000) + +static struct resource msm_device_uio_rmtfs_rsc[] = { + { + .name = "rmtfs", + .flags = IORESOURCE_MEM, + .start = MSM_UIO_RMTFS_BASE, + .end = MSM_UIO_RMTFS_END - 1, + }, +}; + +struct platform_device apq8064_device_uio_rmtfs = { + .name = "msm_sharedmem", + .id = -1, + .num_resources = ARRAY_SIZE(msm_device_uio_rmtfs_rsc), + .resource = msm_device_uio_rmtfs_rsc, +}; + +int __init apq8064_add_uio(void) +{ + return platform_device_register(&apq8064_device_uio_rmtfs); +} + static struct resource resources_sps[] = { { .name = "pipe_mem", -- GitLab