[PATCH 2/2] ARM: use const and __initconst for smp_operations
Nicolas Pitre
nicolas.pitre at linaro.org
Tue Nov 24 10:19:20 PST 2015
On Sun, 15 Nov 2015, Masahiro Yamada wrote:
> These smp_operations structures are not over-written, so add "const"
> qualifier and replace __initdata with __initconst.
>
> Also, add "static" where it is possible.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
> Acked-by: Krzysztof Kozlowski <k.kozlowski at samsung.com>
> Acked-by: Maxime Ripard <maxime.ripard at free-electrons.com>
> Acked-by: Moritz Fischer <moritz.fischer at ettus.com>
> ---
Tested with LTO which is rather picky about those things.
Acked-by: Nicolas Pitre <nico at linaro.org>
> arch/arm/common/mcpm_platsmp.c | 2 +-
> arch/arm/include/asm/psci.h | 2 +-
> arch/arm/kernel/psci_smp.c | 2 +-
> arch/arm/mach-alpine/platsmp.c | 2 +-
> arch/arm/mach-axxia/platsmp.c | 2 +-
> arch/arm/mach-bcm/bcm63xx_smp.c | 2 +-
> arch/arm/mach-bcm/kona_smp.c | 2 +-
> arch/arm/mach-bcm/platsmp-brcmstb.c | 2 +-
> arch/arm/mach-berlin/platsmp.c | 2 +-
> arch/arm/mach-exynos/common.h | 2 +-
> arch/arm/mach-exynos/platsmp.c | 2 +-
> arch/arm/mach-hisi/platmcpm.c | 2 +-
> arch/arm/mach-hisi/platsmp.c | 6 +++---
> arch/arm/mach-imx/common.h | 4 ++--
> arch/arm/mach-imx/platsmp.c | 4 ++--
> arch/arm/mach-keystone/keystone.h | 2 +-
> arch/arm/mach-keystone/platsmp.c | 2 +-
> arch/arm/mach-mediatek/platsmp.c | 4 ++--
> arch/arm/mach-mvebu/armada-370-xp.h | 2 +-
> arch/arm/mach-mvebu/platsmp-a9.c | 4 ++--
> arch/arm/mach-mvebu/platsmp.c | 2 +-
> arch/arm/mach-omap2/common.h | 2 +-
> arch/arm/mach-omap2/omap-smp.c | 2 +-
> arch/arm/mach-prima2/common.h | 2 +-
> arch/arm/mach-prima2/platsmp.c | 2 +-
> arch/arm/mach-qcom/platsmp.c | 6 +++---
> arch/arm/mach-realview/core.h | 2 +-
> arch/arm/mach-realview/platsmp.c | 2 +-
> arch/arm/mach-rockchip/platsmp.c | 2 +-
> arch/arm/mach-shmobile/r8a7779.h | 2 +-
> arch/arm/mach-shmobile/r8a7790.h | 2 +-
> arch/arm/mach-shmobile/r8a7791.h | 2 +-
> arch/arm/mach-shmobile/setup-emev2.c | 2 +-
> arch/arm/mach-shmobile/sh73a0.h | 2 +-
> arch/arm/mach-shmobile/smp-emev2.c | 2 +-
> arch/arm/mach-shmobile/smp-r8a7779.c | 2 +-
> arch/arm/mach-shmobile/smp-r8a7790.c | 2 +-
> arch/arm/mach-shmobile/smp-r8a7791.c | 2 +-
> arch/arm/mach-shmobile/smp-sh73a0.c | 2 +-
> arch/arm/mach-socfpga/platsmp.c | 4 ++--
> arch/arm/mach-spear/generic.h | 2 +-
> arch/arm/mach-spear/platsmp.c | 2 +-
> arch/arm/mach-sti/platsmp.c | 2 +-
> arch/arm/mach-sti/smp.h | 2 +-
> arch/arm/mach-sunxi/platsmp.c | 4 ++--
> arch/arm/mach-tegra/common.h | 2 +-
> arch/arm/mach-tegra/platsmp.c | 2 +-
> arch/arm/mach-uniphier/platsmp.c | 2 +-
> arch/arm/mach-ux500/platsmp.c | 2 +-
> arch/arm/mach-vexpress/core.h | 2 +-
> arch/arm/mach-vexpress/platsmp.c | 2 +-
> arch/arm/mach-zx/platsmp.c | 2 +-
> arch/arm/mach-zynq/common.h | 2 +-
> arch/arm/mach-zynq/platsmp.c | 2 +-
> 54 files changed, 64 insertions(+), 64 deletions(-)
>
> diff --git a/arch/arm/common/mcpm_platsmp.c b/arch/arm/common/mcpm_platsmp.c
> index 2b25b60..c773157 100644
> --- a/arch/arm/common/mcpm_platsmp.c
> +++ b/arch/arm/common/mcpm_platsmp.c
> @@ -83,7 +83,7 @@ static void mcpm_cpu_die(unsigned int cpu)
>
> #endif
>
> -static struct smp_operations __initdata mcpm_smp_ops = {
> +static const struct smp_operations mcpm_smp_ops __initconst = {
> .smp_boot_secondary = mcpm_boot_secondary,
> .smp_secondary_init = mcpm_secondary_init,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/include/asm/psci.h b/arch/arm/include/asm/psci.h
> index 68ee3ce..97735a8 100644
> --- a/arch/arm/include/asm/psci.h
> +++ b/arch/arm/include/asm/psci.h
> @@ -14,7 +14,7 @@
> #ifndef __ASM_ARM_PSCI_H
> #define __ASM_ARM_PSCI_H
>
> -extern struct smp_operations psci_smp_ops;
> +extern const struct smp_operations psci_smp_ops;
>
> #ifdef CONFIG_ARM_PSCI
> bool psci_smp_available(void);
> diff --git a/arch/arm/kernel/psci_smp.c b/arch/arm/kernel/psci_smp.c
> index 9d479b2..cb3fcae 100644
> --- a/arch/arm/kernel/psci_smp.c
> +++ b/arch/arm/kernel/psci_smp.c
> @@ -120,7 +120,7 @@ bool __init psci_smp_available(void)
> return (psci_ops.cpu_on != NULL);
> }
>
> -struct smp_operations __initdata psci_smp_ops = {
> +const struct smp_operations psci_smp_ops __initconst = {
> .smp_boot_secondary = psci_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> .cpu_disable = psci_cpu_disable,
> diff --git a/arch/arm/mach-alpine/platsmp.c b/arch/arm/mach-alpine/platsmp.c
> index f78429f..dd77ea2 100644
> --- a/arch/arm/mach-alpine/platsmp.c
> +++ b/arch/arm/mach-alpine/platsmp.c
> @@ -42,7 +42,7 @@ static void __init alpine_smp_prepare_cpus(unsigned int max_cpus)
> alpine_cpu_pm_init();
> }
>
> -static struct smp_operations alpine_smp_ops __initdata = {
> +static const struct smp_operations alpine_smp_ops __initconst = {
> .smp_prepare_cpus = alpine_smp_prepare_cpus,
> .smp_boot_secondary = alpine_boot_secondary,
> };
> diff --git a/arch/arm/mach-axxia/platsmp.c b/arch/arm/mach-axxia/platsmp.c
> index 959d4df..ffbd71d 100644
> --- a/arch/arm/mach-axxia/platsmp.c
> +++ b/arch/arm/mach-axxia/platsmp.c
> @@ -82,7 +82,7 @@ static void __init axxia_smp_prepare_cpus(unsigned int max_cpus)
> }
> }
>
> -static struct smp_operations axxia_smp_ops __initdata = {
> +static const struct smp_operations axxia_smp_ops __initconst = {
> .smp_prepare_cpus = axxia_smp_prepare_cpus,
> .smp_boot_secondary = axxia_boot_secondary,
> };
> diff --git a/arch/arm/mach-bcm/bcm63xx_smp.c b/arch/arm/mach-bcm/bcm63xx_smp.c
> index 19be904..9b6727e 100644
> --- a/arch/arm/mach-bcm/bcm63xx_smp.c
> +++ b/arch/arm/mach-bcm/bcm63xx_smp.c
> @@ -161,7 +161,7 @@ static void __init bcm63138_smp_prepare_cpus(unsigned int max_cpus)
> }
> }
>
> -struct smp_operations bcm63138_smp_ops __initdata = {
> +static const struct smp_operations bcm63138_smp_ops __initconst = {
> .smp_prepare_cpus = bcm63138_smp_prepare_cpus,
> .smp_boot_secondary = bcm63138_smp_boot_secondary,
> };
> diff --git a/arch/arm/mach-bcm/kona_smp.c b/arch/arm/mach-bcm/kona_smp.c
> index 66a0465..da8328b 100644
> --- a/arch/arm/mach-bcm/kona_smp.c
> +++ b/arch/arm/mach-bcm/kona_smp.c
> @@ -194,7 +194,7 @@ static int bcm_boot_secondary(unsigned int cpu, struct task_struct *idle)
> return -ENOSYS;
> }
>
> -static struct smp_operations bcm_smp_ops __initdata = {
> +static const struct smp_operations bcm_smp_ops __initconst = {
> .smp_prepare_cpus = bcm_smp_prepare_cpus,
> .smp_boot_secondary = bcm_boot_secondary,
> };
> diff --git a/arch/arm/mach-bcm/platsmp-brcmstb.c b/arch/arm/mach-bcm/platsmp-brcmstb.c
> index 44d6bddf..40dc844 100644
> --- a/arch/arm/mach-bcm/platsmp-brcmstb.c
> +++ b/arch/arm/mach-bcm/platsmp-brcmstb.c
> @@ -356,7 +356,7 @@ static int brcmstb_boot_secondary(unsigned int cpu, struct task_struct *idle)
> return 0;
> }
>
> -static struct smp_operations brcmstb_smp_ops __initdata = {
> +static const struct smp_operations brcmstb_smp_ops __initconst = {
> .smp_prepare_cpus = brcmstb_cpu_ctrl_setup,
> .smp_boot_secondary = brcmstb_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-berlin/platsmp.c b/arch/arm/mach-berlin/platsmp.c
> index 405cd37..93f9068 100644
> --- a/arch/arm/mach-berlin/platsmp.c
> +++ b/arch/arm/mach-berlin/platsmp.c
> @@ -119,7 +119,7 @@ static int berlin_cpu_kill(unsigned int cpu)
> }
> #endif
>
> -static struct smp_operations berlin_smp_ops __initdata = {
> +static const struct smp_operations berlin_smp_ops __initconst = {
> .smp_prepare_cpus = berlin_smp_prepare_cpus,
> .smp_boot_secondary = berlin_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
> index 1534925..e349a03 100644
> --- a/arch/arm/mach-exynos/common.h
> +++ b/arch/arm/mach-exynos/common.h
> @@ -149,7 +149,7 @@ static inline void exynos_pm_init(void) {}
> extern void exynos_cpu_resume(void);
> extern void exynos_cpu_resume_ns(void);
>
> -extern struct smp_operations exynos_smp_ops;
> +extern const struct smp_operations exynos_smp_ops;
>
> extern void exynos_cpu_power_down(int cpu);
> extern void exynos_cpu_power_up(int cpu);
> diff --git a/arch/arm/mach-exynos/platsmp.c b/arch/arm/mach-exynos/platsmp.c
> index 98a2c0c..5bd9559 100644
> --- a/arch/arm/mach-exynos/platsmp.c
> +++ b/arch/arm/mach-exynos/platsmp.c
> @@ -479,7 +479,7 @@ static void exynos_cpu_die(unsigned int cpu)
> }
> #endif /* CONFIG_HOTPLUG_CPU */
>
> -struct smp_operations exynos_smp_ops __initdata = {
> +const struct smp_operations exynos_smp_ops __initconst = {
> .smp_init_cpus = exynos_smp_init_cpus,
> .smp_prepare_cpus = exynos_smp_prepare_cpus,
> .smp_secondary_init = exynos_secondary_init,
> diff --git a/arch/arm/mach-hisi/platmcpm.c b/arch/arm/mach-hisi/platmcpm.c
> index b5f8f5f..4b653a8 100644
> --- a/arch/arm/mach-hisi/platmcpm.c
> +++ b/arch/arm/mach-hisi/platmcpm.c
> @@ -239,7 +239,7 @@ err:
> }
> #endif
>
> -static struct smp_operations __initdata hip04_smp_ops = {
> +static const struct smp_operations hip04_smp_ops __initconst = {
> .smp_boot_secondary = hip04_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> .cpu_die = hip04_cpu_die,
> diff --git a/arch/arm/mach-hisi/platsmp.c b/arch/arm/mach-hisi/platsmp.c
> index 3c5237d..47ed32c 100644
> --- a/arch/arm/mach-hisi/platsmp.c
> +++ b/arch/arm/mach-hisi/platsmp.c
> @@ -89,7 +89,7 @@ static int hi3xxx_boot_secondary(unsigned int cpu, struct task_struct *idle)
> return 0;
> }
>
> -static struct smp_operations hi3xxx_smp_ops __initdata = {
> +static const struct smp_operations hi3xxx_smp_ops __initconst = {
> .smp_prepare_cpus = hi3xxx_smp_prepare_cpus,
> .smp_boot_secondary = hi3xxx_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> @@ -126,7 +126,7 @@ static int hix5hd2_boot_secondary(unsigned int cpu, struct task_struct *idle)
> }
>
>
> -static struct smp_operations hix5hd2_smp_ops __initdata = {
> +static const struct smp_operations hix5hd2_smp_ops __initconst = {
> .smp_prepare_cpus = hisi_common_smp_prepare_cpus,
> .smp_boot_secondary = hix5hd2_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> @@ -176,7 +176,7 @@ static int hip01_boot_secondary(unsigned int cpu, struct task_struct *idle)
> return 0;
> }
>
> -static struct smp_operations hip01_smp_ops __initdata = {
> +static const struct smp_operations hip01_smp_ops __initconst = {
> .smp_prepare_cpus = hisi_common_smp_prepare_cpus,
> .smp_boot_secondary = hip01_boot_secondary,
> };
> diff --git a/arch/arm/mach-imx/common.h b/arch/arm/mach-imx/common.h
> index e2d5383..32b83f0 100644
> --- a/arch/arm/mach-imx/common.h
> +++ b/arch/arm/mach-imx/common.h
> @@ -153,7 +153,7 @@ void imx_init_l2cache(void);
> static inline void imx_init_l2cache(void) {}
> #endif
>
> -extern struct smp_operations imx_smp_ops;
> -extern struct smp_operations ls1021a_smp_ops;
> +extern const struct smp_operations imx_smp_ops;
> +extern const struct smp_operations ls1021a_smp_ops;
>
> #endif
> diff --git a/arch/arm/mach-imx/platsmp.c b/arch/arm/mach-imx/platsmp.c
> index 7f27001..711dbbd 100644
> --- a/arch/arm/mach-imx/platsmp.c
> +++ b/arch/arm/mach-imx/platsmp.c
> @@ -88,7 +88,7 @@ static void __init imx_smp_prepare_cpus(unsigned int max_cpus)
> sync_cache_w(&g_diag_reg);
> }
>
> -struct smp_operations imx_smp_ops __initdata = {
> +const struct smp_operations imx_smp_ops __initconst = {
> .smp_init_cpus = imx_smp_init_cpus,
> .smp_prepare_cpus = imx_smp_prepare_cpus,
> .smp_boot_secondary = imx_boot_secondary,
> @@ -123,7 +123,7 @@ static void __init ls1021a_smp_prepare_cpus(unsigned int max_cpus)
> iounmap(dcfg_base);
> }
>
> -struct smp_operations ls1021a_smp_ops __initdata = {
> +const struct smp_operations ls1021a_smp_ops __initconst = {
> .smp_prepare_cpus = ls1021a_smp_prepare_cpus,
> .smp_boot_secondary = ls1021a_boot_secondary,
> };
> diff --git a/arch/arm/mach-keystone/keystone.h b/arch/arm/mach-keystone/keystone.h
> index cd04a1c..33eaa03 100644
> --- a/arch/arm/mach-keystone/keystone.h
> +++ b/arch/arm/mach-keystone/keystone.h
> @@ -15,7 +15,7 @@
>
> #ifndef __ASSEMBLER__
>
> -extern struct smp_operations keystone_smp_ops;
> +extern const struct smp_operations keystone_smp_ops;
> extern void secondary_startup(void);
> extern u32 keystone_cpu_smc(u32 command, u32 cpu, u32 addr);
> extern int keystone_pm_runtime_init(void);
> diff --git a/arch/arm/mach-keystone/platsmp.c b/arch/arm/mach-keystone/platsmp.c
> index 4bbb184..5665276 100644
> --- a/arch/arm/mach-keystone/platsmp.c
> +++ b/arch/arm/mach-keystone/platsmp.c
> @@ -39,6 +39,6 @@ static int keystone_smp_boot_secondary(unsigned int cpu,
> return error;
> }
>
> -struct smp_operations keystone_smp_ops __initdata = {
> +const struct smp_operations keystone_smp_ops __initconst = {
> .smp_boot_secondary = keystone_smp_boot_secondary,
> };
> diff --git a/arch/arm/mach-mediatek/platsmp.c b/arch/arm/mach-mediatek/platsmp.c
> index 8141f3f..a1b07ee 100644
> --- a/arch/arm/mach-mediatek/platsmp.c
> +++ b/arch/arm/mach-mediatek/platsmp.c
> @@ -128,13 +128,13 @@ static void __init mtk_smp_prepare_cpus(unsigned int max_cpus)
> __mtk_smp_prepare_cpus(max_cpus, 0);
> }
>
> -static struct smp_operations mt81xx_tz_smp_ops __initdata = {
> +static const struct smp_operations mt81xx_tz_smp_ops __initconst = {
> .smp_prepare_cpus = mtk_tz_smp_prepare_cpus,
> .smp_boot_secondary = mtk_boot_secondary,
> };
> CPU_METHOD_OF_DECLARE(mt81xx_tz_smp, "mediatek,mt81xx-tz-smp", &mt81xx_tz_smp_ops);
>
> -static struct smp_operations mt6589_smp_ops __initdata = {
> +static const struct smp_operations mt6589_smp_ops __initconst = {
> .smp_prepare_cpus = mtk_smp_prepare_cpus,
> .smp_boot_secondary = mtk_boot_secondary,
> };
> diff --git a/arch/arm/mach-mvebu/armada-370-xp.h b/arch/arm/mach-mvebu/armada-370-xp.h
> index c55bbf8..09413b6 100644
> --- a/arch/arm/mach-mvebu/armada-370-xp.h
> +++ b/arch/arm/mach-mvebu/armada-370-xp.h
> @@ -17,7 +17,7 @@
>
> #ifdef CONFIG_SMP
> void armada_xp_secondary_startup(void);
> -extern struct smp_operations armada_xp_smp_ops;
> +extern const struct smp_operations armada_xp_smp_ops;
> #endif
>
> #endif /* __MACH_ARMADA_370_XP_H */
> diff --git a/arch/arm/mach-mvebu/platsmp-a9.c b/arch/arm/mach-mvebu/platsmp-a9.c
> index 3d50004..d715dec 100644
> --- a/arch/arm/mach-mvebu/platsmp-a9.c
> +++ b/arch/arm/mach-mvebu/platsmp-a9.c
> @@ -93,11 +93,11 @@ static int armada_38x_cpu_kill(unsigned int cpu)
> }
> #endif
>
> -static struct smp_operations mvebu_cortex_a9_smp_ops __initdata = {
> +static const struct smp_operations mvebu_cortex_a9_smp_ops __initconst = {
> .smp_boot_secondary = mvebu_cortex_a9_boot_secondary,
> };
>
> -static struct smp_operations armada_38x_smp_ops __initdata = {
> +static const struct smp_operations armada_38x_smp_ops __initconst = {
> .smp_boot_secondary = mvebu_cortex_a9_boot_secondary,
> .smp_secondary_init = armada_38x_secondary_init,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-mvebu/platsmp.c b/arch/arm/mach-mvebu/platsmp.c
> index 58cc8c1..f9597b7 100644
> --- a/arch/arm/mach-mvebu/platsmp.c
> +++ b/arch/arm/mach-mvebu/platsmp.c
> @@ -170,7 +170,7 @@ static int armada_xp_cpu_kill(unsigned int cpu)
> }
> #endif
>
> -struct smp_operations armada_xp_smp_ops __initdata = {
> +const struct smp_operations armada_xp_smp_ops __initconst = {
> .smp_init_cpus = armada_xp_smp_init_cpus,
> .smp_prepare_cpus = armada_xp_smp_prepare_cpus,
> .smp_boot_secondary = armada_xp_boot_secondary,
> diff --git a/arch/arm/mach-omap2/common.h b/arch/arm/mach-omap2/common.h
> index 0cba957..f7666b9 100644
> --- a/arch/arm/mach-omap2/common.h
> +++ b/arch/arm/mach-omap2/common.h
> @@ -270,7 +270,7 @@ extern u32 omap_read_auxcoreboot0(void);
>
> extern void omap4_cpu_die(unsigned int cpu);
>
> -extern struct smp_operations omap4_smp_ops;
> +extern const struct smp_operations omap4_smp_ops;
>
> extern void omap5_secondary_startup(void);
> extern void omap5_secondary_hyp_startup(void);
> diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c
> index 5305ec7..ddcd1d2 100644
> --- a/arch/arm/mach-omap2/omap-smp.c
> +++ b/arch/arm/mach-omap2/omap-smp.c
> @@ -241,7 +241,7 @@ static void __init omap4_smp_prepare_cpus(unsigned int max_cpus)
>
> }
>
> -struct smp_operations omap4_smp_ops __initdata = {
> +const struct smp_operations omap4_smp_ops __initconst = {
> .smp_init_cpus = omap4_smp_init_cpus,
> .smp_prepare_cpus = omap4_smp_prepare_cpus,
> .smp_secondary_init = omap4_secondary_init,
> diff --git a/arch/arm/mach-prima2/common.h b/arch/arm/mach-prima2/common.h
> index 3916a66..6d77b62 100644
> --- a/arch/arm/mach-prima2/common.h
> +++ b/arch/arm/mach-prima2/common.h
> @@ -15,7 +15,7 @@
> #include <asm/mach/time.h>
> #include <asm/exception.h>
>
> -extern struct smp_operations sirfsoc_smp_ops;
> +extern const struct smp_operations sirfsoc_smp_ops;
> extern void sirfsoc_secondary_startup(void);
> extern void sirfsoc_cpu_die(unsigned int cpu);
>
> diff --git a/arch/arm/mach-prima2/platsmp.c b/arch/arm/mach-prima2/platsmp.c
> index e46c910..0875b99 100644
> --- a/arch/arm/mach-prima2/platsmp.c
> +++ b/arch/arm/mach-prima2/platsmp.c
> @@ -112,7 +112,7 @@ static int sirfsoc_boot_secondary(unsigned int cpu, struct task_struct *idle)
> return pen_release != -1 ? -ENOSYS : 0;
> }
>
> -struct smp_operations sirfsoc_smp_ops __initdata = {
> +const struct smp_operations sirfsoc_smp_ops __initconst = {
> .smp_secondary_init = sirfsoc_secondary_init,
> .smp_boot_secondary = sirfsoc_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c
> index 9b00123..5494c9e 100644
> --- a/arch/arm/mach-qcom/platsmp.c
> +++ b/arch/arm/mach-qcom/platsmp.c
> @@ -332,7 +332,7 @@ static void __init qcom_smp_prepare_cpus(unsigned int max_cpus)
> }
> }
>
> -static struct smp_operations smp_msm8660_ops __initdata = {
> +static const struct smp_operations smp_msm8660_ops __initconst = {
> .smp_prepare_cpus = qcom_smp_prepare_cpus,
> .smp_secondary_init = qcom_secondary_init,
> .smp_boot_secondary = msm8660_boot_secondary,
> @@ -342,7 +342,7 @@ static struct smp_operations smp_msm8660_ops __initdata = {
> };
> CPU_METHOD_OF_DECLARE(qcom_smp, "qcom,gcc-msm8660", &smp_msm8660_ops);
>
> -static struct smp_operations qcom_smp_kpssv1_ops __initdata = {
> +static const struct smp_operations qcom_smp_kpssv1_ops __initconst = {
> .smp_prepare_cpus = qcom_smp_prepare_cpus,
> .smp_secondary_init = qcom_secondary_init,
> .smp_boot_secondary = kpssv1_boot_secondary,
> @@ -352,7 +352,7 @@ static struct smp_operations qcom_smp_kpssv1_ops __initdata = {
> };
> CPU_METHOD_OF_DECLARE(qcom_smp_kpssv1, "qcom,kpss-acc-v1", &qcom_smp_kpssv1_ops);
>
> -static struct smp_operations qcom_smp_kpssv2_ops __initdata = {
> +static const struct smp_operations qcom_smp_kpssv2_ops __initconst = {
> .smp_prepare_cpus = qcom_smp_prepare_cpus,
> .smp_secondary_init = qcom_secondary_init,
> .smp_boot_secondary = kpssv2_boot_secondary,
> diff --git a/arch/arm/mach-realview/core.h b/arch/arm/mach-realview/core.h
> index 868ece2..670ee0e 100644
> --- a/arch/arm/mach-realview/core.h
> +++ b/arch/arm/mach-realview/core.h
> @@ -54,7 +54,7 @@ extern int realview_usb_register(struct resource *res);
> extern void realview_init_early(void);
> extern void realview_fixup(struct tag *tags, char **from);
>
> -extern struct smp_operations realview_smp_ops;
> +extern const struct smp_operations realview_smp_ops;
> extern void realview_cpu_die(unsigned int cpu);
>
> #endif
> diff --git a/arch/arm/mach-realview/platsmp.c b/arch/arm/mach-realview/platsmp.c
> index 98e3052..dc29029 100644
> --- a/arch/arm/mach-realview/platsmp.c
> +++ b/arch/arm/mach-realview/platsmp.c
> @@ -75,7 +75,7 @@ static void __init realview_smp_prepare_cpus(unsigned int max_cpus)
> __io_address(REALVIEW_SYS_FLAGSSET));
> }
>
> -struct smp_operations realview_smp_ops __initdata = {
> +const struct smp_operations realview_smp_ops __initconst = {
> .smp_init_cpus = realview_smp_init_cpus,
> .smp_prepare_cpus = realview_smp_prepare_cpus,
> .smp_secondary_init = versatile_secondary_init,
> diff --git a/arch/arm/mach-rockchip/platsmp.c b/arch/arm/mach-rockchip/platsmp.c
> index 3e7a4b7..938888f 100644
> --- a/arch/arm/mach-rockchip/platsmp.c
> +++ b/arch/arm/mach-rockchip/platsmp.c
> @@ -340,7 +340,7 @@ static void rockchip_cpu_die(unsigned int cpu)
> }
> #endif
>
> -static struct smp_operations rockchip_smp_ops __initdata = {
> +static const struct smp_operations rockchip_smp_ops __initconst = {
> .smp_prepare_cpus = rockchip_smp_prepare_cpus,
> .smp_boot_secondary = rockchip_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-shmobile/r8a7779.h b/arch/arm/mach-shmobile/r8a7779.h
> index e1aaa2e..2a5f773 100644
> --- a/arch/arm/mach-shmobile/r8a7779.h
> +++ b/arch/arm/mach-shmobile/r8a7779.h
> @@ -3,6 +3,6 @@
>
> extern void r8a7779_pm_init(void);
>
> -extern struct smp_operations r8a7779_smp_ops;
> +extern const struct smp_operations r8a7779_smp_ops;
>
> #endif /* __ASM_R8A7779_H__ */
> diff --git a/arch/arm/mach-shmobile/r8a7790.h b/arch/arm/mach-shmobile/r8a7790.h
> index 1a46d02..136f345 100644
> --- a/arch/arm/mach-shmobile/r8a7790.h
> +++ b/arch/arm/mach-shmobile/r8a7790.h
> @@ -1,6 +1,6 @@
> #ifndef __ASM_R8A7790_H__
> #define __ASM_R8A7790_H__
>
> -extern struct smp_operations r8a7790_smp_ops;
> +extern const struct smp_operations r8a7790_smp_ops;
>
> #endif /* __ASM_R8A7790_H__ */
> diff --git a/arch/arm/mach-shmobile/r8a7791.h b/arch/arm/mach-shmobile/r8a7791.h
> index 7ca0b7d..cf7a840 100644
> --- a/arch/arm/mach-shmobile/r8a7791.h
> +++ b/arch/arm/mach-shmobile/r8a7791.h
> @@ -1,6 +1,6 @@
> #ifndef __ASM_R8A7791_H__
> #define __ASM_R8A7791_H__
>
> -extern struct smp_operations r8a7791_smp_ops;
> +extern const struct smp_operations r8a7791_smp_ops;
>
> #endif /* __ASM_R8A7791_H__ */
> diff --git a/arch/arm/mach-shmobile/setup-emev2.c b/arch/arm/mach-shmobile/setup-emev2.c
> index 37f7b15..10b7cb5 100644
> --- a/arch/arm/mach-shmobile/setup-emev2.c
> +++ b/arch/arm/mach-shmobile/setup-emev2.c
> @@ -42,7 +42,7 @@ static const char *const emev2_boards_compat_dt[] __initconst = {
> NULL,
> };
>
> -extern struct smp_operations emev2_smp_ops;
> +extern const struct smp_operations emev2_smp_ops;
>
> DT_MACHINE_START(EMEV2_DT, "Generic Emma Mobile EV2 (Flattened Device Tree)")
> .smp = smp_ops(emev2_smp_ops),
> diff --git a/arch/arm/mach-shmobile/sh73a0.h b/arch/arm/mach-shmobile/sh73a0.h
> index 3964680..50ef24f 100644
> --- a/arch/arm/mach-shmobile/sh73a0.h
> +++ b/arch/arm/mach-shmobile/sh73a0.h
> @@ -1,6 +1,6 @@
> #ifndef __ASM_SH73A0_H__
> #define __ASM_SH73A0_H__
>
> -extern struct smp_operations sh73a0_smp_ops;
> +extern const struct smp_operations sh73a0_smp_ops;
>
> #endif /* __ASM_SH73A0_H__ */
> diff --git a/arch/arm/mach-shmobile/smp-emev2.c b/arch/arm/mach-shmobile/smp-emev2.c
> index baff3b5..adbac69 100644
> --- a/arch/arm/mach-shmobile/smp-emev2.c
> +++ b/arch/arm/mach-shmobile/smp-emev2.c
> @@ -49,7 +49,7 @@ static void __init emev2_smp_prepare_cpus(unsigned int max_cpus)
> shmobile_smp_scu_prepare_cpus(max_cpus);
> }
>
> -struct smp_operations emev2_smp_ops __initdata = {
> +const struct smp_operations emev2_smp_ops __initconst = {
> .smp_prepare_cpus = emev2_smp_prepare_cpus,
> .smp_boot_secondary = emev2_boot_secondary,
> };
> diff --git a/arch/arm/mach-shmobile/smp-r8a7779.c b/arch/arm/mach-shmobile/smp-r8a7779.c
> index 353562b8..b854fe2 100644
> --- a/arch/arm/mach-shmobile/smp-r8a7779.c
> +++ b/arch/arm/mach-shmobile/smp-r8a7779.c
> @@ -117,7 +117,7 @@ static int r8a7779_cpu_kill(unsigned int cpu)
> }
> #endif /* CONFIG_HOTPLUG_CPU */
>
> -struct smp_operations r8a7779_smp_ops __initdata = {
> +const struct smp_operations r8a7779_smp_ops __initconst = {
> .smp_prepare_cpus = r8a7779_smp_prepare_cpus,
> .smp_boot_secondary = r8a7779_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-shmobile/smp-r8a7790.c b/arch/arm/mach-shmobile/smp-r8a7790.c
> index 4b33d43..f6426c6 100644
> --- a/arch/arm/mach-shmobile/smp-r8a7790.c
> +++ b/arch/arm/mach-shmobile/smp-r8a7790.c
> @@ -60,7 +60,7 @@ static void __init r8a7790_smp_prepare_cpus(unsigned int max_cpus)
> rcar_sysc_power_up(&r8a7790_ca7_scu);
> }
>
> -struct smp_operations r8a7790_smp_ops __initdata = {
> +const struct smp_operations r8a7790_smp_ops __initconst = {
> .smp_prepare_cpus = r8a7790_smp_prepare_cpus,
> .smp_boot_secondary = shmobile_smp_apmu_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-shmobile/smp-r8a7791.c b/arch/arm/mach-shmobile/smp-r8a7791.c
> index b2508c0..2d6417a 100644
> --- a/arch/arm/mach-shmobile/smp-r8a7791.c
> +++ b/arch/arm/mach-shmobile/smp-r8a7791.c
> @@ -54,7 +54,7 @@ static int r8a7791_smp_boot_secondary(unsigned int cpu,
> return shmobile_smp_apmu_boot_secondary(cpu, idle);
> }
>
> -struct smp_operations r8a7791_smp_ops __initdata = {
> +const struct smp_operations r8a7791_smp_ops __initconst = {
> .smp_prepare_cpus = r8a7791_smp_prepare_cpus,
> .smp_boot_secondary = r8a7791_smp_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-shmobile/smp-sh73a0.c b/arch/arm/mach-shmobile/smp-sh73a0.c
> index bc2824a..ee1a4b7 100644
> --- a/arch/arm/mach-shmobile/smp-sh73a0.c
> +++ b/arch/arm/mach-shmobile/smp-sh73a0.c
> @@ -56,7 +56,7 @@ static void __init sh73a0_smp_prepare_cpus(unsigned int max_cpus)
> shmobile_smp_scu_prepare_cpus(max_cpus);
> }
>
> -struct smp_operations sh73a0_smp_ops __initdata = {
> +const struct smp_operations sh73a0_smp_ops __initconst = {
> .smp_prepare_cpus = sh73a0_smp_prepare_cpus,
> .smp_boot_secondary = sh73a0_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-socfpga/platsmp.c b/arch/arm/mach-socfpga/platsmp.c
> index 15c8ce8..cbb0a54 100644
> --- a/arch/arm/mach-socfpga/platsmp.c
> +++ b/arch/arm/mach-socfpga/platsmp.c
> @@ -117,7 +117,7 @@ static int socfpga_cpu_kill(unsigned int cpu)
> return 1;
> }
>
> -static struct smp_operations socfpga_smp_ops __initdata = {
> +static const struct smp_operations socfpga_smp_ops __initconst = {
> .smp_prepare_cpus = socfpga_smp_prepare_cpus,
> .smp_boot_secondary = socfpga_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> @@ -126,7 +126,7 @@ static struct smp_operations socfpga_smp_ops __initdata = {
> #endif
> };
>
> -static struct smp_operations socfpga_a10_smp_ops __initdata = {
> +static const struct smp_operations socfpga_a10_smp_ops __initconst = {
> .smp_prepare_cpus = socfpga_smp_prepare_cpus,
> .smp_boot_secondary = socfpga_a10_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-spear/generic.h b/arch/arm/mach-spear/generic.h
> index 0664091..909b97c0 100644
> --- a/arch/arm/mach-spear/generic.h
> +++ b/arch/arm/mach-spear/generic.h
> @@ -39,7 +39,7 @@ void spear_restart(enum reboot_mode, const char *);
> void spear13xx_secondary_startup(void);
> void spear13xx_cpu_die(unsigned int cpu);
>
> -extern struct smp_operations spear13xx_smp_ops;
> +extern const struct smp_operations spear13xx_smp_ops;
>
> #ifdef CONFIG_MACH_SPEAR1310
> void __init spear1310_clk_init(void __iomem *misc_base, void __iomem *ras_base);
> diff --git a/arch/arm/mach-spear/platsmp.c b/arch/arm/mach-spear/platsmp.c
> index fd42977..8d1e2d5 100644
> --- a/arch/arm/mach-spear/platsmp.c
> +++ b/arch/arm/mach-spear/platsmp.c
> @@ -120,7 +120,7 @@ static void __init spear13xx_smp_prepare_cpus(unsigned int max_cpus)
> __raw_writel(virt_to_phys(spear13xx_secondary_startup), SYS_LOCATION);
> }
>
> -struct smp_operations spear13xx_smp_ops __initdata = {
> +const struct smp_operations spear13xx_smp_ops __initconst = {
> .smp_init_cpus = spear13xx_smp_init_cpus,
> .smp_prepare_cpus = spear13xx_smp_prepare_cpus,
> .smp_secondary_init = spear13xx_secondary_init,
> diff --git a/arch/arm/mach-sti/platsmp.c b/arch/arm/mach-sti/platsmp.c
> index c4ad6ea..ea5a227 100644
> --- a/arch/arm/mach-sti/platsmp.c
> +++ b/arch/arm/mach-sti/platsmp.c
> @@ -156,7 +156,7 @@ static void __init sti_smp_prepare_cpus(unsigned int max_cpus)
> }
> }
>
> -struct smp_operations __initdata sti_smp_ops = {
> +const struct smp_operations sti_smp_ops __initconst = {
> .smp_prepare_cpus = sti_smp_prepare_cpus,
> .smp_secondary_init = sti_secondary_init,
> .smp_boot_secondary = sti_boot_secondary,
> diff --git a/arch/arm/mach-sti/smp.h b/arch/arm/mach-sti/smp.h
> index ae22707..d8a2f87 100644
> --- a/arch/arm/mach-sti/smp.h
> +++ b/arch/arm/mach-sti/smp.h
> @@ -12,7 +12,7 @@
> #ifndef __MACH_STI_SMP_H
> #define __MACH_STI_SMP_H
>
> -extern struct smp_operations sti_smp_ops;
> +extern const struct smp_operations sti_smp_ops;
>
> void sti_secondary_startup(void);
>
> diff --git a/arch/arm/mach-sunxi/platsmp.c b/arch/arm/mach-sunxi/platsmp.c
> index e8483ec..6642267 100644
> --- a/arch/arm/mach-sunxi/platsmp.c
> +++ b/arch/arm/mach-sunxi/platsmp.c
> @@ -116,7 +116,7 @@ static int sun6i_smp_boot_secondary(unsigned int cpu,
> return 0;
> }
>
> -static struct smp_operations sun6i_smp_ops __initdata = {
> +static const struct smp_operations sun6i_smp_ops __initconst = {
> .smp_prepare_cpus = sun6i_smp_prepare_cpus,
> .smp_boot_secondary = sun6i_smp_boot_secondary,
> };
> @@ -185,7 +185,7 @@ static int sun8i_smp_boot_secondary(unsigned int cpu,
> return 0;
> }
>
> -struct smp_operations sun8i_smp_ops __initdata = {
> +static const struct smp_operations sun8i_smp_ops __initconst = {
> .smp_prepare_cpus = sun8i_smp_prepare_cpus,
> .smp_boot_secondary = sun8i_smp_boot_secondary,
> };
> diff --git a/arch/arm/mach-tegra/common.h b/arch/arm/mach-tegra/common.h
> index 5900cc4..1f6fb80 100644
> --- a/arch/arm/mach-tegra/common.h
> +++ b/arch/arm/mach-tegra/common.h
> @@ -1,4 +1,4 @@
> -extern struct smp_operations tegra_smp_ops;
> +extern const struct smp_operations tegra_smp_ops;
>
> extern int tegra_cpu_kill(unsigned int cpu);
> extern void tegra_cpu_die(unsigned int cpu);
> diff --git a/arch/arm/mach-tegra/platsmp.c b/arch/arm/mach-tegra/platsmp.c
> index b450866..f3f61db 100644
> --- a/arch/arm/mach-tegra/platsmp.c
> +++ b/arch/arm/mach-tegra/platsmp.c
> @@ -192,7 +192,7 @@ static void __init tegra_smp_prepare_cpus(unsigned int max_cpus)
> scu_enable(IO_ADDRESS(scu_a9_get_base()));
> }
>
> -struct smp_operations tegra_smp_ops __initdata = {
> +const struct smp_operations tegra_smp_ops __initconst = {
> .smp_prepare_cpus = tegra_smp_prepare_cpus,
> .smp_secondary_init = tegra_secondary_init,
> .smp_boot_secondary = tegra_boot_secondary,
> diff --git a/arch/arm/mach-uniphier/platsmp.c b/arch/arm/mach-uniphier/platsmp.c
> index f057766..e1cfc1d 100644
> --- a/arch/arm/mach-uniphier/platsmp.c
> +++ b/arch/arm/mach-uniphier/platsmp.c
> @@ -201,7 +201,7 @@ static int __init uniphier_smp_boot_secondary(unsigned int cpu,
> return 0;
> }
>
> -static struct smp_operations uniphier_smp_ops __initdata = {
> +static const struct smp_operations uniphier_smp_ops __initconst = {
> .smp_prepare_cpus = uniphier_smp_prepare_cpus,
> .smp_boot_secondary = uniphier_smp_boot_secondary,
> };
> diff --git a/arch/arm/mach-ux500/platsmp.c b/arch/arm/mach-ux500/platsmp.c
> index 70766b96..88b8ab4 100644
> --- a/arch/arm/mach-ux500/platsmp.c
> +++ b/arch/arm/mach-ux500/platsmp.c
> @@ -98,7 +98,7 @@ static int ux500_boot_secondary(unsigned int cpu, struct task_struct *idle)
> return 0;
> }
>
> -struct smp_operations ux500_smp_ops __initdata = {
> +static const struct smp_operations ux500_smp_ops __initconst = {
> .smp_prepare_cpus = ux500_smp_prepare_cpus,
> .smp_boot_secondary = ux500_boot_secondary,
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/arch/arm/mach-vexpress/core.h b/arch/arm/mach-vexpress/core.h
> index 2a11d3a..a162ab4 100644
> --- a/arch/arm/mach-vexpress/core.h
> +++ b/arch/arm/mach-vexpress/core.h
> @@ -1,5 +1,5 @@
> bool vexpress_smp_init_ops(void);
>
> -extern struct smp_operations vexpress_smp_dt_ops;
> +extern const struct smp_operations vexpress_smp_dt_ops;
>
> extern void vexpress_cpu_die(unsigned int cpu);
> diff --git a/arch/arm/mach-vexpress/platsmp.c b/arch/arm/mach-vexpress/platsmp.c
> index 83188cf..8b8d072 100644
> --- a/arch/arm/mach-vexpress/platsmp.c
> +++ b/arch/arm/mach-vexpress/platsmp.c
> @@ -64,7 +64,7 @@ static void __init vexpress_smp_dt_prepare_cpus(unsigned int max_cpus)
> vexpress_flags_set(virt_to_phys(versatile_secondary_startup));
> }
>
> -struct smp_operations __initdata vexpress_smp_dt_ops = {
> +const struct smp_operations vexpress_smp_dt_ops __initconst = {
> .smp_prepare_cpus = vexpress_smp_dt_prepare_cpus,
> .smp_secondary_init = versatile_secondary_init,
> .smp_boot_secondary = versatile_boot_secondary,
> diff --git a/arch/arm/mach-zx/platsmp.c b/arch/arm/mach-zx/platsmp.c
> index a369398..0297f92 100644
> --- a/arch/arm/mach-zx/platsmp.c
> +++ b/arch/arm/mach-zx/platsmp.c
> @@ -176,7 +176,7 @@ static void zx_secondary_init(unsigned int cpu)
> scu_power_mode(scu_base, SCU_PM_NORMAL);
> }
>
> -struct smp_operations zx_smp_ops __initdata = {
> +static const struct smp_operations zx_smp_ops __initconst = {
> .smp_prepare_cpus = zx_smp_prepare_cpus,
> .smp_secondary_init = zx_secondary_init,
> .smp_boot_secondary = zx_boot_secondary,
> diff --git a/arch/arm/mach-zynq/common.h b/arch/arm/mach-zynq/common.h
> index 79cda2e..e771933 100644
> --- a/arch/arm/mach-zynq/common.h
> +++ b/arch/arm/mach-zynq/common.h
> @@ -30,7 +30,7 @@ extern char zynq_secondary_trampoline;
> extern char zynq_secondary_trampoline_jump;
> extern char zynq_secondary_trampoline_end;
> extern int zynq_cpun_start(u32 address, int cpu);
> -extern struct smp_operations zynq_smp_ops __initdata;
> +extern const struct smp_operations zynq_smp_ops;
> #endif
>
> extern void __iomem *zynq_scu_base;
> diff --git a/arch/arm/mach-zynq/platsmp.c b/arch/arm/mach-zynq/platsmp.c
> index f66816c..7cd9865 100644
> --- a/arch/arm/mach-zynq/platsmp.c
> +++ b/arch/arm/mach-zynq/platsmp.c
> @@ -157,7 +157,7 @@ static void zynq_cpu_die(unsigned int cpu)
> }
> #endif
>
> -struct smp_operations zynq_smp_ops __initdata = {
> +const struct smp_operations zynq_smp_ops __initconst = {
> .smp_init_cpus = zynq_smp_init_cpus,
> .smp_prepare_cpus = zynq_smp_prepare_cpus,
> .smp_boot_secondary = zynq_boot_secondary,
> --
> 1.9.1
>
>
More information about the Linux-rockchip
mailing list