[Letux-kernel] automatic charging working with 4.7

Andreas Kemnade andreas at kemnade.info
Wed Jul 27 18:04:54 CEST 2016


On Tue, 26 Jul 2016 22:12:19 +0200
"H. Nikolaus Schaller" <hns at goldelico.com> wrote:

> 
> > Am 26.07.2016 um 22:09 schrieb Andreas Kemnade
> > <andreas at kemnade.info>:
> > 
> > On Tue, 26 Jul 2016 21:07:30 +0200
> > Andreas Kemnade <andreas at kemnade.info> wrote:
> > 
> >> Hi,
> >> 
> >> I finally took the advice given to us about in the UART slave
> >> discussion:
> >> Fix powermanagement issues in userspace ;-)
> >> So I did:
> >> 
> >> rmmod twl4030_charger
> >> sleep 2
> >> #USB PHY_CLK_CTRL
> >> #seems to be already done
> >> twl-i2c.sh USB w 0xFE 0x01
> >> sleep 1
> >> twl-i2c.sh USB r 0xFF
> >> #should be 01
> >> 
> >> #USB POWER_CTL_SET  OTG_EN
> >> twl-i2c.sh USB w 0xAD 0x20
> >> 
> > 
> > modprobe twl4030_charger here seems to be enough here.
> 
> seems to prove that the problem is really in twl4030-phy.
> 
unfortunately there is no prove. Might be musb.
AFAIK especially much of the interrupt config in the
usb part of tps65950 is done via the ULPI interface which
is controlled by the musb stuff. And if I remember correcly,
the musb documentation is not public... 
There is a phy_power_on in omap2430_musb_enable.
in
drivers/usb/musb/omap2430.c
which is only given via musb_platform_ops to the musb core.

in
drivers/usb/musb/musb_core.c
there is 
musb->ops = plat->platform_ops;

It is called via
musb_platform_enable()
in musb_core.h

called by
musb_start which is called by musb_gadget_start() which is
called upon gadget driver registration.

At least it should work that way in theory...

Regards,
Andreas


More information about the Letux-kernel mailing list