Messages in this thread Patch in this message | | | Date | Sat, 09 Jan 2010 13:55:47 +0100 | From | Németh Márton <> | Subject | [PATCH 1/5] input: make i2c device id constant |
| |
From: Márton Németh <nm127@freemail.hu>
The id_table field of the struct i2c_driver is constant in <linux/i2c.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 <nm127@freemail.hu> Cc: Julia Lawall <julia@diku.dk> Cc: cocci@diku.dk --- diff -u -p a/drivers/input/keyboard/qt2160.c b/drivers/input/keyboard/qt2160.c --- a/drivers/input/keyboard/qt2160.c 2009-12-03 04:51:21.000000000 +0100 +++ b/drivers/input/keyboard/qt2160.c 2010-01-08 19:01:56.000000000 +0100 @@ -362,7 +362,7 @@ static int __devexit qt2160_remove(struc return 0; }
-static struct i2c_device_id qt2160_idtable[] = { +static const struct i2c_device_id qt2160_idtable[] = { { "qt2160", 0, }, { } }; diff -u -p a/drivers/input/touchscreen/tsc2007.c b/drivers/input/touchscreen/tsc2007.c --- a/drivers/input/touchscreen/tsc2007.c 2009-12-03 04:51:21.000000000 +0100 +++ b/drivers/input/touchscreen/tsc2007.c 2010-01-08 19:15:29.000000000 +0100 @@ -358,7 +358,7 @@ static int __devexit tsc2007_remove(stru return 0; }
-static struct i2c_device_id tsc2007_idtable[] = { +static const struct i2c_device_id tsc2007_idtable[] = { { "tsc2007", 0 }, { } }; diff -u -p a/drivers/input/misc/apanel.c b/drivers/input/misc/apanel.c --- a/drivers/input/misc/apanel.c 2009-12-03 04:51:21.000000000 +0100 +++ b/drivers/input/misc/apanel.c 2010-01-08 19:22:03.000000000 +0100 @@ -149,7 +149,7 @@ static void apanel_shutdown(struct i2c_c apanel_remove(client); }
-static struct i2c_device_id apanel_id[] = { +static const struct i2c_device_id apanel_id[] = { { "fujitsu_apanel", 0 }, { } }; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |