On 04/08/16 07:09, Guenter Roeck wrote: > On Wed, Aug 3, 2016 at 5:42 PM, Chanwoo Choi <cw00.c...@samsung.com> wrote: >> Hi Roger, >> >> On 2016년 08월 03일 18:46, Roger Quadros wrote: >>> Hi Chanwoo, >>> > > [ ... ] > >>>>>> + /* >>>>>> + * Check whether the external connector is attached. >>>>>> + * If external connector is detached, the user can not >>>>>> + * get the property value. >>>>>> + */ >>>>> >>>>> How will this work for USB case? We need to know VBUS and ID states >>>>> even if the USB cable is detached. >>>> >>>> When USB is detached, extcon_get_property return the default value without >>>> any operation. >>>> The default value of supported property are 0 (zero). If new property need >>>> the differnt default >>>> value, I'll support it. >>> >>> Is the property a property of the connector or of the cable? >>> >>> In my opinion, ID and VBUS are properties of the USB connector and not of >>> the USB cable. So extcon must provide valid status for those properties >>> even if USB cable or USB_HOST cable is detached. >> >> I don't understand about that if USB and USB_HOST are detached, >> how can the USB be operating? As you mentioned that, extcon must >> provide the valid status for both state and properties. >> > > Correct. No cable means that the polarity is unknown, and VBUS must not be > active (for USB_HOST), or it can not be active (for USB).
OK. > > Only question might be EXTCON_PROP_USB_ID; I am not sure I understand > what it is supposed to return. Maybe it would be worthwhile to document it ? Agreed. It seems redundant as ID can be easily inferred from USB_HOST cable state. i.e. if USB_HOST is attached ID is 0. If USB_HOST is detached ID is 1. > >> So, I already mentioned, When USB and USB_HOST are detached, >> extcon return the default value instead of error value. >> I think that it is reasonable. Why is it not a valid? >> > > I agree; I don't know what else could be returned if no cable is > attached, even if we wanted to. > OK. I understood now that if kernel USB driver can interpret EXTCON_USB, EXTCON_USB_HOST and VBUS property, it sufficiently captures ID and VBUS information. cheers, -roger