All of lore.kernel.org
 help / color / mirror / Atom feed
From: marex@denx.de (Marek Vasut)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 01/12] usb: otg: add notify_connect_change callback
Date: Mon, 21 May 2012 20:32:21 +0200	[thread overview]
Message-ID: <201205212032.21757.marex@denx.de> (raw)
In-Reply-To: <20120521174742.GA31739@kroah.com>

Dear Greg KH,

> On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote:
> > Dear Greg KH,
> > 
> > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote:
> > > > This let usb phy driver has a chance to change hw settings when
> > > > connect status change.
> > > > 
> > > > Signed-off-by: Richard Zhao <richard.zhao@freescale.com>
> > > > ---
> > > > 
> > > >  include/linux/usb/otg.h |   13 +++++++++++++
> > > >  1 files changed, 13 insertions(+), 0 deletions(-)
> > > > 
> > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h
> > > > index 38ab3f4..385641d 100644
> > > > --- a/include/linux/usb/otg.h
> > > > +++ b/include/linux/usb/otg.h
> > > > @@ -117,6 +117,10 @@ struct usb_phy {
> > > > 
> > > >  	int	(*set_suspend)(struct usb_phy *x,
> > > >  	
> > > >  				int suspend);
> > > > 
> > > > +	/* notify phy connect status change */
> > > > +	int	(*notify_connect_change)(struct usb_phy *x,
> > > > +					 int port,
> > > > +					 int connected);
> > > > 
> > > >  };
> > > 
> > > No, please make this two different callbacks.  As you see in your code
> > > 
> > > when you implemented this, you really have:
> > > 	if (connected) {
> > > 	
> > > 		do this...
> > > 	
> > > 	} else {
> > > 	
> > > 		do that...
> > > 	
> > > 	}
> > > 
> > > So you there is no consolidation in the driver, so just make it 2
> > > callbacks, especially as someone wanted to make connected -1 just for a
> > > tristate, which would be impossible to document properly...
> > 
> > Or he could make connected an enum maybe ?
> 
> No, again, that will make nothing easier on the driver end at all.
> 
> What's the problem with different functions that people keep resisting?

The structure grows a few bytes ... so the kernel eats a bit more ram.

> 
> greg k-h

Best regards,
Marek Vasut

WARNING: multiple messages have this Message-ID (diff)
From: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org>
To: Greg KH <gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>
Cc: Richard Zhao
	<richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
	linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
	devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
	B29397-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
	B20596-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
	shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org,
	alexander.shishkin-VuQAYsv1563Yd54FQh9/CA@public.gmane.org,
	fabio.estevam-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
	dong.aisheng-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org,
	linuxzsc-MeMPY/F8WlbQT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH v2 01/12] usb: otg: add notify_connect_change callback
Date: Mon, 21 May 2012 20:32:21 +0200	[thread overview]
Message-ID: <201205212032.21757.marex@denx.de> (raw)
In-Reply-To: <20120521174742.GA31739-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>

Dear Greg KH,

> On Mon, May 21, 2012 at 07:36:40PM +0200, Marek Vasut wrote:
> > Dear Greg KH,
> > 
> > > On Mon, May 21, 2012 at 05:23:46PM +0800, Richard Zhao wrote:
> > > > This let usb phy driver has a chance to change hw settings when
> > > > connect status change.
> > > > 
> > > > Signed-off-by: Richard Zhao <richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
> > > > ---
> > > > 
> > > >  include/linux/usb/otg.h |   13 +++++++++++++
> > > >  1 files changed, 13 insertions(+), 0 deletions(-)
> > > > 
> > > > diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h
> > > > index 38ab3f4..385641d 100644
> > > > --- a/include/linux/usb/otg.h
> > > > +++ b/include/linux/usb/otg.h
> > > > @@ -117,6 +117,10 @@ struct usb_phy {
> > > > 
> > > >  	int	(*set_suspend)(struct usb_phy *x,
> > > >  	
> > > >  				int suspend);
> > > > 
> > > > +	/* notify phy connect status change */
> > > > +	int	(*notify_connect_change)(struct usb_phy *x,
> > > > +					 int port,
> > > > +					 int connected);
> > > > 
> > > >  };
> > > 
> > > No, please make this two different callbacks.  As you see in your code
> > > 
> > > when you implemented this, you really have:
> > > 	if (connected) {
> > > 	
> > > 		do this...
> > > 	
> > > 	} else {
> > > 	
> > > 		do that...
> > > 	
> > > 	}
> > > 
> > > So you there is no consolidation in the driver, so just make it 2
> > > callbacks, especially as someone wanted to make connected -1 just for a
> > > tristate, which would be impossible to document properly...
> > 
> > Or he could make connected an enum maybe ?
> 
> No, again, that will make nothing easier on the driver end at all.
> 
> What's the problem with different functions that people keep resisting?

