[openfirmware] [commit] r2179 - dev/olpc/kb3700

repository service svn at openfirmware.info
Sat Mar 12 02:04:52 CET 2011


Author: rsmith
Date: Sat Mar 12 02:04:51 2011
New Revision: 2179
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/2179

Log:
* XO 1 and 1.5: Add bat-recover tool from batman.fth

- This makes doing bat-recover on a lot of batteries that have charge
balance a lot easier since you don't have to reload batman.fth every
reboot.

Modified:
   dev/olpc/kb3700/battery.fth

Modified: dev/olpc/kb3700/battery.fth
==============================================================================
--- dev/olpc/kb3700/battery.fth	Sat Mar 12 02:04:49 2011	(r2178)
+++ dev/olpc/kb3700/battery.fth	Sat Mar 12 02:04:51 2011	(r2179)
@@ -672,6 +672,46 @@
    h# 10 invert and ec-debugflag4 bat-b!
 ;
 
+: bat-recover-info@ ( -- voltage ACR current temp )
+   ds-bank-buf 6 h# 0c 1w-read                  ( )
+   ds-bank-buf c@ 8 <<                          ( voltage_msb )
+   ds-bank-buf 1 + c@ or d# 16 << d# 16 >>a     ( voltage )
+   ds-bank-buf 4 + c@ 8 <<                      ( voltage ACR_msb )
+   ds-bank-buf 5 + c@ or d# 16 << d# 16 >>a     ( voltage ACR )
+   ds-bank-buf 4 h# 18 1w-read                  ( voltage ACR )
+   ds-bank-buf 2 + c@ 8 <<                      ( voltage ACR current_msb )
+   ds-bank-buf 3 + c@ or d# 16 << d# 16 >>a     ( voltage ACR current )
+   swap                                         ( voltage current ACR )
+   ds-bank-buf c@ 8 <<                          ( voltage ACR current temp_msb )
+   ds-bank-buf 1 + c@ or d# 16 << d# 16 >>a     ( voltage ACR current temp )
+;
+
+4 value bon
+2 value boff
+
+: bat-recover ( -- )
+   batman-init?
+   bg-acr@
+   begin
+      bat-enable-charge
+      bon ms
+      bat-disable-charge
+      bat-recover-info@
+      bg-temp>degc >sd.dd type ."  C "
+      to bg-last-acr
+      bg-I>mA >sd.dd type ."  mA "
+      bg-v_avg + 2 / dup to bg-v_avg
+      bg-V>V >sd.ddd type ."  V "
+      dup bg-last-acr swap - 
+      bg-acr>mAh >sd.dd type ."  mAh "
+      cr
+      boff ms
+      false
+   until
+   drop
+   bat-disable-charge
+;
+
 fload ${BP}/dev/olpc/kb3700/batstat.fth
 
 \ LICENSE_BEGIN



More information about the openfirmware mailing list