usb: musb: constify musb_hdrc_config structures
authorBhumika Goyal <bhumirks@gmail.com>
Tue, 24 Jan 2017 19:22:22 +0000 (00:52 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 25 Jan 2017 09:52:43 +0000 (10:52 +0100)
Declare musb_hdrc_config structures as const as they are only stored in
the config field of a musb_hdrc_platform_data structure. This field is of
type const, so musb_hdrc_config structures having this property can be
made const too.
Done using Coccinelle:

@r disable optional_qualifier@
identifier x;
position p;
@@
static struct musb_hdrc_config x@p={...};

@ok@
struct musb_hdrc_platform_data pdata;
identifier r.x;
position p;
@@
pdata.config=&x@p;

@bad@
position p != {r.p,ok.p};
identifier r.x;
@@
x@p

@depends on !bad disable optional_qualifier@
identifier r.x;
@@
+const
struct musb_hdrc_config x;

File size before:
   text    data     bss     dec     hex filename
   1212     338       0    1550     60e drivers/usb/musb/jz4740.o

File size after:
   text    data     bss     dec     hex filename
   1268     290       0    1558     616 drivers/usb/musb/jz4740.o

File size before:
   text    data     bss     dec     hex filename
   6151     333      16    6500    1964 drivers/usb/musb/sunxi.o

File size after:
   text    data     bss     dec     hex filename
   6215     269      16    6500    1964 drivers/usb/musb/sunxi.o

File size before:
   text    data     bss     dec     hex filename
   3668     864       0    4532    11b4 drivers/usb/musb/ux500.o

File size after:
   text    data     bss     dec     hex filename
   3724     808       0    4532    11b4 drivers/usb/musb/ux500.o

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

index bc8889956d172b293e6771b2cd7e1e604005b2f1..40c68c23d5530240875d1dd566c639b15eb8a6fb 100644 (file)
@@ -63,7 +63,7 @@ static struct musb_fifo_cfg jz4740_musb_fifo_cfg[] = {
 { .hw_ep_num = 2, .style = FIFO_TX, .maxpacket = 64, },
 };
 
-static struct musb_hdrc_config jz4740_musb_config = {
+static const struct musb_hdrc_config jz4740_musb_config = {
        /* Silicon does not implement USB OTG. */
        .multipoint = 0,
        /* Max EPs scanned, driver will decide which EP can be used. */
index d0be0eadd0d94033b1a171d76a96e0baa0a94808..64545de4871fca631a12d495753feacec1c4466e 100644 (file)
@@ -645,7 +645,7 @@ static struct musb_fifo_cfg sunxi_musb_mode_cfg[] = {
        MUSB_EP_FIFO_SINGLE(5, FIFO_RX, 512),
 };
 
-static struct musb_hdrc_config sunxi_musb_hdrc_config = {
+static const struct musb_hdrc_config sunxi_musb_hdrc_config = {
        .fifo_cfg       = sunxi_musb_mode_cfg,
        .fifo_cfg_size  = ARRAY_SIZE(sunxi_musb_mode_cfg),
        .multipoint     = true,
index 3eaa4ba6867d408a516abec7bb4180d5c9f05d40..5a572500c41823dbeeb4cbd4ab8b3fc2a9cabf8e 100644 (file)
@@ -30,7 +30,7 @@
 
 #include "musb_core.h"
 
-static struct musb_hdrc_config ux500_musb_hdrc_config = {
+static const struct musb_hdrc_config ux500_musb_hdrc_config = {
        .multipoint     = true,
        .dyn_fifo       = true,
        .num_eps        = 16,