The structure grows a few bytes ... so the kernel eats a bit more ram.

> 
> greg k-h

Best regards,
Marek Vasut
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2012-05-21 18:32 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-21  9:23 [PATCH v2 00/12] add imx usb driver for mx28/6x Richard Zhao
2012-05-21  9:23 ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 01/12] usb: otg: add notify_connect_change callback Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-21  9:26   ` Felipe Balbi
2012-05-21  9:26     ` Felipe Balbi
2012-05-21  9:36     ` Richard Zhao
2012-05-21  9:36       ` Richard Zhao
2012-05-21  9:38       ` Felipe Balbi
2012-05-21  9:38         ` Felipe Balbi
2012-05-21 10:19         ` Richard Zhao
2012-05-21 10:19           ` Richard Zhao
2012-05-21 13:03         ` Greg KH
2012-05-21 13:03           ` Greg KH
2012-05-21 13:05   ` Greg KH
2012-05-21 13:05     ` Greg KH
2012-05-21 17:36     ` Marek Vasut
2012-05-21 17:36       ` Marek Vasut
2012-05-21 17:47       ` Greg KH
2012-05-21 17:47         ` Greg KH
2012-05-21 18:32         ` Marek Vasut [this message]
2012-05-21 18:32           ` Marek Vasut
2012-05-21 18:40           ` Greg KH
2012-05-21 18:40             ` Greg KH
2012-05-21 19:27             ` Marek Vasut
2012-05-21 19:27               ` Marek Vasut
2012-05-22  0:27               ` Richard Zhao
2012-05-22  0:27                 ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 02/12] usb: chipidea: permit driver bindings pass phy pointer Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:22   ` Marek Vasut
2012-05-22  4:22     ` Marek Vasut
2012-05-22  9:59   ` Alexander Shishkin
2012-05-22  9:59     ` Alexander Shishkin
2012-05-22 14:07     ` Marek Vasut
2012-05-22 14:07       ` Marek Vasut
2012-05-22 15:14       ` Richard Zhao
2012-05-22 15:14         ` Richard Zhao
2012-05-23  1:35         ` Chen Peter-B29397
2012-05-23  1:35           ` Chen Peter-B29397
2012-05-23  8:08       ` Alexander Shishkin
2012-05-23  8:08         ` Alexander Shishkin
2012-05-21  9:23 ` [PATCH v2 03/12] usb: ehci-hcd: notify phy when connect change Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:23   ` Marek Vasut
2012-05-22  4:23     ` Marek Vasut
2012-05-22  4:36     ` Richard Zhao
2012-05-22  4:36       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 04/12] usb: otg: add basic mxs phy driver support Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 05/12] usb: chipidea: add imx driver binding Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:30   ` Marek Vasut
2012-05-22  4:30     ` Marek Vasut
2012-05-22  4:51     ` Richard Zhao
2012-05-22  4:51       ` Richard Zhao
2012-05-22  9:56       ` Alexander Shishkin
2012-05-22  9:56         ` Alexander Shishkin
2012-05-22 10:06         ` Felipe Balbi
2012-05-22 10:06           ` Felipe Balbi
2012-05-22 10:31           ` Richard Zhao
2012-05-22 10:31             ` Richard Zhao
2012-05-22 10:35             ` Felipe Balbi
2012-05-22 10:35               ` Felipe Balbi
2012-05-22 10:41               ` Alexander Shishkin
2012-05-22 10:41                 ` Alexander Shishkin
2012-05-22 15:06                 ` Richard Zhao
2012-05-22 15:06                   ` Richard Zhao
2012-05-23 13:02                   ` Alexander Shishkin
2012-05-23 13:02                     ` Alexander Shishkin
2012-05-23 13:09                     ` Felipe Balbi
2012-05-23 13:09                       ` Felipe Balbi
2012-05-23 13:13                       ` Alexander Shishkin
2012-05-23 13:13                         ` Alexander Shishkin
2012-05-22 13:52               ` Shawn Guo
2012-05-22 13:52                 ` Shawn Guo
2012-05-22 13:55                 ` Felipe Balbi
2012-05-22 13:55                   ` Felipe Balbi
2012-05-22 10:21   ` Alexander Shishkin
2012-05-22 10:21     ` Alexander Shishkin
2012-05-22 10:24     ` Alexander Shishkin
2012-05-22 10:24       ` Alexander Shishkin
2012-05-22 15:30       ` Richard Zhao
2012-05-22 15:30         ` Richard Zhao
2012-05-22 15:28     ` Richard Zhao
2012-05-22 15:28       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 06/12] ARM: imx6q: correct device name of usbphy and usb controller clock export Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:31   ` Marek Vasut
2012-05-22  4:31     ` Marek Vasut
2012-05-22  4:56     ` Richard Zhao
2012-05-22  4:56       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 07/12] ARM: imx6q: add config-on-boot gpios Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  3:17   ` Shawn Guo
2012-05-22  3:17     ` Shawn Guo
2012-05-22  3:25     ` Marek Vasut
2012-05-22  3:25       ` Marek Vasut
2012-05-22  3:32       ` Shawn Guo
2012-05-22  3:32         ` Shawn Guo
2012-05-22  4:20         ` Marek Vasut
2012-05-22  4:20           ` Marek Vasut
2012-05-22  4:42           ` Shawn Guo
2012-05-22  4:42             ` Shawn Guo
2012-05-22  5:22             ` Marek Vasut
2012-05-22  5:22               ` Marek Vasut
2012-05-22  5:25               ` Shawn Guo
2012-05-22  5:25                 ` Shawn Guo
2012-05-22  5:27                 ` Marek Vasut
2012-05-22  5:27                   ` Marek Vasut
2012-05-22  6:07                   ` Richard Zhao
2012-05-22  6:07                     ` Richard Zhao
2012-05-22  3:38     ` Richard Zhao
2012-05-22  3:38       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 08/12] ARM: imx6q: add usbphy clocks Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:32   ` Marek Vasut
2012-05-22  4:32     ` Marek Vasut
2012-05-22  4:45     ` Shawn Guo
2012-05-22  4:45       ` Shawn Guo
2012-05-22  5:22       ` Marek Vasut
2012-05-22  5:22         ` Marek Vasut
2012-05-22  4:59     ` Richard Zhao
2012-05-22  4:59       ` Richard Zhao
2012-05-22  5:37   ` Shawn Guo
2012-05-22  5:37     ` Shawn Guo
2012-05-22  6:08     ` Richard Zhao
2012-05-22  6:08       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 09/12] ARM: imx6q: disable usb charger detector Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  3:48   ` Shawn Guo
2012-05-22  3:48     ` Shawn Guo
2012-05-22  4:32     ` Richard Zhao
2012-05-22  4:32       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 10/12] ARM: dts: imx6q-sabrelite: add usb devices Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  5:10   ` Shawn Guo
2012-05-22  5:10     ` Shawn Guo
2012-05-22  5:59     ` Richard Zhao
2012-05-22  5:59       ` Richard Zhao
2012-05-22  6:08       ` Shawn Guo
2012-05-22  6:08         ` Shawn Guo
2012-05-22  6:19         ` Richard Zhao
2012-05-22  6:19           ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 11/12] ARM: mxs: clk_register_clkdev mx28 usb clocks Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:48   ` Shawn Guo
2012-05-22  4:48     ` Shawn Guo
2012-05-22  5:01     ` Richard Zhao
2012-05-22  5:01       ` Richard Zhao
2012-05-21  9:23 ` [PATCH v2 12/12] ARM: dts: imx28-evk: add usb devices Richard Zhao
2012-05-21  9:23   ` Richard Zhao
2012-05-22  4:52   ` Shawn Guo
2012-05-22  4:52     ` Shawn Guo
2012-05-22  5:03     ` Richard Zhao
2012-05-22  5:03       ` Richard Zhao
2012-05-22  5:24       ` Marek Vasut
2012-05-22  5:24         ` Marek Vasut
2012-05-21 19:34 ` [PATCH v2 00/12] add imx usb driver for mx28/6x Fabio Estevam
2012-05-21 19:34   ` Fabio Estevam
2012-05-21 19:41   ` Marek Vasut
2012-05-21 19:41     ` Marek Vasut
2012-05-21 19:47     ` Subodh Nijsure
2012-05-21 19:47       ` Subodh Nijsure
2012-05-21 20:07       ` Marek Vasut
2012-05-21 20:07         ` Marek Vasut
2012-05-22  1:38         ` Chen Peter-B29397
2012-05-22  1:38           ` Chen Peter-B29397
2012-05-22  1:41           ` Richard Zhao
2012-05-22  1:41             ` Richard Zhao
2012-05-22  1:44             ` Chen Peter-B29397
2012-05-22  1:44               ` Chen Peter-B29397
2012-05-22  1:51               ` Richard Zhao
2012-05-22  1:51                 ` Richard Zhao
2012-05-22  2:00               ` Shawn Guo
2012-05-22  2:00                 ` Shawn Guo
2012-05-22  5:08   ` Richard Zhao
2012-05-22  5:08     ` Richard Zhao
2012-05-22 13:13     ` Dirk Behme
2012-05-22 13:13       ` Dirk Behme
2012-05-24  3:38     ` Richard Zhao
2012-05-24  3:38       ` Richard Zhao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201205212032.21757.marex@denx.de \
    --to=marex@denx.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.