[GIT PULL 1/2] ARM: shmobile: ape6evm: add "__initconst" annotations where needed

Simon Horman horms+renesas at verge.net.au
Wed Aug 7 00:36:55 EDT 2013


From: Guennadi Liakhovetski <g.liakhovetski at gmx.de>

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 <sergei.shtylyov at cogentembedded.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas at gmail.com>
Signed-off-by: Simon Horman <horms+renesas at verge.net.au>
---
 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 ccf8b04..c5e6cba 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"),
-- 
1.8.3.2




More information about the linux-arm-kernel mailing list