On Thu, Sep 06, 2012 at 02:57:42PM -0400, Frank Agius wrote:
> I'm seeing what I think is an unintended consequence of powering down
> the USB phy.  All the relavent code is in file twl4030_usb.c. My
> system is setup to use the USB in otg mode.  If nothing is connected
> to the USB OTG port, the phy suspension code is called.  In the chain
> of calls that follows, the vusb3v1 regulator is disabled.  However,
> according to the OMAP power management manual, vusb3v1 is used "to
> bias the analog multiplexers on the four MCPC pins between the carkit
> and the MADC". I've seen if there is no bias on this mux, the MADC
> driver returns incorrect counts on these 4 pins that should be in A/D
> mode.  If I plug something into the USB OTG port, the MADC driver
> returns the expected counts.  I also created a debug version of the
> twl4030-usb driver, with the disabling of the vusb3v1 commented out
> and the MADC returns the correct counts regardless of the state of
> the USB OTG port.
> 
> Since the vusb3v1 regulator is required for the proper operation of
> the mux and by extension the MADC and carkit mode, shouldn't it
> always be enabled?

If MADC needs that regulator, it should request it as well so the
regulator framework has correct usecounts. Also, IIRC there is a
"suspend" mode for the regulator which won't power it down, but it will
consume minimal power while mantaining MADC working.

-- 
balbi

Attachment: signature.asc
Description: Digital signature

Reply via email to