提交 444d2d33 编写于 作者: U Uwe Kleine-König 提交者: Arnd Bergmann

ARM: make of_device_ids const

of_device_ids (i.e. compatible strings and the respective data) are not
supposed to change at runtime. All functions working with of_device_ids
provided by <linux/of.h> work with const of_device_ids. So mark the
non-const structs in arch/arm as const, too.

While at it also add some __initconst annotations.
Acked-by: NJason Cooper <jason@lakedameon.net>
Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: NArnd Bergmann <arnd@arndb.de>
上级 543c5040
...@@ -231,7 +231,7 @@ static void cpu_pmu_destroy(struct arm_pmu *cpu_pmu) ...@@ -231,7 +231,7 @@ static void cpu_pmu_destroy(struct arm_pmu *cpu_pmu)
/* /*
* PMU platform driver and devicetree bindings. * PMU platform driver and devicetree bindings.
*/ */
static struct of_device_id cpu_pmu_of_device_ids[] = { static const struct of_device_id cpu_pmu_of_device_ids[] = {
{.compatible = "arm,cortex-a17-pmu", .data = armv7_a17_pmu_init}, {.compatible = "arm,cortex-a17-pmu", .data = armv7_a17_pmu_init},
{.compatible = "arm,cortex-a15-pmu", .data = armv7_a15_pmu_init}, {.compatible = "arm,cortex-a15-pmu", .data = armv7_a15_pmu_init},
{.compatible = "arm,cortex-a12-pmu", .data = armv7_a12_pmu_init}, {.compatible = "arm,cortex-a12-pmu", .data = armv7_a12_pmu_init},
......
...@@ -183,7 +183,7 @@ static struct clock_event_device clkevt = { ...@@ -183,7 +183,7 @@ static struct clock_event_device clkevt = {
void __iomem *at91_st_base; void __iomem *at91_st_base;
EXPORT_SYMBOL_GPL(at91_st_base); EXPORT_SYMBOL_GPL(at91_st_base);
static struct of_device_id at91rm9200_st_timer_ids[] = { static const struct of_device_id at91rm9200_st_timer_ids[] = {
{ .compatible = "atmel,at91rm9200-st" }, { .compatible = "atmel,at91rm9200-st" },
{ /* sentinel */ } { /* sentinel */ }
}; };
......
...@@ -226,7 +226,7 @@ void at91_pm_set_standby(void (*at91_standby)(void)) ...@@ -226,7 +226,7 @@ void at91_pm_set_standby(void (*at91_standby)(void))
} }
} }
static struct of_device_id ramc_ids[] = { static const struct of_device_id ramc_ids[] __initconst = {
{ .compatible = "atmel,at91rm9200-sdramc", .data = at91rm9200_standby }, { .compatible = "atmel,at91rm9200-sdramc", .data = at91rm9200_standby },
{ .compatible = "atmel,at91sam9260-sdramc", .data = at91sam9_sdram_standby }, { .compatible = "atmel,at91sam9260-sdramc", .data = at91sam9_sdram_standby },
{ .compatible = "atmel,at91sam9g45-ddramc", .data = at91_ddr_standby }, { .compatible = "atmel,at91sam9g45-ddramc", .data = at91_ddr_standby },
...@@ -234,7 +234,7 @@ static struct of_device_id ramc_ids[] = { ...@@ -234,7 +234,7 @@ static struct of_device_id ramc_ids[] = {
{ /*sentinel*/ } { /*sentinel*/ }
}; };
static void at91_dt_ramc(void) static __init void at91_dt_ramc(void)
{ {
struct device_node *np; struct device_node *np;
const struct of_device_id *of_id; const struct of_device_id *of_id;
......
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
#define DA8XX_NUM_UARTS 3 #define DA8XX_NUM_UARTS 3
static struct of_device_id da8xx_irq_match[] __initdata = { static const struct of_device_id da8xx_irq_match[] __initconst = {
{ .compatible = "ti,cp-intc", .data = cp_intc_of_init, }, { .compatible = "ti,cp-intc", .data = cp_intc_of_init, },
{ } { }
}; };
......
...@@ -587,7 +587,7 @@ static struct exynos_pm_data exynos5420_pm_data = { ...@@ -587,7 +587,7 @@ static struct exynos_pm_data exynos5420_pm_data = {
.cpu_suspend = exynos5420_cpu_suspend, .cpu_suspend = exynos5420_cpu_suspend,
}; };
static struct of_device_id exynos_pmu_of_device_ids[] = { static const struct of_device_id exynos_pmu_of_device_ids[] __initconst = {
{ {
.compatible = "samsung,exynos3250-pmu", .compatible = "samsung,exynos3250-pmu",
.data = &exynos3250_pm_data, .data = &exynos3250_pm_data,
......
...@@ -68,7 +68,7 @@ int imx_mmdc_get_ddr_type(void) ...@@ -68,7 +68,7 @@ int imx_mmdc_get_ddr_type(void)
return ddr_type; return ddr_type;
} }
static struct of_device_id imx_mmdc_dt_ids[] = { static const struct of_device_id imx_mmdc_dt_ids[] = {
{ .compatible = "fsl,imx6q-mmdc", }, { .compatible = "fsl,imx6q-mmdc", },
{ /* sentinel */ } { /* sentinel */ }
}; };
......
...@@ -61,7 +61,7 @@ static struct pm_clk_notifier_block platform_domain_notifier = { ...@@ -61,7 +61,7 @@ static struct pm_clk_notifier_block platform_domain_notifier = {
.pm_domain = &keystone_pm_domain, .pm_domain = &keystone_pm_domain,
}; };
static struct of_device_id of_keystone_table[] = { static const struct of_device_id of_keystone_table[] = {
{.compatible = "ti,keystone"}, {.compatible = "ti,keystone"},
{ /* end of list */ }, { /* end of list */ },
}; };
......
...@@ -213,7 +213,7 @@ void __init timer_init(int irq) ...@@ -213,7 +213,7 @@ void __init timer_init(int irq)
} }
#ifdef CONFIG_OF #ifdef CONFIG_OF
static struct of_device_id mmp_timer_dt_ids[] = { static const struct of_device_id mmp_timer_dt_ids[] = {
{ .compatible = "mrvl,mmp-timer", }, { .compatible = "mrvl,mmp-timer", },
{} {}
}; };
......
...@@ -51,7 +51,7 @@ enum { ...@@ -51,7 +51,7 @@ enum {
COHERENCY_FABRIC_TYPE_ARMADA_380, COHERENCY_FABRIC_TYPE_ARMADA_380,
}; };
static struct of_device_id of_coherency_table[] = { static const struct of_device_id of_coherency_table[] = {
{.compatible = "marvell,coherency-fabric", {.compatible = "marvell,coherency-fabric",
.data = (void *) COHERENCY_FABRIC_TYPE_ARMADA_370_XP }, .data = (void *) COHERENCY_FABRIC_TYPE_ARMADA_370_XP },
{.compatible = "marvell,armada-375-coherency-fabric", {.compatible = "marvell,armada-375-coherency-fabric",
......
...@@ -104,7 +104,7 @@ static void __iomem *pmsu_mp_base; ...@@ -104,7 +104,7 @@ static void __iomem *pmsu_mp_base;
static void *mvebu_cpu_resume; static void *mvebu_cpu_resume;
static struct of_device_id of_pmsu_table[] = { static const struct of_device_id of_pmsu_table[] = {
{ .compatible = "marvell,armada-370-pmsu", }, { .compatible = "marvell,armada-370-pmsu", },
{ .compatible = "marvell,armada-370-xp-pmsu", }, { .compatible = "marvell,armada-370-xp-pmsu", },
{ .compatible = "marvell,armada-380-pmsu", }, { .compatible = "marvell,armada-380-pmsu", },
......
...@@ -242,7 +242,7 @@ static int __init omap4_sar_ram_init(void) ...@@ -242,7 +242,7 @@ static int __init omap4_sar_ram_init(void)
} }
omap_early_initcall(omap4_sar_ram_init); omap_early_initcall(omap4_sar_ram_init);
static struct of_device_id gic_match[] = { static const struct of_device_id gic_match[] = {
{ .compatible = "arm,cortex-a9-gic", }, { .compatible = "arm,cortex-a9-gic", },
{ .compatible = "arm,cortex-a15-gic", }, { .compatible = "arm,cortex-a15-gic", },
{ }, { },
......
...@@ -674,7 +674,7 @@ int __init omap3xxx_prm_init(void) ...@@ -674,7 +674,7 @@ int __init omap3xxx_prm_init(void)
return prm_register(&omap3xxx_prm_ll_data); return prm_register(&omap3xxx_prm_ll_data);
} }
static struct of_device_id omap3_prm_dt_match_table[] = { static const struct of_device_id omap3_prm_dt_match_table[] = {
{ .compatible = "ti,omap3-prm" }, { .compatible = "ti,omap3-prm" },
{ } { }
}; };
......
...@@ -712,7 +712,7 @@ int __init omap44xx_prm_init(void) ...@@ -712,7 +712,7 @@ int __init omap44xx_prm_init(void)
return prm_register(&omap44xx_prm_ll_data); return prm_register(&omap44xx_prm_ll_data);
} }
static struct of_device_id omap_prm_dt_match_table[] = { static const struct of_device_id omap_prm_dt_match_table[] = {
{ .compatible = "ti,omap4-prm" }, { .compatible = "ti,omap4-prm" },
{ .compatible = "ti,omap5-prm" }, { .compatible = "ti,omap5-prm" },
{ .compatible = "ti,dra7-prm" }, { .compatible = "ti,dra7-prm" },
......
...@@ -40,7 +40,7 @@ static void sirfsoc_secondary_init(unsigned int cpu) ...@@ -40,7 +40,7 @@ static void sirfsoc_secondary_init(unsigned int cpu)
spin_unlock(&boot_lock); spin_unlock(&boot_lock);
} }
static struct of_device_id clk_ids[] = { static const struct of_device_id clk_ids[] = {
{ .compatible = "sirf,atlas7-clkc" }, { .compatible = "sirf,atlas7-clkc" },
{}, {},
}; };
......
...@@ -49,7 +49,7 @@ static struct generic_pm_domain *ux500_pm_domains[NR_DOMAINS] = { ...@@ -49,7 +49,7 @@ static struct generic_pm_domain *ux500_pm_domains[NR_DOMAINS] = {
[DOMAIN_VAPE] = &ux500_pm_domain_vape, [DOMAIN_VAPE] = &ux500_pm_domain_vape,
}; };
static struct of_device_id ux500_pm_domain_matches[] = { static const struct of_device_id ux500_pm_domain_matches[] __initconst = {
{ .compatible = "stericsson,ux500-pm-domains", }, { .compatible = "stericsson,ux500-pm-domains", },
{ }, { },
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册