RE: [RFC PATCH] Revert "usb: chipidea: udc: .pullup is valid only when vbus is there"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 
> On Tue, 12 Aug 2014, Peter Chen wrote:
> 
> > > > I did this for possible pullup dp without connection (eg load
> > > > gadget driver before vbus connect), it breaks USB spec, see
> > > > 7.1.7.3 Connect
> > > and Disconnect Signaling at USB 2.0 spec.
> > >
> > > 7.1.7.3 doesn't say anything about enabling the D+ pullup before
> > > Vbus is active.  The closest it comes is the definition of Delta-t2
> > > (TSIGATT), but that is a _maximum_ time, not a _minimum_ time.
> > >
> > > What makes you think turning on the pullup when Vbus is off is bad?
> > >
> >
> > www.usb.org/developers/docs/USB-IFTestProc1_3.pdf
> >
> > Back-voltage Testing
> > Section 7.2.1 of the USB specification requires that no device shall
> > supply (source) current on VBUS at its upstream facing port at any
> > time. From VBUS on its upstream facing port, a device may only draw
> > (sink) current. They may not provide power to the pull-up resistor on
> D+/D- unless VBUS is present (see Section 7.1.5).
> 
> I see.  It's mentioned in 7.2.1 and 7.1.5.1, not 7.1.7.3
> 
> So here's what the UDC driver should do: If the pullup routine is called
> while Vbus is off, the driver should leave the D+ pullup disconnected but
> remember the call.  Then when Vbus gets turned on, the driver should
> activate the pullup.
> 
> In other words, the UDC driver should keep track of the pullup's
> "logical" state.  When Vbus is off, the pullup must also be off.  When
> Vbus is on, the pullup's physical state should be the same as the logical
> state.
> 

We had a similar discussion at last year, but Felipe " don't want to let UDC
drivers call usb_gadget_connect()/disconnect() directly."

Peter
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux