usb: gadget: constify usb_gadget_ops structures
authorBhumika Goyal <bhumirks@gmail.com>
Tue, 10 Jan 2017 18:50:04 +0000 (00:20 +0530)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Tue, 24 Jan 2017 09:04:09 +0000 (11:04 +0200)
Declare usb_gadget_ops structures as const as they are only stored in
the ops field of a usb_gadget structure. This field is of type const, so
usb_gadget_ops structures having this property can be declared const
too.
Done using Coccinelle:

@r1 disable optional_qualifier@
identifier i;
position p;
@@
static struct usb_gadget_ops i@p={...};

@ok1@
identifier r1.i;
position p;
struct fotg210_udc fotg210;
@@
fotg210.gadget.ops=&i@p

@bad@
position p!={r1.p,ok1.p};
identifier r1.i;
@@
i@p

@depends on !bad disable optional_qualifier@
identifier r1.i;
@@
+const
struct usb_gadget_ops i;

File size before:
   text    data     bss     dec     hex filename
   7559     384       8    7951    1f0f usb/gadget/udc/fotg210-udc.o

File size after:
   text    data     bss     dec     hex filename
   7655     288       8    7951    1f0f usb/gadget/udc/fotg210-udc.o

Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/gadget/udc/fotg210-udc.c

index 6ba122c..f40b391 100644 (file)
@@ -1058,7 +1058,7 @@ static int fotg210_udc_stop(struct usb_gadget *g)
        return 0;
 }
 
-static struct usb_gadget_ops fotg210_gadget_ops = {
+static const struct usb_gadget_ops fotg210_gadget_ops = {
        .udc_start              = fotg210_udc_start,
        .udc_stop               = fotg210_udc_stop,
 };