Re: [PATCH] usb: udc: add gadget state kobject uevent

From: Barry Song
Date: Wed Jul 24 2013 - 05:11:37 EST


2013/7/18 Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx>:
> On Wed, Jul 17, 2013 at 10:57:06AM +0300, Felipe Balbi wrote:
>> Hi,
>>
>> On Mon, Jul 15, 2013 at 11:31:17PM -0700, Greg KH wrote:
>> > > The question is since we default GADGET, so the g_mass_storage.ko is
>> > > installed early but connecting to a host PC
>> > > is randomly, But the udev has no idea when a host PC connects our device.
>> > >
>> > > So we consider it's reasonable to let the udev know the GADGET device state.
>> > > Is there any alternative to our question?
>> >
>> > I thought we already export events for gadget device states, have you
>> > looked for them? I can't dig through the code at the moment, but this
>> > seems like a pretty common issue...
>> >
>> > Felipe, any ideas?
>>
>> we already expose that in sysfs. IIRC udev can act on sysfs changes,
>> no ?
>
> If something is polling the sysfs file, yes. If not, a change event
> should be sent to notify people that they need to go re-read it as
> something major happened (laptop docked, disk got removed, device
> changed state, etc.)

sysfs_notify() should be a mechinism to permit userspace to
poll()/select() the sysfs file if users want to . for example, if an
user cares about sysfs changes, he can do:

res = select(sysfd+1,
NULL, // readfds - not needed
NULL, // writefds - not needed
&exceptfds,
NULL); // timeout (never)

if (res > 0 && FD_ISSET(sysfd, &exceptfds))
{

}

i didn't see udev can poll sysfs node which will change value
dynamically. it depends on 3rd applications to do that. and i also
didn't find we can define a udev rule to monitor sysfs change.

so the benefit of this patch here is that if we send uevent, we can
easily define a rule in udev to switch the file_storage partition to
target board or PC dynamically. this is a very popular user scenerios
actually, considering a phone, the SD card is mounted to mobilephone
at first, then after we connect the phone to PC, the SD is given to
PC, after we disconnect, the partition will be given back to phone.

we did see Android have done similar patch in its tree. so i would
suggest we continue to work on rong's patch and make it visible in
mainline.

>
> thanks,
>
> greg k-h

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