From 23f1751c5fef5c33e6a58ed2448774aeae436a39 Mon Sep 17 00:00:00 2001 From: Guennadi Liakhovetski Date: Wed, 31 Jul 2013 14:40:14 +0200 Subject: [PATCH 1/2] ARM: shmobile: ape6evm: add "__initconst" annotations where needed This patch adds __initconst markers to the platform data and resources, used on ape6evm as parameters to platform_device_register_resndata(). The data is duplicated inside that function, therefore original data can be discarded after initialisation is completed. Reported-by: Sergei Shtylyov Signed-off-by: Guennadi Liakhovetski Signed-off-by: Simon Horman --- arch/arm/mach-shmobile/board-ape6evm.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/arch/arm/mach-shmobile/board-ape6evm.c b/arch/arm/mach-shmobile/board-ape6evm.c index ccf8b0429083..c5e6cba8f7b0 100644 --- a/arch/arm/mach-shmobile/board-ape6evm.c +++ b/arch/arm/mach-shmobile/board-ape6evm.c @@ -44,7 +44,7 @@ static struct regulator_consumer_supply dummy_supplies[] = { }; /* SMSC LAN9220 */ -static const struct resource lan9220_res[] = { +static const struct resource lan9220_res[] __initconst = { DEFINE_RES_MEM(0x08000000, 0x1000), { .start = irq_pin(40), /* IRQ40 */ @@ -52,7 +52,7 @@ static const struct resource lan9220_res[] = { }, }; -static const struct smsc911x_platform_config lan9220_data = { +static const struct smsc911x_platform_config lan9220_data __initconst = { .flags = SMSC911X_USE_32BIT, .irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL, .irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_HIGH, @@ -73,39 +73,39 @@ static struct regulator_consumer_supply fixed3v3_power_consumers[] = }; /* MMCIF */ -static struct sh_mmcif_plat_data mmcif0_pdata = { +static const struct sh_mmcif_plat_data mmcif0_pdata __initconst = { .caps = MMC_CAP_8_BIT_DATA | MMC_CAP_NONREMOVABLE, }; -static struct resource mmcif0_resources[] = { +static const struct resource mmcif0_resources[] __initconst = { DEFINE_RES_MEM_NAMED(0xee200000, 0x100, "MMCIF0"), DEFINE_RES_IRQ(gic_spi(169)), }; /* SDHI0 */ -static struct sh_mobile_sdhi_info sdhi0_pdata = { +static const struct sh_mobile_sdhi_info sdhi0_pdata __initconst = { .tmio_flags = TMIO_MMC_HAS_IDLE_WAIT | TMIO_MMC_WRPROTECT_DISABLE, .tmio_caps = MMC_CAP_SD_HIGHSPEED | MMC_CAP_SDIO_IRQ, }; -static struct resource sdhi0_resources[] = { +static const struct resource sdhi0_resources[] __initconst = { DEFINE_RES_MEM_NAMED(0xee100000, 0x100, "SDHI0"), DEFINE_RES_IRQ(gic_spi(165)), }; /* SDHI1 */ -static struct sh_mobile_sdhi_info sdhi1_pdata = { +static const struct sh_mobile_sdhi_info sdhi1_pdata __initconst = { .tmio_flags = TMIO_MMC_HAS_IDLE_WAIT | TMIO_MMC_WRPROTECT_DISABLE, .tmio_caps = MMC_CAP_SD_HIGHSPEED | MMC_CAP_SDIO_IRQ | MMC_CAP_NEEDS_POLL, }; -static struct resource sdhi1_resources[] = { +static const struct resource sdhi1_resources[] __initconst = { DEFINE_RES_MEM_NAMED(0xee120000, 0x100, "SDHI1"), DEFINE_RES_IRQ(gic_spi(166)), }; -static const struct pinctrl_map ape6evm_pinctrl_map[] = { +static const struct pinctrl_map ape6evm_pinctrl_map[] __initconst = { /* SCIFA0 console */ PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.0", "pfc-r8a73a4", "scifa0_data", "scifa0"), From 8c8881b50691e17864cc54e5824b140e62fc2035 Mon Sep 17 00:00:00 2001 From: Kuninori Morimoto Date: Thu, 1 Aug 2013 18:34:37 -0700 Subject: [PATCH 2/2] ARM: shmobile: lager: add missing __initdata This patch adds missing __initdata to driver data/resource which are used from platform_device_register_xxx() Signed-off-by: Kuninori Morimoto Signed-off-by: Simon Horman --- arch/arm/mach-shmobile/board-lager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-shmobile/board-lager.c b/arch/arm/mach-shmobile/board-lager.c index 3c67b2ad4494..9489314338a6 100644 --- a/arch/arm/mach-shmobile/board-lager.c +++ b/arch/arm/mach-shmobile/board-lager.c @@ -82,11 +82,11 @@ static struct regulator_consumer_supply fixed3v3_power_consumers[] = }; /* MMCIF */ -static struct sh_mmcif_plat_data mmcif1_pdata = { +static struct sh_mmcif_plat_data mmcif1_pdata __initdata = { .caps = MMC_CAP_8_BIT_DATA | MMC_CAP_NONREMOVABLE, }; -static struct resource mmcif1_resources[] = { +static struct resource mmcif1_resources[] __initdata = { DEFINE_RES_MEM_NAMED(0xee220000, 0x80, "MMCIF1"), DEFINE_RES_IRQ(gic_spi(170)), };