Rockbox mail archive
Subject: Re: Rombox: won't charge when batteries are dead
From: Magnus Holmgren (lear_at_algonet.se)
Heikki Hannikainen wrote:
> If apps/main.c hasn't been changed lately, power_init() is called as the
> very last thing during the init(). Maybe it would help, at least a little,
> if it would be moved before ata_init(). I think it needs to be after
> adc_init(). power_init() enables charging immediately if the battery level
> is very low, so at least we'd have the external power connected to the
> battery when the disk spins up. (I suppose ide_power_enable() is only
> called at ata_init()).
There's a reason for having power_init that late: the registers it uses
aren't fully set up until after mpeg_init has been called (at least not
on a player). When it was placed earlier (after adc_init, IIRC), the
initial setup of the power history was wrong, and it would take about 30
minutes before the battery meter showed the correct value.
So, just moving power_init might not help. Maybe it can be fixed by
moving some initializations, or maybe it is simply a matter of time.
Page was last modified "Jan 10 2012" The Rockbox Crew