From: Nishanth Menon <nm@ti.com>
To: linux-pm <linux-pm@lists.linux-foundation.org>
Cc: Todd <toddpoynor@google.com>, Rafael <rjw@sisk.pl>,
linux-omap <linux-omap@vger.kernel.org>,
Nishanth Menon <nm@ti.com>
Subject: [PATCH V2] PM: OPP: introduce function to free cpufreq table
Date: Wed, 25 May 2011 00:43:26 -0700 [thread overview]
Message-ID: <1306309406-3299-1-git-send-email-nm@ti.com> (raw)
In-Reply-To: <[PATCH] PM: OPP: introduce function to free cpufreq table>
cpufreq table allocated by opp_init_cpufreq_table is better
freed by OPP layer itself. This allows future modifications to
the table handling to be transparent to the users.
Signed-off-by: Nishanth Menon <nm@ti.com>
---
V2: removed lock of free.
V1: http://marc.info/?t=130619241700001&r=1&w=2
Example discussion: http://marc.info/?t=130570440600005&r=1&w=2
Documentation/power/opp.txt | 2 ++
drivers/base/power/opp.c | 17 +++++++++++++++++
include/linux/opp.h | 8 ++++++++
3 files changed, 27 insertions(+), 0 deletions(-)
diff --git a/Documentation/power/opp.txt b/Documentation/power/opp.txt
index 5ae70a1..3035d00 100644
--- a/Documentation/power/opp.txt
+++ b/Documentation/power/opp.txt
@@ -321,6 +321,8 @@ opp_init_cpufreq_table - cpufreq framework typically is initialized with
addition to CONFIG_PM as power management feature is required to
dynamically scale voltage and frequency in a system.
+opp_free_cpufreq_table - Free up the table allocated by opp_init_cpufreq_table
+
7. Data Structures
==================
Typically an SoC contains multiple voltage domains which are variable. Each
diff --git a/drivers/base/power/opp.c b/drivers/base/power/opp.c
index 56a6899..5cc1232 100644
--- a/drivers/base/power/opp.c
+++ b/drivers/base/power/opp.c
@@ -625,4 +625,21 @@ int opp_init_cpufreq_table(struct device *dev,
return 0;
}
+
+/**
+ * opp_free_cpufreq_table() - free the cpufreq table
+ * @dev: device for which we do this operation
+ * @table: table to free
+ *
+ * Free up the table allocated by opp_init_cpufreq_table
+ */
+void opp_free_cpufreq_table(struct device *dev,
+ struct cpufreq_frequency_table **table)
+{
+ if (!table)
+ return;
+
+ kfree(*table);
+ *table = NULL;
+}
#endif /* CONFIG_CPU_FREQ */
diff --git a/include/linux/opp.h b/include/linux/opp.h
index 5449945..7020e97 100644
--- a/include/linux/opp.h
+++ b/include/linux/opp.h
@@ -94,12 +94,20 @@ static inline int opp_disable(struct device *dev, unsigned long freq)
#if defined(CONFIG_CPU_FREQ) && defined(CONFIG_PM_OPP)
int opp_init_cpufreq_table(struct device *dev,
struct cpufreq_frequency_table **table);
+void opp_free_cpufreq_table(struct device *dev,
+ struct cpufreq_frequency_table **table);
#else
static inline int opp_init_cpufreq_table(struct device *dev,
struct cpufreq_frequency_table **table)
{
return -EINVAL;
}
+
+static inline
+void opp_free_cpufreq_table(struct device *dev,
+ struct cpufreq_frequency_table **table)
+{
+}
#endif /* CONFIG_CPU_FREQ */
#endif /* __LINUX_OPP_H__ */
--
1.7.1
next parent reply other threads:[~2011-05-25 7:43 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <[PATCH] PM: OPP: introduce function to free cpufreq table>
2011-05-25 7:43 ` Nishanth Menon [this message]
2011-05-25 18:24 ` [PATCH V2] PM: OPP: introduce function to free cpufreq table Kevin Hilman
2011-05-25 18:24 ` Kevin Hilman
2011-06-10 22:06 ` Rafael J. Wysocki
2011-06-10 22:06 ` Rafael J. Wysocki
2011-05-25 7:43 ` Nishanth Menon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1306309406-3299-1-git-send-email-nm@ti.com \
--to=nm@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=rjw@sisk.pl \
--cc=toddpoynor@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.