* [PATCH 2/4] ARM: cpuidle: constify return value of arm_cpuidle_get_ops()
2016-03-22 14:42 [PATCH 0/4] ARM: cpuidle: use const and __initconst for cpuidle_ops Jisheng Zhang
@ 2016-03-22 14:42 ` Jisheng Zhang
0 siblings, 0 replies; 6+ messages in thread
From: Jisheng Zhang @ 2016-03-22 14:42 UTC (permalink / raw)
To: linux-arm-kernel
arm_cpuidle_read_ops() just copies '*ops' to cpuidle_ops[cpu], so the
structure '*ops' is not modified at all.
The comment is also updated accordingly.
Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
---
arch/arm/kernel/cpuidle.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/kernel/cpuidle.c b/arch/arm/kernel/cpuidle.c
index 703926e..a44b268e 100644
--- a/arch/arm/kernel/cpuidle.c
+++ b/arch/arm/kernel/cpuidle.c
@@ -70,7 +70,7 @@ int arm_cpuidle_suspend(int index)
*
* Returns a struct cpuidle_ops pointer, NULL if not found.
*/
-static struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
+static const struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
{
struct of_cpuidle_method *m = __cpuidle_method_of_table;
@@ -88,7 +88,7 @@ static struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
*
* Get the method name defined in the 'enable-method' property, retrieve the
* associated cpuidle_ops and do a struct copy. This copy is needed because all
- * cpuidle_ops are tagged __initdata and will be unloaded after the init
+ * cpuidle_ops are tagged __initconst and will be unloaded after the init
* process.
*
* Return 0 on sucess, -ENOENT if no 'enable-method' is defined, -EOPNOTSUPP if
@@ -97,7 +97,7 @@ static struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
static int __init arm_cpuidle_read_ops(struct device_node *dn, int cpu)
{
const char *enable_method;
- struct cpuidle_ops *ops;
+ const struct cpuidle_ops *ops;
enable_method = of_get_property(dn, "enable-method", NULL);
if (!enable_method)
--
2.8.0.rc3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PULL] ARM: cpuidle: changes for 4.7
@ 2016-04-22 8:30 Daniel Lezcano
2016-04-22 8:31 ` [PATCH 1/4] ARM: cpuidle: add const qualifier to cpuidle_ops member in structures Daniel Lezcano
2016-04-26 0:34 ` [PULL] ARM: cpuidle: changes for 4.7 Rafael J. Wysocki
0 siblings, 2 replies; 6+ messages in thread
From: Daniel Lezcano @ 2016-04-22 8:30 UTC (permalink / raw)
To: linux-arm-kernel
Hi Rafael,
please pull the following changes for 4.7.
* Constify the cpuidle_ops structure and the types returned by the
functions using it (Jisheng Zhang)
Thanks !
-- Daniel
The following changes since commit c3b46c73264b03000d1e18b22f5caf63332547c9:
Linux 4.6-rc4 (2016-04-17 19:13:32 -0700)
are available in the git repository at:
http://git.linaro.org/people/daniel.lezcano/linux.git cpuidle/4.7
for you to fetch changes up to 5e7c17df795e462c70a43f1b3b670e08efefe8fd:
drivers: firmware: psci: use const and __initconst for
psci_cpuidle_ops (2016-04-20 10:44:32 +0200)
----------------------------------------------------------------
Jisheng Zhang (4):
ARM: cpuidle: add const qualifier to cpuidle_ops member in structures
ARM: cpuidle: constify return value of arm_cpuidle_get_ops()
soc: qcom: spm: Use const and __initconst for qcom_cpuidle_ops
drivers: firmware: psci: use const and __initconst for
psci_cpuidle_ops
arch/arm/include/asm/cpuidle.h | 2 +-
arch/arm/kernel/cpuidle.c | 6 +++---
drivers/firmware/psci.c | 2 +-
drivers/soc/qcom/spm.c | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/4] ARM: cpuidle: add const qualifier to cpuidle_ops member in structures
2016-04-22 8:30 [PULL] ARM: cpuidle: changes for 4.7 Daniel Lezcano
@ 2016-04-22 8:31 ` Daniel Lezcano
2016-04-22 8:31 ` [PATCH 2/4] ARM: cpuidle: constify return value of arm_cpuidle_get_ops() Daniel Lezcano
2016-04-22 8:31 ` [PATCH 4/4] drivers: firmware: psci: use const and __initconst for psci_cpuidle_ops Daniel Lezcano
2016-04-26 0:34 ` [PULL] ARM: cpuidle: changes for 4.7 Rafael J. Wysocki
1 sibling, 2 replies; 6+ messages in thread
From: Daniel Lezcano @ 2016-04-22 8:31 UTC (permalink / raw)
To: linux-arm-kernel
From: Jisheng Zhang <jszhang@marvell.com>
The core code does not modify smp_operations structures. To clarify it,
this patch adds 'const' qualifier to the 'ops' member of struct
of_cpuidle_method.
This change allows each arm cpuidle code to add 'const' qualifier to
its cpuidle_ops structure.
Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
arch/arm/include/asm/cpuidle.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/include/asm/cpuidle.h b/arch/arm/include/asm/cpuidle.h
index 3848259..baefe1d 100644
--- a/arch/arm/include/asm/cpuidle.h
+++ b/arch/arm/include/asm/cpuidle.h
@@ -36,7 +36,7 @@ struct cpuidle_ops {
struct of_cpuidle_method {
const char *method;
- struct cpuidle_ops *ops;
+ const struct cpuidle_ops *ops;
};
#define CPUIDLE_METHOD_OF_DECLARE(name, _method, _ops) \
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/4] ARM: cpuidle: constify return value of arm_cpuidle_get_ops()
2016-04-22 8:31 ` [PATCH 1/4] ARM: cpuidle: add const qualifier to cpuidle_ops member in structures Daniel Lezcano
@ 2016-04-22 8:31 ` Daniel Lezcano
2016-04-22 8:31 ` [PATCH 4/4] drivers: firmware: psci: use const and __initconst for psci_cpuidle_ops Daniel Lezcano
1 sibling, 0 replies; 6+ messages in thread
From: Daniel Lezcano @ 2016-04-22 8:31 UTC (permalink / raw)
To: linux-arm-kernel
From: Jisheng Zhang <jszhang@marvell.com>
arm_cpuidle_read_ops() just copies '*ops' to cpuidle_ops[cpu], so the
structure '*ops' is not modified at all.
The comment is also updated accordingly.
Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
arch/arm/kernel/cpuidle.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/arm/kernel/cpuidle.c b/arch/arm/kernel/cpuidle.c
index 703926e..a44b268e 100644
--- a/arch/arm/kernel/cpuidle.c
+++ b/arch/arm/kernel/cpuidle.c
@@ -70,7 +70,7 @@ int arm_cpuidle_suspend(int index)
*
* Returns a struct cpuidle_ops pointer, NULL if not found.
*/
-static struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
+static const struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
{
struct of_cpuidle_method *m = __cpuidle_method_of_table;
@@ -88,7 +88,7 @@ static struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
*
* Get the method name defined in the 'enable-method' property, retrieve the
* associated cpuidle_ops and do a struct copy. This copy is needed because all
- * cpuidle_ops are tagged __initdata and will be unloaded after the init
+ * cpuidle_ops are tagged __initconst and will be unloaded after the init
* process.
*
* Return 0 on sucess, -ENOENT if no 'enable-method' is defined, -EOPNOTSUPP if
@@ -97,7 +97,7 @@ static struct cpuidle_ops *__init arm_cpuidle_get_ops(const char *method)
static int __init arm_cpuidle_read_ops(struct device_node *dn, int cpu)
{
const char *enable_method;
- struct cpuidle_ops *ops;
+ const struct cpuidle_ops *ops;
enable_method = of_get_property(dn, "enable-method", NULL);
if (!enable_method)
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 4/4] drivers: firmware: psci: use const and __initconst for psci_cpuidle_ops
2016-04-22 8:31 ` [PATCH 1/4] ARM: cpuidle: add const qualifier to cpuidle_ops member in structures Daniel Lezcano
2016-04-22 8:31 ` [PATCH 2/4] ARM: cpuidle: constify return value of arm_cpuidle_get_ops() Daniel Lezcano
@ 2016-04-22 8:31 ` Daniel Lezcano
1 sibling, 0 replies; 6+ messages in thread
From: Daniel Lezcano @ 2016-04-22 8:31 UTC (permalink / raw)
To: linux-arm-kernel
From: Jisheng Zhang <jszhang@marvell.com>
The psci_cpuidle_ops structures is not over-written, so add "const"
qualifier and replace __initdata with __initconst.
Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
drivers/firmware/psci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/firmware/psci.c b/drivers/firmware/psci.c
index 11bfee8..eb8134a 100644
--- a/drivers/firmware/psci.c
+++ b/drivers/firmware/psci.c
@@ -355,7 +355,7 @@ int psci_cpu_suspend_enter(unsigned long index)
/* ARM specific CPU idle operations */
#ifdef CONFIG_ARM
-static struct cpuidle_ops psci_cpuidle_ops __initdata = {
+static const struct cpuidle_ops psci_cpuidle_ops __initconst = {
.suspend = psci_cpu_suspend_enter,
.init = psci_dt_cpu_init_idle,
};
--
1.9.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PULL] ARM: cpuidle: changes for 4.7
2016-04-22 8:30 [PULL] ARM: cpuidle: changes for 4.7 Daniel Lezcano
2016-04-22 8:31 ` [PATCH 1/4] ARM: cpuidle: add const qualifier to cpuidle_ops member in structures Daniel Lezcano
@ 2016-04-26 0:34 ` Rafael J. Wysocki
1 sibling, 0 replies; 6+ messages in thread
From: Rafael J. Wysocki @ 2016-04-26 0:34 UTC (permalink / raw)
To: linux-arm-kernel
On Friday, April 22, 2016 10:30:05 AM Daniel Lezcano wrote:
> Hi Rafael,
>
> please pull the following changes for 4.7.
>
> * Constify the cpuidle_ops structure and the types returned by the
> functions using it (Jisheng Zhang)
>
> Thanks !
>
> -- Daniel
>
> The following changes since commit c3b46c73264b03000d1e18b22f5caf63332547c9:
>
> Linux 4.6-rc4 (2016-04-17 19:13:32 -0700)
>
> are available in the git repository at:
>
> http://git.linaro.org/people/daniel.lezcano/linux.git cpuidle/4.7
>
> for you to fetch changes up to 5e7c17df795e462c70a43f1b3b670e08efefe8fd:
>
> drivers: firmware: psci: use const and __initconst for
> psci_cpuidle_ops (2016-04-20 10:44:32 +0200)
>
> ----------------------------------------------------------------
> Jisheng Zhang (4):
> ARM: cpuidle: add const qualifier to cpuidle_ops member in structures
> ARM: cpuidle: constify return value of arm_cpuidle_get_ops()
> soc: qcom: spm: Use const and __initconst for qcom_cpuidle_ops
> drivers: firmware: psci: use const and __initconst for
> psci_cpuidle_ops
>
> arch/arm/include/asm/cpuidle.h | 2 +-
> arch/arm/kernel/cpuidle.c | 6 +++---
> drivers/firmware/psci.c | 2 +-
> drivers/soc/qcom/spm.c | 2 +-
> 4 files changed, 6 insertions(+), 6 deletions(-)
Pulled, thanks!
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2016-04-26 0:34 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-22 8:30 [PULL] ARM: cpuidle: changes for 4.7 Daniel Lezcano
2016-04-22 8:31 ` [PATCH 1/4] ARM: cpuidle: add const qualifier to cpuidle_ops member in structures Daniel Lezcano
2016-04-22 8:31 ` [PATCH 2/4] ARM: cpuidle: constify return value of arm_cpuidle_get_ops() Daniel Lezcano
2016-04-22 8:31 ` [PATCH 4/4] drivers: firmware: psci: use const and __initconst for psci_cpuidle_ops Daniel Lezcano
2016-04-26 0:34 ` [PULL] ARM: cpuidle: changes for 4.7 Rafael J. Wysocki
-- strict thread matches above, loose matches on Subject: below --
2016-03-22 14:42 [PATCH 0/4] ARM: cpuidle: use const and __initconst for cpuidle_ops Jisheng Zhang
2016-03-22 14:42 ` [PATCH 2/4] ARM: cpuidle: constify return value of arm_cpuidle_get_ops() Jisheng Zhang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).