staging: make USB device id constant
authorNémeth Márton <nm127@freemail.hu>
Sat, 9 Jan 2010 23:18:34 +0000 (00:18 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 4 Mar 2010 00:42:42 +0000 (16:42 -0800)
commita457732b836b970c82c7ba35b4cfc938c9c543f9
tree92425e927402180c449649a6d70c22c773a99270
parent13ac58dac0c6b1edeb060102049b07ebceea9a40
staging: make USB device id constant

The id_table field of the struct usb_device_id is constant in <linux/usb.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: Németh Márton <nm127@freemail.hu>
Cc: Julia Lawall <julia@diku.dk>
Cc: cocci@diku.dk
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
16 files changed:
drivers/staging/asus_oled/asus_oled.c
drivers/staging/comedi/drivers/dt9812.c
drivers/staging/comedi/drivers/usbdux.c
drivers/staging/comedi/drivers/usbduxfast.c
drivers/staging/comedi/drivers/vmk80xx.c
drivers/staging/frontier/alphatrack.c
drivers/staging/frontier/tranzport.c
drivers/staging/go7007/go7007-usb.c
drivers/staging/go7007/s2250-loader.c
drivers/staging/line6/driver.c
drivers/staging/otus/zdusb.c
drivers/staging/quatech_usb2/quatech_usb2.c
drivers/staging/rtl8192su/r8192U_core.c
drivers/staging/rtl8192u/r8192U_core.c
drivers/staging/serqt_usb2/serqt_usb2.c
drivers/staging/winbond/wbusb.c