linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] usb: musb: constify musb_hdrc_config structures
@ 2017-01-24 19:22 Bhumika Goyal
  2017-01-25 16:58 ` Bin Liu
  0 siblings, 1 reply; 4+ messages in thread
From: Bhumika Goyal @ 2017-01-24 19:22 UTC (permalink / raw)
  To: julia.lawall, b-liu, gregkh, maxime.ripard, wens, linux-usb,
	linux-kernel, linux-arm-kernel
  Cc: Bhumika Goyal

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>
---
 drivers/usb/musb/jz4740.c | 2 +-
 drivers/usb/musb/sunxi.c  | 2 +-
 drivers/usb/musb/ux500.c  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/musb/jz4740.c b/drivers/usb/musb/jz4740.c
index bc88899..40c68c2 100644
--- a/drivers/usb/musb/jz4740.c
+++ b/drivers/usb/musb/jz4740.c
@@ -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. */
diff --git a/drivers/usb/musb/sunxi.c b/drivers/usb/musb/sunxi.c
index d0be0ea..64545de 100644
--- a/drivers/usb/musb/sunxi.c
+++ b/drivers/usb/musb/sunxi.c
@@ -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,
diff --git a/drivers/usb/musb/ux500.c b/drivers/usb/musb/ux500.c
index 3eaa4ba..5a57250 100644
--- a/drivers/usb/musb/ux500.c
+++ b/drivers/usb/musb/ux500.c
@@ -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,
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] usb: musb: constify musb_hdrc_config structures
  2017-01-24 19:22 [PATCH] usb: musb: constify musb_hdrc_config structures Bhumika Goyal
@ 2017-01-25 16:58 ` Bin Liu
  2017-01-25 21:24   ` Greg KH
  0 siblings, 1 reply; 4+ messages in thread
From: Bin Liu @ 2017-01-25 16:58 UTC (permalink / raw)
  To: gregkh
  Cc: julia.lawall, gregkh, maxime.ripard, wens, linux-usb,
	linux-kernel, linux-arm-kernel

On Wed, Jan 25, 2017 at 12:52:22AM +0530, Bhumika Goyal wrote:
> 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>

Hi Greg,

Why you don't want this patch go through my tree? Now it causes me tree
rebase failed. It should be easy to fix, but just wanted to learn your
rules.

Regards,
-Bin.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] usb: musb: constify musb_hdrc_config structures
  2017-01-25 16:58 ` Bin Liu
@ 2017-01-25 21:24   ` Greg KH
  2017-01-26 13:31     ` Bin Liu
  0 siblings, 1 reply; 4+ messages in thread
From: Greg KH @ 2017-01-25 21:24 UTC (permalink / raw)
  To: Bin Liu, julia.lawall, maxime.ripard, wens, linux-usb,
	linux-kernel, linux-arm-kernel

On Wed, Jan 25, 2017 at 10:58:15AM -0600, Bin Liu wrote:
> On Wed, Jan 25, 2017 at 12:52:22AM +0530, Bhumika Goyal wrote:
> > 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>
> 
> Hi Greg,
> 
> Why you don't want this patch go through my tree? Now it causes me tree
> rebase failed. It should be easy to fix, but just wanted to learn your
> rules.

What are you rebasing?  And why?  Just send me patches, I can merge them
when they come in just fine.

Normally yes, I do wait for these to go through your tree, but it was
just so simple, and obvious, and in a bunch of others from the author,
that I figured I could just take it as-is.

sorry if it caused you problems, but you might want to look at your
development process if it is.  You should always be able to handle other
people changing files in your area at any point in time.  Kernel
maintainership is not "no one else can ever touch this!" type of
development, you have to be able to handle stuff like this easily.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] usb: musb: constify musb_hdrc_config structures
  2017-01-25 21:24   ` Greg KH
@ 2017-01-26 13:31     ` Bin Liu
  0 siblings, 0 replies; 4+ messages in thread
From: Bin Liu @ 2017-01-26 13:31 UTC (permalink / raw)
  To: Greg KH
  Cc: julia.lawall, maxime.ripard, wens, linux-usb, linux-kernel,
	linux-arm-kernel

On Wed, Jan 25, 2017 at 10:24:09PM +0100, Greg KH wrote:
> On Wed, Jan 25, 2017 at 10:58:15AM -0600, Bin Liu wrote:
> > On Wed, Jan 25, 2017 at 12:52:22AM +0530, Bhumika Goyal wrote:
> > > 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>
> > 
> > Hi Greg,
> > 
> > Why you don't want this patch go through my tree? Now it causes me tree
> > rebase failed. It should be easy to fix, but just wanted to learn your
> > rules.
> 
> What are you rebasing?  And why?  Just send me patches, I can merge them
> when they come in just fine.

I was rebasing my -next branch, which hosts all musb patches for next
merge window, to your usb-next branch. I regularly keep my branches up
to date to ensure the patches I send to you don't cause any surprise.

> 
> Normally yes, I do wait for these to go through your tree, but it was
> just so simple, and obvious, and in a bunch of others from the author,
> that I figured I could just take it as-is.
> 
> sorry if it caused you problems, but you might want to look at your

It is not a problem at all, the merge conflict is one of the simplest to
fix. I just wanted to learn your maintenance policy, to avoid me cause
any problem to you, as the couple glitches just happened in the past
months.

> development process if it is.  You should always be able to handle other
> people changing files in your area at any point in time.  Kernel

I understand it is common in kernel development.

> maintainership is not "no one else can ever touch this!" type of
> development, you have to be able to handle stuff like this easily.

I do expect merge conflict. If the $subject patch went through my tree,
the similar merge error could happen too (just in the opposite way).  It
was that I was rebasing my branch and about to pick the $subject patch,
and didn't expect this merge conflict in rebase, so asked.

Regards,
-Bin.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-01-26 13:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-24 19:22 [PATCH] usb: musb: constify musb_hdrc_config structures Bhumika Goyal
2017-01-25 16:58 ` Bin Liu
2017-01-25 21:24   ` Greg KH
2017-01-26 13:31     ` Bin Liu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).