what the deadbat changes to u-boot do
werner at openmoko.org
Wed Jul 16 14:56:31 CEST 2008
(Marek and the QA team found that they could power on a GTA02v5 without
battery even without applying the u-boot changes. So they wonder why the
change was actually necessary.)
The main problem is that u-boot has to set the USB current limit to
100mA, which is not sufficient for the system to run. We then have
a loop in u-boot which makes sure that we have good power, before
we try to boot.
We can increase USB current to 500mA or even 1A if we detect a
host/powered hub, or even the adapter.
The u-boot fix makes sure we draw less than 100mA before we know we
can increase the USB current. Without the fix, we'd depend on this
detection to happen before we run out of the power stored in
capacitors. Sometimes, this works, sometimes it doesn't.
Also, if we're connected to a host-powered hub or some other
100mA-only USB port, we can never boot from that alone. But we can
still charge the battery.
Another problem is that u-boot didn't enable the charger. So even
if we would have been able to charge the battery, we didn't. Instead,
we tried to proceed, and - if the battery was weak enough - then just
ran out of power somewhere later in the boot sequence.
More information about the openmoko-kernel