diff options
author | Rafaël Carré <rafael.carre@gmail.com> | 2010-05-17 20:53:25 +0000 |
---|---|---|
committer | Rafaël Carré <rafael.carre@gmail.com> | 2010-05-17 20:53:25 +0000 |
commit | 88c55d7290b7c360075557c40fdf65ceeeaf0c4b (patch) | |
tree | 29cf685626bf8c01bb64ed9456850f62e4a57d7d /firmware/target/arm/as3525/power-as3525.c | |
parent | 2ed7745ddefc084ca7030d48b251882e94fa2f9c (diff) | |
download | rockbox-88c55d7290b7c360075557c40fdf65ceeeaf0c4b.tar.gz rockbox-88c55d7290b7c360075557c40fdf65ceeeaf0c4b.zip |
as3514/as3543 fixes
- Enable end of charge monitoring once, it doesn't need to be disabled
- Acknowledge the first (wrong) end of charge interrupt on charger enable
(this had been broken in r25299)
- Centralize reads to ENRD* registers and cache the results when needed
- on PP it is not needed because reads are atomic, we only check for
end of charge when the charging, and for charger presence when
discharging
as3525v2 (using as3543) specifics
- I got the datasheet today from AMS, thanks to them for being so fast
and not require me to sign tons of papers!
- USB detection now works on as3525v2 using the as3543. Clip+ won't
reboot to OF yet, it needs mkamsboot support first (usbstack disabled)
- Charging should work, the CHARGER register is at a different place, it
is an extended PMU register -> use ascodec_read/write_charger() to
access it
- real interrupts are not used yet for ENRD, we get thousands of
interrupts per second, apparently only limited by the i2c clock.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26116 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/as3525/power-as3525.c')
-rw-r--r-- | firmware/target/arm/as3525/power-as3525.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/firmware/target/arm/as3525/power-as3525.c b/firmware/target/arm/as3525/power-as3525.c index 3570d7c75a..7b93dd1cd1 100644 --- a/firmware/target/arm/as3525/power-as3525.c +++ b/firmware/target/arm/as3525/power-as3525.c | |||
@@ -41,7 +41,7 @@ void power_init(void) | |||
41 | #if CONFIG_CHARGING | 41 | #if CONFIG_CHARGING |
42 | unsigned int power_input_status(void) | 42 | unsigned int power_input_status(void) |
43 | { | 43 | { |
44 | return (ascodec_read(AS3514_IRQ_ENRD0) & (1<<5)) ? | 44 | return ascodec_chg_status() ? |
45 | POWER_INPUT_MAIN_CHARGER : POWER_INPUT_NONE; | 45 | POWER_INPUT_MAIN_CHARGER : POWER_INPUT_NONE; |
46 | 46 | ||
47 | /* TODO: Handle USB and other sources properly */ | 47 | /* TODO: Handle USB and other sources properly */ |