From 9635f396c036bd844a91407a57372a368a710908 Mon Sep 17 00:00:00 2001 From: Naveen Ramaraj <nramaraj@codeaurora.org> Date: Tue, 18 Aug 2015 15:09:08 -0700 Subject: [PATCH] msm: rpm-master-stat: Modify RPM master stats platform data Currently each master stats are placed in RPM message RAM at a fixed offset location. This can be varied across different platforms. Hence adding a 'master_offset' variable to platform data. This avoids the hard coding of offset value in rpm master stats driver. Cherry-Picked-From: codeaurora.org msm-3.4 commit: 2f9390a4 CRs-Fixed: 517589 Change-Id: Ifb89b518930022a735495622712f694a987f47f3 Signed-off-by: Murali Nalajala <mnalajal@codeaurora.org> Signed-off-by: Naveen Ramaraj <nramaraj@codeaurora.org> --- arch/arm/mach-msm/devices-8064.c | 5 +++-- arch/arm/mach-msm/devices-8930.c | 5 +++-- arch/arm/mach-msm/devices-8960.c | 5 +++-- arch/arm/mach-msm/devices-9615.c | 5 +++-- arch/arm/mach-msm/rpm_master_stat.c | 6 +++--- arch/arm/mach-msm/rpm_stats.h | 8 +++++--- 6 files changed, 20 insertions(+), 14 deletions(-) diff --git a/arch/arm/mach-msm/devices-8064.c b/arch/arm/mach-msm/devices-8064.c index 4daccb1fd4b7..2fd1bf30bdea 100644 --- a/arch/arm/mach-msm/devices-8064.c +++ b/arch/arm/mach-msm/devices-8064.c @@ -2634,11 +2634,12 @@ static char *master_names[] = { static struct msm_rpm_master_stats_platform_data msm_rpm_master_stat_pdata = { .masters = master_names, - .nomasters = ARRAY_SIZE(master_names), + .num_masters = ARRAY_SIZE(master_names), + .master_offset = 32, }; struct platform_device apq8064_rpm_master_stat_device = { - .name = "msm_rpm_master_stat", + .name = "msm_rpm_master_stats", .id = -1, .num_resources = ARRAY_SIZE(resources_rpm_master_stats), .resource = resources_rpm_master_stats, diff --git a/arch/arm/mach-msm/devices-8930.c b/arch/arm/mach-msm/devices-8930.c index e2a57f911faf..c4fe0df6837f 100644 --- a/arch/arm/mach-msm/devices-8930.c +++ b/arch/arm/mach-msm/devices-8930.c @@ -610,11 +610,12 @@ static char *master_names[] = { static struct msm_rpm_master_stats_platform_data msm_rpm_master_stat_pdata = { .masters = master_names, - .nomasters = ARRAY_SIZE(master_names), + .num_masters = ARRAY_SIZE(master_names), + .master_offset = 32, }; struct platform_device msm8930_rpm_master_stat_device = { - .name = "msm_rpm_master_stat", + .name = "msm_rpm_master_stats", .id = -1, .num_resources = ARRAY_SIZE(resources_rpm_master_stats), .resource = resources_rpm_master_stats, diff --git a/arch/arm/mach-msm/devices-8960.c b/arch/arm/mach-msm/devices-8960.c index 71f58a67dc9f..6664e17dadbf 100644 --- a/arch/arm/mach-msm/devices-8960.c +++ b/arch/arm/mach-msm/devices-8960.c @@ -4018,11 +4018,12 @@ static char *master_names[] = { static struct msm_rpm_master_stats_platform_data msm_rpm_master_stat_pdata = { .masters = master_names, - .nomasters = ARRAY_SIZE(master_names), + .num_masters = ARRAY_SIZE(master_names), + .master_offset = 32, }; struct platform_device msm8960_rpm_master_stat_device = { - .name = "msm_rpm_master_stat", + .name = "msm_rpm_master_stats", .id = -1, .num_resources = ARRAY_SIZE(resources_rpm_master_stats), .resource = resources_rpm_master_stats, diff --git a/arch/arm/mach-msm/devices-9615.c b/arch/arm/mach-msm/devices-9615.c index 483d8b387343..6a486467131c 100644 --- a/arch/arm/mach-msm/devices-9615.c +++ b/arch/arm/mach-msm/devices-9615.c @@ -1431,11 +1431,12 @@ static char *master_names[] = { static struct msm_rpm_master_stats_platform_data msm_rpm_master_stat_pdata = { .masters = master_names, - .nomasters = ARRAY_SIZE(master_names), + .num_masters = ARRAY_SIZE(master_names), + .master_offset = 32, }; struct platform_device msm9615_rpm_master_stat_device = { - .name = "msm_rpm_master_stat", + .name = "msm_rpm_master_stats", .id = -1, .num_resources = ARRAY_SIZE(resources_rpm_master_stats), .resource = resources_rpm_master_stats, diff --git a/arch/arm/mach-msm/rpm_master_stat.c b/arch/arm/mach-msm/rpm_master_stat.c index 49a1039c5f07..a8a965e0a6d8 100644 --- a/arch/arm/mach-msm/rpm_master_stat.c +++ b/arch/arm/mach-msm/rpm_master_stat.c @@ -1,4 +1,4 @@ -/* Copyright (c) 2012, The Linux Foundation. All rights reserved. +/* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -170,7 +170,7 @@ static int msm_rpm_master_stats_file_open(struct inode *inode, } prvdata->len = 0; - prvdata->nomasters = pdata->nomasters; + prvdata->nomasters = pdata->num_masters; prvdata->master_names = pdata->masters; prvdata->platform_data = pdata; return 0; @@ -223,7 +223,7 @@ static struct platform_driver msm_rpm_master_stats_driver = { .probe = msm_rpm_master_stats_probe, .remove = __devexit_p(msm_rpm_master_stats_remove), .driver = { - .name = "msm_rpm_master_stat", + .name = "msm_rpm_master_stats", .owner = THIS_MODULE, }, }; diff --git a/arch/arm/mach-msm/rpm_stats.h b/arch/arm/mach-msm/rpm_stats.h index c1dfe3492450..34c1b99f1264 100644 --- a/arch/arm/mach-msm/rpm_stats.h +++ b/arch/arm/mach-msm/rpm_stats.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2011-2012, The Linux Foundation. All rights reserved. +/* Copyright (c) 2011-2013, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and @@ -31,9 +31,11 @@ struct msm_rpm_master_stats_platform_data { * it allocates 256 bytes for this use. * No of masters differs for different targets. * Based on the number of masters, linux rpm stat - * driver reads (32 * nomasters) bytes to display + * driver reads (32 * num_masters) bytes to display * master stats. */ - u32 nomasters; + s32 num_masters; + u32 master_offset; + u32 version; }; #endif -- GitLab