[openfirmware] r1117 - cpu/x86/pc/olpc dev/olpc/kb3700

svn at openfirmware.info svn at openfirmware.info
Wed Mar 4 00:46:19 CET 2009


Author: rsmith
Date: 2009-03-04 00:46:19 +0100 (Wed, 04 Mar 2009)
New Revision: 1117

Added:
   cpu/x86/pc/olpc/charge.fth
Modified:
   cpu/x86/pc/olpc/fw.bth
   dev/olpc/kb3700/battery.fth
Log:
OLPC: - Move the bat-charge logger to its own file. charge.fth
 - Fixup the file output to be comma delimited so its compatible with the olpc-pwr-log processing code
 - remove uneeded spaces in one of the formatting functions.



Added: cpu/x86/pc/olpc/charge.fth
===================================================================
--- cpu/x86/pc/olpc/charge.fth	                        (rev 0)
+++ cpu/x86/pc/olpc/charge.fth	2009-03-03 23:46:19 UTC (rev 1117)
@@ -0,0 +1,89 @@
+purpose: Special low power battery charge monitor 
+\ See license at end of file
+
+\ Need the comma to be compatible with olpc-pwr-log stuff
+
+: >sd,
+   <# " ," hold$ u#s u#>
+;
+
+: >sd.dd,  ( n -- formatted )
+   base @ >r  decimal
+   dup abs <# " ," hold$ u# u# [char] . hold u#s rot sign u#>
+   r> base !
+;
+
+:  bat-log-append ( adr len -- )
+   " sd:\charge.log" $append-open   \ hardcode the path for now
+      ftype
+      fcr
+      ofd @ fclose
+;
+
+
+0 value start-acr
+d# 15 value wake-delay
+
+: bat-charge-dataf@
+      base @ >r  decimal
+      0 logstr c!
+      time&date >unix-seconds >sd, logstr $cat
+      soc >sd, logstr $cat
+      uvolt@ >sd, logstr $cat
+      cur@ >sd, logstr $cat
+      bat-temp >sd, logstr $cat
+      bat-acr@ s16>s32 dup >sd, logstr $cat
+      start-acr - bg-acr>mAh >sd.dd logstr $cat
+      r> base !
+;
+
+: bat-charge-log ( -- )
+   " sd:\charge.log" $new-file      \ Make sure the file exists and is empty.
+   ofd @ fclose
+
+   " chg_log Ver: 1.0" bat-log-append
+   " <StartData>" bat-log-append   \ This makes us compatible with the processing scripts for use with olpc-pwr-log
+
+   \ Allow for suspend to be super low power
+   dcon-power-off
+   wlan-freeze
+
+   sci-wakeup
+   bat-acr@ s16>s32 to start-acr
+   begin
+      bat-charge-dataf@
+      logstr count type cr
+      logstr count bat-log-append
+      0 acpi-l@ h# 400.0000 or  0 acpi-l!  \ Enable RTC SCI
+      ['] noop  wake-delay " set-alarm" clock-node @ $call-method
+      s3
+      0 0 acpi-l!                          \ Disable RTC SCI
+      key?
+   until key drop
+;
+
+
+\ LICENSE_BEGIN
+\ Copyright (c) 2007 FirmWorks
+\
+\ Permission is hereby granted, free of charge, to any person obtaining
+\ a copy of this software and associated documentation files (the
+\ "Software"), to deal in the Software without restriction, including
+\ without limitation the rights to use, copy, modify, merge, publish,
+\ distribute, sublicense, and/or sell copies of the Software, and to
+\ permit persons to whom the Software is furnished to do so, subject to
+\ the following conditions:
+\
+\ The above copyright notice and this permission notice shall be
+\ included in all copies or substantial portions of the Software.
+\
+\ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+\ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+\ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+\ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+\ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+\ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+\ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+\
+\ LICENSE_END
+

Modified: cpu/x86/pc/olpc/fw.bth
===================================================================
--- cpu/x86/pc/olpc/fw.bth	2009-03-03 22:31:34 UTC (rev 1116)
+++ cpu/x86/pc/olpc/fw.bth	2009-03-03 23:46:19 UTC (rev 1117)
@@ -639,56 +639,9 @@
 \   " flash http:\\18.85.46.172\new.rom" eval
 ;
 
-:  bat-log-append ( adr len -- )
-   " sd:\charge.log" $append-open   \ hardcode the path for now
-      ftype
-      fcr
-      ofd @ fclose
-;
+\ Fancy battery charge logger.
+fload ${BP}/cpu/x86/pc/olpc/charge.fth
 
-
-0 value start-acr
-d# 15 value wake-delay
-
-: bat-charge-dataf@
-      base @ >r  decimal
-      0 logstr c!
-      time&date >unix-seconds >sd logstr $cat
-      soc >sd logstr $cat
-      uvolt@ >sd logstr $cat 
-      cur@ >sd logstr $cat
-      bat-temp >sd logstr $cat
-      bat-acr@ s16>s32 dup >sd logstr $cat
-      start-acr - bg-acr>mAh >sd.dd logstr $cat       
-      r> base !
-
-\ space cur@ .d space soc .d space bat-temp .d space
-\      bat-acr@ s16>s32 dup .d space
-\      start-acr - bg-acr>mAh .sd.dd
-;
-
-: bat-charge-log ( -- )
-   " sd:\charge.log" $new-file      \ Make sure the file exists and is empty.
-   ofd @ fclose
-
-   \ Allow for suspend to be super low power
-   dcon-power-off
-   wlan-freeze
-
-   sci-wakeup
-   bat-acr@ s16>s32 to start-acr
-   begin
-      bat-charge-dataf@
-      logstr count type cr
-      logstr count bat-log-append
-      0 acpi-l@ h# 400.0000 or  0 acpi-l!  \ Enable RTC SCI
-      ['] noop  wake-delay " set-alarm" clock-node @ $call-method
-      s3
-      0 0 acpi-l!                          \ Disable RTC SCI
-      key?
-   until key drop
-;
-
 \ This helps with TeraTerm, which sends ESC-O as the arrow key prefix
 also hidden also keys-forth definitions
 warning @  warning off

Modified: dev/olpc/kb3700/battery.fth
===================================================================
--- dev/olpc/kb3700/battery.fth	2009-03-03 22:31:34 UTC (rev 1116)
+++ dev/olpc/kb3700/battery.fth	2009-03-03 23:46:19 UTC (rev 1117)
@@ -471,7 +471,6 @@
 : >sd.dd  ( n -- formatted )
    base @ >r  decimal
    dup abs <# u# u# [char] . hold u#s rot sign u#>
-   8 over - 0 max spaces
    r> base !
 ;
 




More information about the openfirmware mailing list