OSDN Git Service

usb: isp1760: constify usb_gadget_ops structures
authorBhumika Goyal <bhumirks@gmail.com>
Tue, 10 Jan 2017 18:32:54 +0000 (00:02 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Jan 2017 09:34:45 +0000 (10:34 +0100)
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 isp1760_udc udc;
@@
udc.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: drivers/usb/isp1760/isp1760-udc.o
   text    data     bss     dec     hex filename
  12434    4136      16   16586    40ca usb/isp1760/isp1760-udc.o

File size after: drivers/usb/isp1760/isp1760-udc.o
   text    data     bss     dec     hex filename
  12530    4048      16   16594    40d2 usb/isp1760/isp1760-udc.o

Signed-off-by: Bhumika Goyal <bhumirks@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/isp1760/isp1760-udc.c

index 1c3d0fd..69400f3 100644 (file)
@@ -1250,7 +1250,7 @@ static int isp1760_udc_stop(struct usb_gadget *gadget)
        return 0;
 }
 
-static struct usb_gadget_ops isp1760_udc_ops = {
+static const struct usb_gadget_ops isp1760_udc_ops = {
        .get_frame = isp1760_udc_get_frame,
        .wakeup = isp1760_udc_wakeup,
        .set_selfpowered = isp1760_udc_set_selfpowered,