summaryrefslogtreecommitdiff
path: root/firmware/target/arm/as3525/power-as3525.c
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2010-05-17 20:53:25 +0000
committerRafaël Carré <rafael.carre@gmail.com>2010-05-17 20:53:25 +0000
commit88c55d7290b7c360075557c40fdf65ceeeaf0c4b (patch)
tree29cf685626bf8c01bb64ed9456850f62e4a57d7d /firmware/target/arm/as3525/power-as3525.c
parent2ed7745ddefc084ca7030d48b251882e94fa2f9c (diff)
downloadrockbox-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.c2
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
42unsigned int power_input_status(void) 42unsigned 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 */