lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1426578738.2330.18.camel@linaro.org>
Date:	Tue, 17 Mar 2015 09:52:18 +0200
From:	"Ivan T. Ivanov" <ivan.ivanov@...aro.org>
To:	Chanwoo Choi <cw00.choi@...sung.com>
Cc:	Roger Quadros <rogerq@...com>, myungjoo.ham@...sung.com,
	balbi@...com, tony@...mide.com, nsekhar@...com,
	devicetree@...r.kernel.org, linux-usb@...r.kernel.org,
	linux-omap@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 1/1] extcon: usb-gpio: Introduce gpio usb extcon
 driver

Hi,

On Tue, 2015-03-17 at 11:01 +0900, Chanwoo Choi wrote:
> Hi Ivan,
> 
> On 03/16/2015 11:23 PM, Ivan T. Ivanov wrote:
> > Hi Roger,
> > 
> > On Mon, 2015-03-16 at 15:11 +0200, Roger Quadros wrote:
> > > Hi Ivan,
> > > 
> > > On 16/03/15 14:32, Ivan T. Ivanov wrote:
> > > > Hi,
> > > > 
> > > > On Mon, 2015-02-02 at 12:21 +0200, Roger Quadros wrote:
> > > > > This driver observes the USB ID pin connected over a GPIO and
> > > > > updates the USB cable extcon states accordingly.
> > > > > 
> > > > > The existing GPIO extcon driver is not suitable for this purpose
> > > > > as it needs to be taught to understand USB cable states and it
> > > > > can't handle more than one cable per instance.
> > > > > 
> > > > > For the USB case we need to handle 2 cable states.
> > > > > 1) USB (attach/detach)
> > > > > 2) USB-HOST (attach/detach)
> > > > > 
> > > > > This driver can be easily updated in the future to handle VBUS
> > > > > events in case it happens to be available on GPIO for any platform.
> > > > > 
> > > > > Signed-off-by: Roger Quadros <rogerq@...com>
> > > > > ---
> > > > > v4:
> > > > > - got rid of id_irqwake flag. Fail if enable/disable_irq_wake() fails
> > > > > - changed host cable name to "USB-HOST"
> > > > 
> > > > I am sorry that I am getting a bit little late into this.
> > > > 
> > > > Isn't supposed that we have to use strings defined in
> > > > const char extcon_cable_name[][]?
> > > > 
> > > > 
> > > > > +
> > > > > +/* List of detectable cables */
> > > > > +enum {
> > > > > +       EXTCON_CABLE_USB = 0,
> > > > > +       EXTCON_CABLE_USB_HOST,
> > > > > +
> > > > 
> > > > Same here: duplicated with enum extcon_cable_name
> > > > 
> > > > > +       EXTCON_CABLE_END,
> > > > > +};
> > > > > +
> > > > > +static const char *usb_extcon_cable[] = {
> > > > > +       [EXTCON_CABLE_USB] = "USB",
> > > > > +       [EXTCON_CABLE_USB_HOST] = "USB-HOST",
> > > > > +       NULL,
> > > > > +};
> > > 
> > > I'm not exactly sure how else it is supposed to work if we
> > > support only a subset of cables from the global extcon_cable_name[][].
> > 
> > I don't see issue that we use just 2 events. I think that we can
> > reuse  enum extcon_cable_name

Now I see that extcon_dev_register() expect NULL terminated array of 
pointers, so it will not be possible to use enum extcon_cable_name
as index in the above array, sorry.

> >  and strings already defined in
> > extcon_cable_name[][] global variable. It is defined extern in
> > extcon.h file exactly for this purpose, no?
> 
> 'extcon_cable_name' global variable is not used on extcon driver directly.
> It is just recommended cable name.

Hm, this is what bothers me. How client drivers will know cable name if 
every provider start using its own naming scheme? 

If I write client driver I will use:

extcon_register_interest(obj, name, extcon_cable_name[EXTCON_USB_HOST], nb);

and this will now work with this driver because it define string differently.

... Well, I see that string is changed because your recommendation :-), 
then lets fix extcon_cable_name strings and not let drivers define its own
names.


> I have plan to use standard cable name for extcon driver instead of that
> each extcon driver define the cable name.
> 

Sound like a good plan :-)

Regards,
Ivan



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