From: Márton Németh <[email protected]> The match_table field of the struct of_device_id is constant in <linux/of_platform.h> so it is worth to make the initialization data also constant.
The semantic match that finds this kind of pattern is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ disable decl_init,const_decl_init; identifier I1, I2, x; @@ struct I1 { ... const struct I2 *x; ... }; @s@ identifier r.I1, y; identifier r.x, E; @@ struct I1 y = { .x = E, }; @c@ identifier r.I2; identifier s.E; @@ const struct I2 E[] = ... ; @depends on !c@ identifier r.I2; identifier s.E; @@ + const struct I2 E[] = ...; // </smpl> Signed-off-by: Márton Németh <[email protected]> Cc: Julia Lawall <[email protected]> Cc: [email protected] --- diff -u -p a/drivers/pcmcia/electra_cf.c b/drivers/pcmcia/electra_cf.c --- a/drivers/pcmcia/electra_cf.c 2009-12-03 04:51:21.000000000 +0100 +++ b/drivers/pcmcia/electra_cf.c 2010-01-08 14:35:41.000000000 +0100 @@ -347,7 +347,7 @@ static int __devexit electra_cf_remove(s return 0; } -static struct of_device_id electra_cf_match[] = { +static const struct of_device_id electra_cf_match[] = { { .compatible = "electra-cf", }, diff -u -p a/drivers/pcmcia/m8xx_pcmcia.c b/drivers/pcmcia/m8xx_pcmcia.c --- a/drivers/pcmcia/m8xx_pcmcia.c 2010-01-07 19:08:44.000000000 +0100 +++ b/drivers/pcmcia/m8xx_pcmcia.c 2010-01-08 14:36:19.000000000 +0100 @@ -1303,7 +1303,7 @@ static int m8xx_resume(struct platform_d #define m8xx_resume NULL #endif -static struct of_device_id m8xx_pcmcia_match[] = { +static const struct of_device_id m8xx_pcmcia_match[] = { { .type = "pcmcia", .compatible = "fsl,pq-pcmcia", _______________________________________________ Linux PCMCIA reimplementation list http://lists.infradead.org/mailman/listinfo/linux-pcmcia
