linux/drivers/power/olpc_battery.c
<<
e="v0e="v0e=//spa6.3e=/spa6 class="lxr_search">e="ve="v0e="v0e="v0typ Searche="v0e=//spa6.3"v0< e=/input typ e"v0< 3 /div id < <1//a>/spa6 class="comment">/*//spa6.3< <2//a>/spa6 class="comment"> * Battery driver for One Laptop Per Child board.//spa6.3< <3//a>/spa6 class="comment"> *//spa6.3< <4//a>/spa6 class="comment"> * Copyright © 2006-2010 David Woodhouse <dwmw2@infradead.org>//spa6.3< <5//a>/spa6 class="comment"> *//spa6.3< <6//a>/spa6 class="comment"> * This program is free software; you ca6 redistribute it and/or modify//spa6.3< <7//a>/spa6 class="comment"> * it under the terms of the GNU General Public License version>2 as//spa6.3< <8//a>/spa6 class="comment"> * published by the Free Software Foundav2.6.//spa6.3< <9//a>/spa6 class="comment"> *///spa6.3< aluea.3< 11//a>#include <linux/kernel.h//a>>3< 12//a>#include <linux/module.h//a>>3< 13//a>#include <linux/typ s.h//a>>3< 14//a>#include <linux/err.h//a>>3< 15//a>#include <linux/device.h//a>>3< 16//a>#include <linux/platform_device.h//a>>3< 17//a>#include <linux/power_supply.h//a>>3< 18//a>#include <linux/jiffi s.h//a>>3< 19//a>#include <linux/sched.h//a>>3< 20//a>#include <linux/olpc-ec.h//a>>3< 21//a>#include <asm/olpc.h//a>>3< 22uea.3< 23uea.3< 24//a>#defineEC_BAT_VOLTAGE//a> 0x10 /spa6 class="comment">/* uint16_t, *9.76/32, mV *///spa6.3< 25//a>#defineEC_BAT_CURRENT//a> 0x11 /spa6 class="comment">/* int16_t, *1.3525/120, mA *///spa6.3< 26//a>#defineEC_BAT_ACR//a> 0x12 /spa6 class="comment">/* int16_t, *5250/15, µAh *///spa6.3 0x12#L2e /spa6 clss=3comment">/* uint16_t, *9.76/32, mV 1/as256 mV °Cef="drivers/power/olpc_battery.c#L27" id < 18//a>#incl2de &l28href="drivers/power/olpc_batteAMBc#L2e_BAT_ACR//a> AMBc#L2e /spa6 clss=4comment">/* uint16_t, *9.76/32, mV 1/as256 mV °Cef="drivers/power/olpc_battery.c#L27" id < 19//a>#incl2de &l29href="drivers/power/olpc_battery.cSTATUS_BAT_ACR//a> 0x12STATUS /spa6 ss=5comment">/* uint16_t, *9.76/328 µAhbitmaskf="drivers/power/olpc_battery.c#L27" id < 20//a>#incl3de &l30href="drivers/power/olpc_battery.cSOC_BAT_ACR//a> 0x12SOC /spa6 class=6comment">/* uint16_t, *9.76/328 µAhperc agef="drivers/power/olpc_battery.c#L27" id < 21//a>#incl3de &l31href="drivers/power/olpc_battery.cSERIAL_BAT_ACR//a> 0x12SERIAL /spa6 ss=7comment">/* uint16_t, *9.76/328 [6]f="drivers/power/olpc_battery.c#L27" id < 22uea.3 0x12EEPROM /spa6 ss=8comment">/* uint16_t, *9.76/328 adr as n" na,76/328 out nam="drivers/power/olpc_battery.c#L27" id < <3//a>/spa6 cef="d33href="drivers/power/olpc_battery.cERRCODC_BAT_VOLTAGE//a> 0x10ERRCODCa6 class=fcomment">/* uint16_t, *9.76/328 µAhbitmaskf="drivers/power/olpc_battery.c#L27" id < 24//a>#defi3e< 25//a>#defi3eEC_BAT_CURRENT//a0x12STAT_PRES>EC /spa6 clalass01/power/olpc_battery.c#L24" id < 26//a>#defi3e 0x12STAT_FULL /spa6 clalaalass02/power/olpc_battery.c#L24" id 0x12STAT_LOW /spa6 clalaalaass04/power/olpc_battery.c#L24" id < 18//a>#incl3de &l38href="drivers/power/olpc_ba0x12STAT_DESTROY_BAT_ACR//a> 0x12STAT_DESTROY /spa6 clalass08/power/olpc_battery.c#L24" id < 19//a>#incl3de &l39href="drivers/power/olpc_ba0x12STAT_AC_BAT_ACR//a> 0x12STAT_AC /spa6 clalaalaaass="/power/olpc_battery.c#L4" id < 20//a>#incl4de &l40href="drivers/power/olpc_ba0x12STAT_CHARGING_BAT_ACR//a> 0x12STAT_CHARGING /spa6 clal0x2"/power/olpc_battery.c#L4" id < 21//a>#incl4de &l41href="drivers/power/olpc_ba0x12STAT_DISCHARGING_BAT_ACR//a> 0x12STAT_DISCHARGING /spa6 c0x4"/power/olpc_battery.c#L4" id < 22uea.3< <3//a>/spa6 4ef="d4ivers/power/olpc_battery.c#L24" id < <4//a>/spa6 ce 0x12ERR_INFOFAIL /spa6 clalass02/power/olpc_battery.c#L24" id < 25//a>#defi4eEC_BAT_VOLTAGE//a0x12ERR_OVERref">EC /spa6 clss04/power/olpc_battery.c#L24" id < 26//a>#defi4e 0x12ERR_OVER#L2e /spa6 clalass05/power/olpc_battery.c#L24" id 0x12ERR_GAUGESTOe /spa6 clal0x06/power/olpc_battery.c#L24" id < 18//a>#incl4de &l48href="drivers/power/olpc_ba0x12ERR_OUT_OF_CONTROL_BAT_ACR//a> 0x12ERR_OUT_OF_CONTROLa6 class07/power/olpc_battery.c#L24" id < 19//a>#incl4de &l49href="drivers/power/olpc_ba0x12ERR_ID_FAIL_BAT_ACR//a> 0x12ERR_ID_FAIL /spa6 clalaass09/power/olpc_battery.c#L5" id < 20//a>#incl5de &l50href="drivers/power/olpc_ba0x12ERR_ACR_FAIL_BAT_ACR//a> 0x12ERR_ACR_FAIL /spa6 clalass="/power/olpc_battery.c#L4" id < 21//a>#incl5de &l51vers/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 5ef="d5ivers/power/olpc_battery.c#L24" id < <4//a>/spa6 5e * Copyright/*********************************************************************drivers/power/olpc_battery.c#L5" id < <5//a>/spa6 ce *//spa6.3< 26//a>#defi5e * This program is "drivers/power/olpc_battery.c#L27" id < 18//a>#incl5de &l58hrefpng" a50/1rs/power/olpc_ba4" idac_get_prop_BAT_VOLTAGE//a4" idac_get_prophref(struc1rs/power/olpc_ba>>3>3se_BAT_VOLTAGE//a>se /sp,/power/olpc_battery.c#L24" id < 19//a>#incl5de &l59 /spa6 clalaalaaaaaaaaaaaaaaaaaaenumrs/power/olpc_ba>>3>3sp_BAT_VOLTAGE//a>sp /sp,/power/olpc_battery.c#L24" id < 20//a>#incl6de &l60 /spa6 clalaalaaaaaaaaaaaaaaaaaauna hrs/power/olpc_ba>>3>3< 21//a>#incl6de &l61vers{/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 6ef="d63 /spa6 clalas/power/olpc_ba6/328 /iAT_VOLTAGE//a6/328 /spas/power/olpc_bapng"us/iAT_VOLTAGE//apng"us /sps/power/olpc_battery.c#L22" id < <4//a>/spa6 6e< <5//a>/spa6 6esp_BAT_VOLTAGE//a>sp /sp) {/power/olpc_battery.c#L24" id < <6//a>/spa6 ce 0x12STATUS /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, &s/power/olpc_bapng"us/iAT_VOLTAGE//apng"us /sp, 1)s/power/olpc_battery.c#L22" id < 18//a>#incl6de &l68 /spa6 clalaalaaaaaaif (s/power/olpc_bar0< 19//a>#incl6de &l69 /spa6 clalaalaaaaaaaaaaaaaa/input s/power/olpc_bar0< 20//a>#incl7de &l7ivers/power/olpc_battery.c#L11" id < 21//a>#incl7de &l71 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= !!(s/power/olpc_bapng"us/iAT_VOLTAGE//apng"us /sp &rs/power/olpc_ba0x12STAT_AC_BAT_ACR//a> 0x12STAT_AC /sp)s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 7ef="d73 /spa6 clala"drault:/power/olpc_battery.c#L24" id < <4//a>/spa6 7e INVAL /sps/power/olpc_battery.c#L22" id < <5//a>/spa6 7e< <6//a>/spa6 7e< <7//a>/spa6 ca6.3<77 /spa6 clala/input s/power/olpc_bar0< 18//a>#incl7de &l78 /sp}/power/olpc_battery.c#L22" id < 19//a>#incl7de &l79vers/power/olpc_battery.c#L11" id < 20//a>#incl8de &l80hrefpng" a5enumrs/power/olpc_ba>>3>3< 21//a>#incl8de &l81 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_ONLINC_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_ONLINC /sp,/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 8ef="d8ivers/power/olpc_battery.c#L24" id < <4//a>/spa6 8e>3>3< <5//a>/spa6 8e/sp/iAT_VOLTAGE//a>/sp /spa= snt"> * This r mong">"3< <6//a>/spa6 8e POWER_SUPPLY_TYPC_MAINS /sp,/power/olpc_battery.c#L24" id < <7//a>/spa6 8a6.3<87 /spa6 clala.s/power/olpc_baproperties/iAT_VOLTAGE//aproperties /spa= s/power/olpc_ba4" idac_props/iAT_VOLTAGE//a4" idac_props /sp,/power/olpc_battery.c#L24" id < <8//a>/spa6 cde &l88 /spa6 clala.s/power/olpc_ba>um_properties/iAT_VOLTAGE//a>um_properties /spa= s/power/olpc_baARRAY_SIZC_BAT_VOLTAGE//aARRAY_SIZChref(s/power/olpc_ba4" idac_props/iAT_VOLTAGE//a4" idac_props /sp),/power/olpc_battery.c#L24" id < 19//a>#incl8de &l89 /spa6 clala.s/power/olpc_baget_properte_BAT_VOLTAGE//aget_properte /spa= s/power/olpc_ba4" idac_get_prop_BAT_VOLTAGE//a4" idac_get_prophref,/power/olpc_battery.c#L24" id < 20//a>#incl9de &l90 /sp}s/power/olpc_battery.c#L22" id < 21//a>#incl9de &l91vers/power/olpc_battery.c#L24" id < 22uea.3/* uint16_t, *9.7Ickf="drivers/power/olpc_battery.c#L27" id < <3//a>/spa6 9ef="d9ivers/power/olpc_battery.c#L24" id < <4//a>/spa6 9e>3>3< <5//a>/spa6 9e< <6//a>/spa6 9e>3info/iAT_VOLTAGE//a4" id//a>>3info /sp.s/power/olpc_baecatt/iAT_VOLTAGE//aeiv#Ldrsp >c0x44) {/power/olpc_battery.c#L24" id < <7//a>/spa6 9a6.3<97 /spa6 clalaalaaaaaaif (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &r(s/power/olpc_ba0x12STAT_CHARGING_BAT_ACR//a> 0x12STAT_CHARGING /spa|rs/power/olpc_ba0x12STAT_TRICKLC_BAT_VOLTAGE//a0x12STAT_TRICKLC /sp))/power/olpc_battery.c#L24" id < <8//a>/spa6 9de &l98 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_STATUS_CHARGING_BAT_ACR//a> POWER_SUPPLY_STATUS_CHARGING /sps/power/olpc_battery.c#L22" id < <9//a>/spa6 cde &l99 /spa6 clalaalaaaaaaelseaif (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_DISCHARGING_BAT_ACR//a> 0x12STAT_DISCHARGING /sp)/power/olpc_battery.c#L24" id < aluea.3< 11//a>#inclu01e &re1 /spa6 clalaalaaaaaaelseaif (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_FULL_BAT_ACR//a> 0x12STAT_FULL /sp)/power/olpc_battery.c#L24" id < 12//a>#inclu02e &re2 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_STATUS_FULL_BAT_ACR//a> POWER_SUPPLY_STATUS_FULL /sps/power/olpc_battery.c#L22" id < 13//a>#inclu03e &re3 /spa6 clalaalaaaaaaelseaent">/* uint16_t, *9.7er,...f="drivers/power/olpc_battery.c#L10" id < 14//a>#inclu04e &re4 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_STATUS_NOT_CHARGING_BAT_ACR//a> POWER_SUPPLY_STATUS_NOT_CHARGING /sps/power/olpc_battery.c#L22" id < 15//a>#inclu05e &re5 /spa6 clala}aelsea{/power/olpc_battery.c#L24" id < 16//a>#inclu06e &re6 /spa6 clalaalaaaaaaent">/* uint16_t, *9.7Olthe EC didn't report5charge/dischargehbitsf="drivers/power/olpc_battery.c#L10" id < 17//a>#inclu07e &re7 /spa6 clalaalaaaaaaif (!(s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_AC_BAT_ACR//a> 0x12STAT_AC /sp))aent">/* uint16_t, *9.7No AC means dischargingf="drivers/power/olpc_battery.c#L10" id < 18//a>#inclu08e &re8 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_STATUS_DISCHARGING_BAT_ACR//a> POWER_SUPPLY_STATUS_DISCHARGING /sps/power/olpc_battery.c#L22" id < 19//a>#inclu09e &re9 /spa6 clalaalaaaaaaelseaif (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_FULL_BAT_ACR//a> 0x12STAT_FULL /sp)/power/olpc_battery.c#L24" id < aluea.3 POWER_SUPPLY_STATUS_FULL /sps/power/olpc_battery.c#L22" id < 11//a>#includ1e &r11 /spa6 clalaalaaaaaaelseaent">/* uint16_t, *9.7Not _necessarily_ truehbut EC doesn't tell all yeam="drivers/power/olpc_battery.c#L27" id < 12//a>#incluude &112 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_STATUS_CHARGING_BAT_ACR//a> POWER_SUPPLY_STATUS_CHARGING /sps/power/olpc_battery.c#L22" id < 13//a>#incluude &113 /spa6 clala}/power/olpc_battery.c#L22" id < 14//a>#incluude &114vers/power/olpc_battery.c#L24" id < 15//a>#incluude &115 /spa6 clala/input 0s/power/olpc_battery.c#L22" id < 16//a>#incluude &1t;< 17//a>#incluude &117vers/power/olpc_battery.c#L24" id < 18//a>#incluude &118hrefpng" a50/1rs/power/olpc_ba4" id 4" id >3>3< 19//a>#incluude &1t;< 20//a>#incl1ude &12d /spa6 clalas/power/olpc_ba6/328 /iAT_VOLTAGE//a6/328 /spas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sps/power/olpc_battery.c#L12" id < 21//a>#incl1ude &121 /spa6 clala0/1rs/power/olpc_bar0< 12//a>#includde &1rivers/power/olpc_battery.c#L23" id < 23uea.3 0x10ERRCODCa6 c, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 24//a>#defi1ne< 25//a>#defi1ne< 26//a>#defi1ne< 18//a>#incl12de &128 /spa6 clalacaser0:/power/olpc_battery.c#L24" id < 19//a>#incl12de &129 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_HEALTH_GOOD_BAT_ACR//a> POWER_SUPPLY_HEALTH_GOOD /sps/power/olpc_battery.c#L22" id < 20//a>#incl13de &13d /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 21//a>#incl13de &131vers/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 1cef="133 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_HEALTH_OVERHEAC_BAT_CURRENT//aPOWER_SUPPLY_HEALTH_OVERHEAC /sps/power/olpc_battery.c#L22" id < 24//a>#defi13e< 25//a>#defi13e< 26//a>#defi13eEC_BAT_VOLTAGE//a0x12ERR_OVERref">EC /sp:/power/olpc_battery.c#L24" id EC_BAT_VOLTAGE//aPOWER_SUPPLY_HEALTH_OVERref">EC /sps/power/olpc_battery.c#L22" id < 18//a>#incl13de &138 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 19//a>#incl13de &139vers/power/olpc_battery.c#L11" id < 20//a>#incl14de &140 /spa6 clalacasers/power/olpc_ba0x12ERR_INFOFAIL_BAT_ACR//a> 0x12ERR_INFOFAIL /sp:/power/olpc_battery.c#L24" id < 21//a>#incl14de &141 /spa6 clalacasers/power/olpc_ba0x12ERR_OUT_OF_CONTROL_BAT_ACR//a> 0x12ERR_OUT_OF_CONTROLa6 c:/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 14ef="143 /spa6 clalacasers/power/olpc_ba0x12ERR_ACR_FAIL_BAT_ACR//a> 0x12ERR_ACR_FAIL /sp:/power/olpc_battery.c#L24" id < 14//a>#include< 25//a>#defi14e< 26//a>#defi14e< 18//a>#incl14de &148 /spa6 clalaalaaaaaaent">/* uint16_t, *9.7Eep. We don't know put failud <0c_bm="drivers/power/olpc_battery.c#L27" id < 19//a>#incl14de &149 /spa6 clalaalaaaaaas/power/olpc_bar0IO /sps/power/olpc_battery.c#L22" id < 20//a>#incl15de &150 /spa6 clala}/power/olpc_battery.c#L22" id < 21//a>#incl15de &151vers/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 15ef="15ivers}/power/olpc_battery.c#L22" id < <4//a>/spa6 15e< <5//a>/spa6 1ce>3>3< 26//a>#defi15e< 18//a>#incl15de &158 /spa6 clala0/1rs/power/olpc_bar0< 19//a>#incl15de &159vers/power/olpc_battery.c#L11" id < 20//a>#incl16de &16d /spa6 clalas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp = s/power/olpc_ba0x12ADDR_MFR_TYPC_BAT_VOLTAGE//a0x12ADDR_MFR_TYPC /sps/power/olpc_battery.c#L16" id < 21//a>#incl16de &161 /spa6 clalas/power/olpc_bar0 0x12EEPROM /sp, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 16ef="163 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< <4//a>/spa6 16e< <5//a>/spa6 16e< 16//a>#include * This r mong">"Gold Peak"driverss/power/olpc_battery.c#L22" id < 18//a>#incl16de &168 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 19//a>#incl16de &169 /spa6 clalacaser2:/power/olpc_battery.c#L24" id < 20//a>#incl17de &17d /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_bastrval_BAT_VOLTAGE//astrval /spa= snt"> * This r mong">"BYD"driverss/power/olpc_battery.c#L22" id < 21//a>#incl17de &171 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 17ef="173 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_bastrval_BAT_VOLTAGE//astrval /spa= snt"> * This r mong">"Unknown"driverss/power/olpc_battery.c#L22" id < <4//a>/spa6 17e< <5//a>/spa6 17e< <6//a>/spa6 17e< <7//a>/spa6 1ca6.3177 /spa6 clala/input s/power/olpc_bar0< 18//a>#incl17de &178 /sp}/power/olpc_battery.c#L22" id < 19//a>#incl17de &179vers/power/olpc_battery.c#L11" id < 20//a>#incl18de &180hrefpng" a50/1rs/power/olpc_ba4" id 4" id >3>3< 21//a>#incl18de &181vers{/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 18ef="183 /spa6 clala0/1rs/power/olpc_bar0< <4//a>/spa6 18e< <5//a>/spa6 18e< <6//a>/spa6 18e 0x12EEPROM /sp, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < <7//a>/spa6 18a6.3187 /spa6 clala0f (s/power/olpc_bar0< <8//a>/spa6 1cde &188 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 19//a>#incl18de &189vers/power/olpc_battery.c#L11" id < 20//a>#incl19de &19d /spa6 clalaswitch (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &r0xf) {/power/olpc_battery.c#L24" id < 21//a>#incl19de &191 /spa6 clalacaser1:/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 19ef="193 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < <4//a>/spa6 19e< <5//a>/spa6 19e< <6//a>/spa6 19e< <7//a>/spa6 19a6.3197 /spa6 clala"drault:/power/olpc_battery.c#L24" id < <8//a>/spa6 19de &198 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_TECHNOLOGY_UNKNOWN/iAT_VOLTAGE//aPOWER_SUPPLY_TECHNOLOGY_UNKNOWN /sps/power/olpc_battery.c#L22" id < 19//a>#includde &199 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < aluea.3< 11//a>#incl201e &201vers/power/olpc_battery.c#L24" id < 12//a>#incl202e &202 /spa6 clala/input s/power/olpc_bar0< 13//a>#incl203e &20ivers}/power/olpc_battery.c#L22" id < 14//a>#incl204e &204vers/power/olpc_battery.c#L24" id < 15//a>#incl205e &20"commpng" a50/1rs/power/olpc_ba4" id 4" id >3>3< 16//a>#incl206e &20"comm{/power/olpc_battery.c#L24" id < 17//a>#incl207e &207 /spa6 clalas/power/olpc_ba6/328 /iAT_VOLTAGE//a6/328 /spas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sps/power/olpc_battery.c#L12" id < 18//a>#incl208e &2e8 /spa6 clalauna hrs/power/olpc_ba>>3>3 techhrefs/power/olpc_battery.c#L12" id < 19//a>#incl209e &2e9 /spa6 clala0/1rs/power/olpc_bar0< aluea.3< 11//a>#incl2d1e &211 /spa6 clalas/power/olpc_bar0 4" id techhref)s/power/olpc_battery.c#L22" id < 12//a>#incl2ude &212 /spa6 clala0f (s/power/olpc_bar0< 13//a>#incl2ude &213 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 14//a>#incl2ude &214vers/power/olpc_battery.c#L24" id < 15//a>#incl2ude &215 /spa6 clalas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp = s/power/olpc_ba0x12ADDR_MFR_TYPC_BAT_VOLTAGE//a0x12ADDR_MFR_TYPC /sps/power/olpc_battery.c#L16" id < 16//a>#incl2ude &216 /spa6 clalas/power/olpc_bar0 0x12EEPROM /sp, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 17//a>#incl2ude &217 /spa6 clala0f (s/power/olpc_bar0< 18//a>#incl2ude &218 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 19//a>#incl2ude &219vers/power/olpc_battery.c#L11" id < 20//a>#incl2ude &22d /spa6 clalas/power/olpc_bamft/iAT_VOLTAGE//amfthrefa= s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &spa6.3e 4s/power/olpc_battery.c#L22" id < 21//a>#incl2ude &221vers/power/olpc_battery.c#L24" id < 12//a>#incl2dde &222 /spa6 clalaswitch (s/power/olpc_batech_BAT_ACR//a> techhref.s/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /sp) {/power/olpc_battery.c#L24" id < 23uea.3< 24//a>#defi2ne< 25//a>#defi2ne/* uint16_t, *9.7Gold Peakm="drivers/power/olpc_battery.c#L27" id < 26//a>#defi2ne< 18//a>#incl22de &228 /spa6 clalaalaaaaaa"drault:/power/olpc_battery.c#L24" id < 19//a>#incl22de &229 /spa6 clalaalaaaaaaalaaaaaa/input -s/power/olpc_batIO_BAT_VOLTAGE//a>IO /sps/power/olpc_battery.c#L22" id < 20//a>#incl23de &23d /spa6 clalaalaaaaaa}/power/olpc_battery.c#L22" id < 21//a>#incl23de &231 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 2cef="233 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_TECHNOLOGY_LiFr/iAT_VOLTAGE//aPOWER_SUPPLY_TECHNOLOGY_LiFr /sp:/power/olpc_battery.c#L24" id < 24//a>#defi23e< 25//a>#defi23e/* uint16_t, *9.7Gold Peak, fall throughm="drivers/power/olpc_battery.c#L27" id < 26//a>#defi23e/* uint16_t, *9.7BYDm="drivers/power/olpc_battery.c#L27" id < 18//a>#incl23de &238 /spa6 clalaalaaaaaaalaaaaaabreaks/power/olpc_battery.c#L22" id < 19//a>#incl23de &239 /spa6 clalaalaaaaaa"drault:/power/olpc_battery.c#L24" id < 20//a>#incl24de &24d /spa6 clalaalaaaaaaa6 clala/input -s/power/olpc_batIO_BAT_VOLTAGE//a>IO /sps/power/olpc_battery.c#L22" id < 21//a>#incl24de &241 /spa6 clalaalaaaaaa}/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 24ef="24ivers/power/olpc_battery.c#L24" id < 14//a>#incl2de< 25//a>#defi24eIO /sps/power/olpc_battery.c#L22" id < 26//a>#defi24e< 18//a>#incl24de &248 /spa6 clala/input s/power/olpc_bar0< 19//a>#incl24de &249 /sp}/power/olpc_battery.c#L22" id < 20//a>#incl25de &25ivers/power/olpc_battery.c#L11" id < 21//a>#incl25de &251verspng" a50/1rs/power/olpc_ba4" id 4" id >3>3< 22uea.3< <3//a>/spa6 25ef="253 /spa6 clalas/power/olpc_ba6/328 /iAT_VOLTAGE//a6/328 /spas/power/olpc_bapoc/iAT_VOLTAGE//apoc /sps/power/olpc_battery.c#L22" id < <4//a>/spa6 25e>3>3< <5//a>/spa6 2ce< 26//a>#defi25e ttery.cSOC /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, &s/power/olpc_bapoc/iAT_VOLTAGE//apoc /sp, 1)s/power/olpc_battery.c#L22" id < 18//a>#incl25de &258 /spa6 clala0f (s/power/olpc_bar0< 19//a>#incl25de &259 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 20//a>#incl26de &26ivers/power/olpc_battery.c#L11" id < 21//a>#incl26de &261 /spa6 clalas/power/olpc_bar0 4" id < 22uea.3< <3//a>/spa6 26ef="263 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< <4//a>/spa6 26e< <5//a>/spa6 26e< 16//a>#incl2de< 18//a>#incl26de &268 /sp/power/olpc_battery.c#L22" id < 19//a>#incl26de &269 /sppng" a50/1rs/power/olpc_ba4" id 4" id >3>3< 20//a>#incl27de &27d /sp{/power/olpc_battery.c#L24" id < 21//a>#incl27de &271 /spa6 clalas/power/olpc_ba6/328 /iAT_VOLTAGE//a6/328 /spas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sps/power/olpc_battery.c#L12" id < 22uea.3< <3//a>/spa6 27ef="273 /spa6 clala0/1rs/power/olpc_bamft/iAT_VOLTAGE//amfthrefs/power/olpc_battery.c#L12" id < <4//a>/spa6 27e< <5//a>/spa6 27e< <6//a>/spa6 27e 4" id techhref)s/power/olpc_battery.c#L22" id < <7//a>/spa6 2ca6.3277 /spa6 clala0f (s/power/olpc_bar0< 18//a>#incl27de &278 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 19//a>#incl27de &279vers/power/olpc_battery.c#L11" id < 20//a>#incl28de &28d /spa6 clalas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp = s/power/olpc_ba0x12ADDR_MFR_TYPC_BAT_VOLTAGE//a0x12ADDR_MFR_TYPC /sps/power/olpc_battery.c#L16" id < 21//a>#incl28de &281 /spa6 clalas/power/olpc_bar0 0x12EEPROM /sp, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 28ef="283 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< <4//a>/spa6 28e< <5//a>/spa6 28e< <6//a>/spa6 28e< <7//a>/spa6 28a6.3287 /spa6 clalaswitch (s/power/olpc_batech_BAT_ACR//a> techhref.s/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /sp) {/power/olpc_battery.c#L24" id < <8//a>/spa6 2cde &288 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_TECHNOLOGY_NiMH_BAT_VOLTAGE//aPOWER_SUPPLY_TECHNOLOGY_NiMH /sp:/power/olpc_battery.c#L24" id < 19//a>#incl28de &289 /spa6 clalaalaaaaaaswitch (s/power/olpc_bamft/iAT_VOLTAGE//amfthref) {/power/olpc_battery.c#L24" id < 20//a>#incl29de &29d /spa6 clalaalaaaaaacaser1:aent">/* uint16_t, *9.7Gold Peakm="drivers/power/olpc_battery.c#L27" id < 21//a>#incl29de &291 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= 6000000s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 29ef="293 /spa6 clalaalaaaaaa"drault:/power/olpc_battery.c#L24" id < <4//a>/spa6 29eIO /sps/power/olpc_battery.c#L22" id < <5//a>/spa6 29e< <6//a>/spa6 29e< <7//a>/spa6 29a6.3297vers/power/olpc_battery.c#L24" id < <8//a>/spa6 29de &298 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_TECHNOLOGY_LiFr/iAT_VOLTAGE//aPOWER_SUPPLY_TECHNOLOGY_LiFr /sp:/power/olpc_battery.c#L24" id < 19//a>#incl2dde &299 /spa6 clalaalaaaaaaswitch (s/power/olpc_bamft/iAT_VOLTAGE//amfthref) {/power/olpc_battery.c#L24" id < aluea.3/* uint16_t, *9.7Gold Peakm="drivers/power/olpc_battery.c#L27" id < 11//a>#incl301e &3e1 /spa6 clalaalaaaaaaaaaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= 6400000s/power/olpc_battery.c#L22" id < 12//a>#incl302e &3e2 /spa6 clalaalaaaaaaa6 clalabreaks/power/olpc_battery.c#L22" id < 13//a>#incl303e &3e3 /spa6 clalaalaaaaaacaser2:aent">/* uint16_t, *9.7BYDm="drivers/power/olpc_battery.c#L27" id < 14//a>#incl304e &3e4 /spa6 clalaalaaaaaaa6 clalas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= 6500000s/power/olpc_battery.c#L22" id < <5//a>/spa6 305e &305 /spa6 clalaalaaaaaaa6 clalabreaks/power/olpc_battery.c#L22" id < <6//a>/spa6 306e &3e6 /spa6 clalaalaaaaaa"drault:/power/olpc_battery.c#L24" id < 17//a>#incl307e &3e7 /spa6 clalaalaaaaaaaaaaaaaa/input -s/power/olpc_batIO_BAT_VOLTAGE//a>IO /sps/power/olpc_battery.c#L22" id < 18//a>#incl308e &3e8 /spa6 clalaalaaaaaa}/power/olpc_battery.c#L22" id < 19//a>#incl309e &3e9 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < aluea.3< 11//a>#incl3d1e &311 /spa6 clala"drault:/power/olpc_battery.c#L24" id < 12//a>#incl3ude &312 /spa6 clalaalaaaaaa/input -s/power/olpc_batIO_BAT_VOLTAGE//a>IO /sps/power/olpc_battery.c#L22" id < 13//a>#incl3ude &313 /spa6 clala}/power/olpc_battery.c#L22" id < 14//a>#incl3ude &314vers/power/olpc_battery.c#L24" id < 15//a>#incl3ude &315 /spa6 clala/input s/power/olpc_bar0< 16//a>#incl3ude &3t;< 17//a>#incl3ude &317vers/power/olpc_battery.c#L24" id < 18//a>#incl3ude &318 /spent">/* uint16_t, *9.....................................................................drivers/power/olpc_battery.c#L27" id < 19//a>#incl3ude &319versent">/* uint16_t, * * clalaalaaaaaaB< 20//a>#incl3ude &32d /spent">/* uint16_t, * *********************************************************************"drivers/power/olpc_battery.c#L27" id < 21//a>#incl3ude &321verspng" a50/1rs/power/olpc_ba4" id 4" id >3>3se /sp,/power/olpc_battery.c#L27" id < 12//a>#incl3dde &322 /spa6 clalaalaaaaaaa6 clalaaaaaaaaaaenumrs/power/olpc_ba>>3 >>3sp /sp,/power/olpc_battery.c#L27" id < 23uea.3< 24//a>#defi3ne< 25//a>#defi3ne< 26//a>#defi3neAGE//a__bena /spas/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sps/power/olpc_battery.c#L22" id < 18//a>#incl32de &328 /spa6 clalas/power/olpc_ba__be6am < 19//a>#incl32de &329vers/power/olpc_battery.c#L11" id < 20//a>#incl33de &33d /spa6 clalas/power/olpc_bar0 0x12STATUS /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 21//a>#incl33de &331 /spa6 clala0f (s/power/olpc_bar0< 22uea.3< <3//a>/spa6 3cef="33ivers/power/olpc_battery.c#L24" id < 24//a>#defi33e/* uint16_t, *9.7Theor0< 25//a>#defi33e/* uint16_t, * laalaaaaaa/imoved it, diately af v we check whether it's pres , anddrivers/power/olpc_battery.c#L27" id < 26//a>#defi33e/* uint16_t, * laalaaaaaathen we qu4" for some other property of the now-abs /* uint16_t, * laalaaaaaaIt doesn't m< 18//a>#incl33de &338 /spent">/* uint16_t, * laalaaaaaainform< 19//a>#incl33de &339versent">/* uint16_t, * and managed toa/iad it ou efore the < 20//a>#incl34de &34d /spa6 clala0f (!(s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &r(s/power/olpc_ba0x12STAT_PRESENC_BAT_CURRENT//a0x12STAT_PRESENC /sp | s/power/olpc_ba0x12STAT_TRICKLC_BAT_VOLTAGE//a0x12STAT_TRICKLC /sp)) &&/power/olpc_battery.c#L27" id < 21//a>#incl34de &341 /spa6 clalaalaaaaaaa6 clalas/power/olpc_bapsp_BAT_VOLTAGE//a>sp /sp != s/power/olpc_baPOWER_SUPPLY_PROP_PRESENC_BAT_CURRENT//aPOWER_SUPPLY_PROP_PRESENC /sp)/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 34ef="34ivers/power/olpc_battery.c#L24" id < 14//a>#incl3desp /sp) {/power/olpc_battery.c#L24" id < 25//a>#defi34e POWER_SUPPLY_PROP_STATUS /sp:/power/olpc_battery.c#L24" id < 26//a>#defi34e 4" id < 18//a>#incl34de &348 /spa6 clalaalaaaaaaalaaaaaa/input s/power/olpc_bar0< 19//a>#incl34de &349 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 20//a>#incl35de &350 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_TYPC_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_TYPC /sp:/power/olpc_battery.c#L24" id < 21//a>#incl35de &351 /spa6 clalaalaaaaaa0f (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_TRICKLC_BAT_VOLTAGE//a0x12STAT_TRICKLC /sp)/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 35ef="353 /spa6 clalaalaaaaaaelser0f (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_CHARGING_BAT_VOLTAGE//a0x12STAT_CHARGING /sp)/power/olpc_battery.c#L24" id < <4//a>/spa6 35e< <5//a>/spa6 3ce< 26//a>#defi35e< 18//a>#incl35de &358 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_PRESENC_BAT_CURRENT//aPOWER_SUPPLY_PROP_PRESENC /sp:/power/olpc_battery.c#L24" id < 19//a>#incl35de &359 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= !!(s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &r(s/power/olpc_ba0x12STAT_PRESENC_BAT_CURRENT//a0x12STAT_PRESENC /sp |/power/olpc_battery.c#L24" id < 20//a>#incl36de &36d /spa6 clalaalaaaaaaa6 clalalalaalaaaaaaa6 clalas/power/olpc_ba0x12STAT_TRICKLC_BAT_VOLTAGE//a0x12STAT_TRICKLC /sp))s/power/olpc_battery.c#L22" id < 21//a>#incl36de &361 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 36ef="363 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_HEALTH_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_HEALTH /sp:/power/olpc_battery.c#L24" id < <4//a>/spa6 36e< <5//a>/spa6 36e< 16//a>#incl3de 4" id < 18//a>#incl36de &368 /spa6 clalaalaaaaaaalaaaaaa0f (s/power/olpc_bar0< 19//a>#incl36de &369 /spa6 clalaalaaaaaaalaaaaaaaaaaaaaa/input s/power/olpc_bar0< 20//a>#incl37de &37d /spa6 clalaalaaaaaa}/power/olpc_battery.c#L22" id < 21//a>#incl37de &371 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 37ef="373 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_MANUFACTURER_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_MANUFACTURER /sp:/power/olpc_battery.c#L24" id < <4//a>/spa6 37e< <5//a>/spa6 37e< <6//a>/spa6 37e< <7//a>/spa6 3ca6.3377 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 18//a>#incl37de &378 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_TECHNOLOGY_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_TECHNOLOGY /sp:/power/olpc_battery.c#L24" id < 19//a>#incl37de &379 /spa6 clalaalaaaaaas/power/olpc_bar0 4" id < 20//a>#incl38de &38d /spa6 clalaalaaaaaa0f (s/power/olpc_bar0< 21//a>#incl38de &381 /spa6 clalaalaaaaaaa6 clala/input s/power/olpc_bar0< 22uea.3< <3//a>/spa6 38ef="383 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_VOLTAGE_AVG_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_VOLTAGE_AVG /sp:/power/olpc_battery.c#L24" id < <4//a>/spa6 38e< <5//a>/spa6 38e 0x12VOLTAGE /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, (void *)&s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp, 2)s/power/olpc_battery.c#L22" id < <6//a>/spa6 38e< <7//a>/spa6 38a6.3387 /spa6 clalaalaaaaaaaaaaaaaa/input s/power/olpc_bar0< <8//a>/spa6 3cde &388 /sp/power/olpc_battery.c#L22" id < 19//a>#incl38de &389 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= (s/power/olpc_basnam AGE//asna /sp)s/power/olpc_babena_to_cpum AGE//abena_to_cpuhref(s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp) * 9760L / 32s/power/olpc_battery.c#L22" id < 20//a>#incl39de &39d /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 21//a>#incl39de &391 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_CURRENT_AVG_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CURRENT_AVG /sp:/power/olpc_battery.c#L24" id < 22uea.3< <3//a>/spa6 39ef="393 /spa6 clalaalaaaaaas/power/olpc_bar0 0x12CURRENT /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, (void *)&s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp, 2)s/power/olpc_battery.c#L22" id < <4//a>/spa6 39e< <5//a>/spa6 39e< <6//a>/spa6 39e< <7//a>/spa6 39a6.3397 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= (s/power/olpc_basnam AGE//asna /sp)s/power/olpc_babena_to_cpum AGE//abena_to_cpuhref(s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp) * 15625L / 120s/power/olpc_battery.c#L22" id < <8//a>/spa6 39de &398 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 19//a>#incl3dde &399 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_CAPACITY_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CAPACITY /sp:/power/olpc_battery.c#L24" id < aluea.3 ttery.cSOC /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 11//a>#incl401e &4e1 /spa6 clalaalaaaaaa0f (s/power/olpc_bar0< 12//a>#incl402e &4e2 /spa6 clalaalaaaaaaa6 clala/input s/power/olpc_bar0< 13//a>#incl403e &4e3 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sps/power/olpc_battery.c#L12" id < 14//a>#incl404e &4e4 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < <5//a>/spa6 405e &405 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_CAPACITY_LEVEL_BAT_ACR//a> POWER_SUPPLY_PROP_CAPACITY_LEVEL /sp:/power/olpc_battery.c#L24" id < <6//a>/spa6 406e &4e6 /spa6 clalaalaaaaaa0f (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_FULL_BAT_ACR//a> 0x12STAT_FULL /sp)/power/olpc_battery.c#L24" id < <7//a>/spa6 407e &4e7 /spa6 clalaalaaaaaaaaaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_CAPACITY_LEVEL_FULL_BAT_ACR//a> POWER_SUPPLY_CAPACITY_LEVEL_FULL /sps/power/olpc_battery.c#L12" id < <8//a>/spa6 408e &4e8 /spa6 clalaalaaaaaaelser0f (s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp &rs/power/olpc_ba0x12STAT_LOW_BAT_VOLTAGE//a0x12STAT_LOW /sp)/power/olpc_battery.c#L24" id < 19//a>#incl409e &4e9 /spa6 clalaalaaaaaaaaaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_CAPACITY_LEVEL_LOW_BAT_VOLTAGE//aPOWER_SUPPLY_CAPACITY_LEVEL_LOW /sps/power/olpc_battery.c#L12" id < aluea.3< 11//a>#incl4d1e &411 /spa6 clalaalaaaaaaaaaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= s/power/olpc_baPOWER_SUPPLY_CAPACITY_LEVEL_NORMAL_BAT_ACR//a> POWER_SUPPLY_CAPACITY_LEVEL_NORMAL /sps/power/olpc_battery.c#L12" id < 12//a>#incl4ude &412 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 13//a>#incl4ude &413 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_FULL_DESIGN_BAT_ACR//a> POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN /sp:/power/olpc_battery.c#L24" id < 14//a>#incl4ude &414 /spa6 clalaalaaaaaas/power/olpc_bar0 4" id < 15//a>#incl4ude &415 /spa6 clalaalaaaaaa0f (s/power/olpc_bar0< 16//a>#incl4ude &416 /spa6 clalaalaaaaaaa6 clala/input s/power/olpc_bar0< 17//a>#incl4ude &417 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 18//a>#incl4ude &418 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_NOW_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_NOW /sp:/power/olpc_battery.c#L24" id < 19//a>#incl4ude &419 /spa6 clalaalaaaaaas/power/olpc_bar0 4" id < 20//a>#incl4ude &42d /spa6 clalaalaaaaaa0f (s/power/olpc_bar0< 21//a>#incl4ude &421 /spa6 clalaalaaaaaaa6 clala/input s/power/olpc_bar0< 12//a>#incl4dde &422 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 23uea.3< 24//a>#defi4ne NULL /sp, 0, (void *)&s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp, 2)s/power/olpc_battery.c#L22" id < 25//a>#defi4ne< 26//a>#defi4ne< 18//a>#incl42de &428 /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_ba/32val_BAT_VOLTAGE//a/32val /spa= (s/power/olpc_basnam AGE//asna /sp)s/power/olpc_babena_to_cpum AGE//abena_to_cpuhref(s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp) * 100 /a25rs/power/olpc_battery.c#L22" id < 19//a>#incl42de &429 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 20//a>#incl43de &430 /spa6 clalacasers/power/olpc_baPOWER_SUPPLY_PROP_TEMP_AMBIENC_BAT_CURRENT//aPOWER_SUPPLY_PROP_TEMP_AMBIENC /sp:/power/olpc_battery.c#L24" id < 21//a>#incl43de &431 /spa6 clalaalaaaaaas/power/olpc_bar0 NULL /sp, 0, (void *)&s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp, 2)s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 4cef="433 /spa6 clalaalaaaaaaaaaaaaaa/input s/power/olpc_bar0< 24//a>#defi43e< 25//a>#defi43eAGE//abena_to_cpuhref(s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp) * 100 /a25rs/power/olpc_battery.c#L22" id < 26//a>#defi43e< 18//a>#incl43de &438 /spa6 clalaalaaaaaas/power/olpc_bar0 NULL /sp, 0, (void *)&s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp, 2)s/power/olpc_battery.c#L22" id < 19//a>#incl43de &439 /spa6 clalaalaaaaaa0f (s/power/olpc_bar0< 20//a>#incl44de &44d /spa6 clalaalaaaaaaa6 clala/input s/power/olpc_bar0< 21//a>#incl44de &441 /sp/power/olpc_battery.c#L22" id < 22uea.3AGE//asna /sp)s/power/olpc_babena_to_cpum AGE//abena_to_cpuhref(s/power/olpc_baeidword_BAT_VOLTAGE//aeidword /sp) * 6250 /a15s/power/olpc_battery.c#L22" id < <3//a>/spa6 44ef="443 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 14//a>#incl4de< 25//a>#defi44e ttery.cSERIAL /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, (void *)&s/power/olpc_bapt;3buf/iAT_VOLTAGE//apt;3buf /sp, 8)s/power/olpc_battery.c#L22" id < 26//a>#defi44e< 18//a>#incl44de &448 /sp/power/olpc_battery.c#L22" id < 19//a>#incl44de &449 /spa6 clalaalaaaaaas/power/olpc_bappr/32f/iAT_VOLTAGE//appr/32fhref(s/power/olpc_ba /* uint1str/3g">"%016llx"drivers, (long long)s/power/olpc_babe64_to_cpum AGE//abe64_to_cpuhref(s/power/olpc_bapt;3buf/iAT_VOLTAGE//apt;3buf /sp))s/power/olpc_battery.c#L22" id < 20//a>#incl45de &45d /spa6 clalaalaaaaaas/power/olpc_baval_BAT_VOLTAGE//aval /sp-ef="d/power/olpc_bastrval_BAT_VOLTAGE//astrval /spa= s/power/olpc_ba < 21//a>#incl45de &451 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 45ef="453 /spa6 clalaalaaaaaas/power/olpc_bar0 4" id < <4//a>/spa6 45e< <5//a>/spa6 4ce< 26//a>#defi45e< 18//a>#incl45de &458 /spa6 clalaalaaaaaas/power/olpc_bar0 tINVAL /sps/power/olpc_battery.c#L22" id < 19//a>#incl45de &459 /spa6 clalaalaaaaaabreaks/power/olpc_battery.c#L22" id < 20//a>#incl46de &46d /spa6 clala}/power/olpc_battery.c#L22" id < 21//a>#incl46de &461 /sp/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 46ef="463 /sp}/power/olpc_battery.c#L22" id < <4//a>/spa6 46e< <5//a>/spa6 46e>3 >>3 4" idxo1d < 16//a>#incl4de POWER_SUPPLY_PROP_STATUS /sp,/power/olpc_battery.c#L27" id < 18//a>#incl46de &468 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_PRESENC_BAT_CURRENT//aPOWER_SUPPLY_PROP_PRESENC /sp,/power/olpc_battery.c#L27" id < 19//a>#incl46de &469 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_HEALTH_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_HEALTH /sp,/power/olpc_battery.c#L27" id < 20//a>#incl47de &47d /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_TECHNOLOGY_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_TECHNOLOGY /sp,/power/olpc_battery.c#L27" id < 21//a>#incl47de &471 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_VOLTAGE_AVG_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_VOLTAGE_AVG /sp,/power/olpc_battery.c#L27" id < 22uea.3< <3//a>/spa6 47ef="473 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CURRENT_AVG_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CURRENT_AVG /sp,/power/olpc_battery.c#L27" id < <4//a>/spa6 47e< <5//a>/spa6 47e< <6//a>/spa6 47e POWER_SUPPLY_PROP_CAPACITY_LEVEL /sp,/power/olpc_battery.c#L27" id < <7//a>/spa6 4ca6.3477 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_FULL_DESIGN_BAT_ACR//a> POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN /sp,/power/olpc_battery.c#L27" id < 18//a>#incl47de &478 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_NOW_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_NOW /sp,/power/olpc_battery.c#L27" id < 19//a>#incl47de &479 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_TEMP_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_TEMP /sp,/power/olpc_battery.c#L27" id < 20//a>#incl48de &48d /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_TEMP_AMBIENC_BAT_CURRENT//aPOWER_SUPPLY_PROP_TEMP_AMBIENC /sp,/power/olpc_battery.c#L27" id < 21//a>#incl48de &481 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_MANUFACTURER_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_MANUFACTURER /sp,/power/olpc_battery.c#L27" id < 22uea.3< <3//a>/spa6 48ef="483 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_COUNTER_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_COUNTER /sp,/power/olpc_battery.c#L27" id < <4//a>/spa6 48e POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN /sp,/power/olpc_battery.c#L27" id < <5//a>/spa6 48e< <6//a>/spa6 48e< <7//a>/spa6 48a6.3487 /spent">/* uint16_t, */* XO-1.5 does not have ambi temperature property ="drivers/power/olpc_battery.c#L27" id < <8//a>/spa6 4cde &488 /sppng" a5enumrs/power/olpc_ba>>3 >>3 4" idxo15d < 19//a>#incl48de &489 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_STATUS_BAT_ACR//a> POWER_SUPPLY_PROP_STATUS /sp,/power/olpc_battery.c#L27" id < 20//a>#incl49de &49d /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_TYPC_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_TYPC /sp,/power/olpc_battery.c#L27" id < 21//a>#incl49de &491 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_PRESENC_BAT_CURRENT//aPOWER_SUPPLY_PROP_PRESENC /sp,/power/olpc_battery.c#L27" id < 22uea.3< <3//a>/spa6 49ef="493 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_TECHNOLOGY_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_TECHNOLOGY /sp,/power/olpc_battery.c#L27" id < <4//a>/spa6 49e< <5//a>/spa6 49e< <6//a>/spa6 49e< <7//a>/spa6 49a6.3497 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CURRENT_NOW_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CURRENT_NOW /sp,/power/olpc_battery.c#L27" id < <8//a>/spa6 49de &498 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CAPACITY_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CAPACITY /sp,/power/olpc_battery.c#L27" id < 19//a>#incl4dde &499 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CAPACITY_LEVEL_BAT_ACR//a> POWER_SUPPLY_PROP_CAPACITY_LEVEL /sp,/power/olpc_battery.c#L27" id < aluea.3 POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN /sp,/power/olpc_battery.c#L27" id < 11//a>#incl501e &501 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_NOW_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_NOW /sp,/power/olpc_battery.c#L27" id < 12//a>#incl502e &502 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_TEMP_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_TEMP /sp,/power/olpc_battery.c#L27" id < 13//a>#incl503e &503 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_MANUFACTURER_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_MANUFACTURER /sp,/power/olpc_battery.c#L27" id < 14//a>#incl504e &504 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_SERIAL_NUMBER_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_SERIAL_NUMBER /sp,/power/olpc_battery.c#L27" id < <5//a>/spa6 505e &505 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_CHARGE_COUNTER_BAT_VOLTAGE//aPOWER_SUPPLY_PROP_CHARGE_COUNTER /sp,/power/olpc_battery.c#L27" id < <6//a>/spa6 506e &506 /spa6 clalas/power/olpc_baPOWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN_BAT_ACR//a> POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN /sp,/power/olpc_battery.c#L27" id < <7//a>/spa6 507e &5e7 /sp}s/power/olpc_battery.c#L22" id < <8//a>/spa6 508e &508 /sp/power/olpc_battery.c#L22" id < 19//a>#incl509e &509versent">/* uint16_t, */* EEPROMa/iading goes 6_tpletely around the >>3< aluea.3< 11//a>#incl5d1e &511 /sp#def 11as/power/olpc_baEEPROM_START_BAT_ACR//a> EPROM_START /spa6 c0x20/power/olpc_battery.c#L27" id < 12//a>#incl5ude &512 /sp#def 11as/power/olpc_baEEPROM_END_BAT_VOLTAGE//aEEPROM_END /spa6 cla0x80/power/olpc_battery.c#L27" id < 13//a>#incl5ude &513 /sp#def 11as/power/olpc_baEEPROM_SIZC_BAT_VOLTAGE//aEEPROM_SIZC /spa6 cl(s/power/olpc_batEPROM_END_BAT_VOLTAGE//aEEPROM_END /spa-as/power/olpc_baEEPROM_START_BAT_ACR//a> EPROM_START /sp)/power/olpc_battery.c#L24" id < 14//a>#incl5ude &514vers/power/olpc_battery.c#L24" id < 15//a>#incl5ude &515 /sppng" a5d/power/olpc_bassize_ 4" id file /spa*s/power/olpc_bafilp_BAT_VOLTAGE//afilp /sp, structas/power/olpc_bakobjec< 16//a>#incl5ude &516 /spa6 clalaalaaaaaastructas/power/olpc_babin_< 17//a>#incl5ude &517 /sp{/power/olpc_battery.c#L24" id < 18//a>#incl5ude &518 /spa6 clalas/power/olpc_bauint8_< 19//a>#incl5ude &519 /spa6 clalaint s/power/olpc_bar0< 20//a>#incl5ude &52d /spa6 clalaint s/power/olpc_bai/iAT_VOLTAGE//ai /sps/power/olpc_battery.c#L22" id < 21//a>#incl5ude &521 /sp/power/olpc_battery.c#L22" id < 12//a>#incl5dde &522 /spa6 clala0f (s/power/olpc_ba4ff/iAT_VOLTAGE//a4ff /sp ef="= s/power/olpc_baEEPROM_SIZC_BAT_VOLTAGE//aEEPROM_SIZC /sp)/power/olpc_battery.c#L24" id < 23uea.3< 24//a>#defi5ne< 25//a>#defi5ne< 26//a>#defi5ne< 18//a>#incl52de &528 /spa6 clalaalaaaaaas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp = s/power/olpc_baEEPROM_START_BAT_ACR//a> EPROM_START /spa+as/power/olpc_ba4ff/iAT_VOLTAGE//a4ff /sp +as/power/olpc_bai/iAT_VOLTAGE//ai /sps/power/olpc_battery.c#L22" id < 19//a>#incl52de &529 /spa6 clalaalaaaaaas/power/olpc_bar0 tery.c EPROM /sp, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1, &s/power/olpc_babuf/iAT_VOLTAGE//abuf /sp[s/power/olpc_bai/iAT_VOLTAGE//ai /sp], 1)s/power/olpc_battery.c#L22" id < 20//a>#incl53de &53d /spa6 clalaalaaaaaa0f (s/power/olpc_bar0< 21//a>#incl53de &531 /spa6 clalaalaaaaaaalaaaaaas/power/olpc_bapr_err/iAT_VOLTAGE//apr_errhref(snt">/* uint1str/3g">"4" i- < 22uea.3/* uint1str/3g">" tery.c EPROM cmd @ 0x%x faileda-a%d!\n"drivers,/power/olpc_battery.c#L24" id < <3//a>/spa6 5cef="533 /spa6 clalaalaaaaaaaaaaaaaalaaaaaas/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, s/power/olpc_bar0< 24//a>#defi53e IO /sps/power/olpc_battery.c#L22" id < 25//a>#defi53e< 26//a>#defi53e< 18//a>#incl53de &538 /spa6 clala/input s/power/olpc_bacoun< 19//a>#incl53de &539 /sp}/power/olpc_battery.c#L22" id < 20//a>#incl54de &54d /sp/power/olpc_battery.c#L27" id < 21//a>#incl54de &541 /sppng" a5structas/power/olpc_babin_ 4" id < 22uea.3< <3//a>/spa6 54ef="543 /spa6 clalaalaaaaaa.s/power/olpc_ba>/sp/iAT_VOLTAGE//a>/sp /spa= snt">/* uint1str/3g">"eeprom"drivers,/power/olpc_battery.c#L24" id < 14//a>#incl5de S_IRUGO /sp,/power/olpc_battery.c#L27" id < 25//a>#defi54e< 26//a>#defi54e 4" id < 18//a>#incl54de &548 /sp}s/power/olpc_battery.c#L22" id < 19//a>#incl54de &549 /sp/power/olpc_battery.c#L22" id < 20//a>#incl55de &55d /spent">/* uint16_t, */* Allow usttepace to see the specif a5error value pulledafrom the EC ="drivers/power/olpc_battery.c#L27" id < 21//a>#incl55de &551 /sp/power/olpc_battery.c#L22" id < 22uea.3 4" id < <3//a>/spa6 55ef="553 /spa6 clalaalaaaaaastructas/power/olpc_badevice_< <4//a>/spa6 55e< <5//a>/spa6 5ce< 26//a>#defi55e< 18//a>#incl55de &558 /spa6 clalas/power/olpc_bar0 NULL /sp, 0, &s/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp, 1)s/power/olpc_battery.c#L22" id < 19//a>#incl55de &559 /spa6 clala0f (s/power/olpc_bar0< 20//a>#incl56de &56d /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 21//a>#incl56de &561 /sp/power/olpc_battery.c#L22" id < 22uea.3/* uint1str/3g">"%d\n"drivers,as/power/olpc_baeid ytr/iAT_VOLTAGE//aeid ytr /sp)s/power/olpc_battery.c#L22" id < <3//a>/spa6 56ef="563 /sp}/power/olpc_battery.c#L22" id < <4//a>/spa6 56e< <5//a>/spa6 56e 4" id < 16//a>#incl5de/* uint1str/3g">"error"drivers,/power/olpc_battery.c#L24" id < 18//a>#incl56de &568 /spa6 clalaalaaaaaa.s/power/olpc_bamc_b/iAT_VOLTAGE//amc_b /spa= s/power/olpc_baS_IRUGO_BAT_ACR//a> S_IRUGO /sp,/power/olpc_battery.c#L27" id < 19//a>#incl56de &569 /spa6 clala},/power/olpc_battery.c#L27" id < 20//a>#incl57de &57d /spa6 clala.s/power/olpc_bashow_BAT_ACR//a> showhrefa= s/power/olpc_ba4" id 4" id < 21//a>#incl57de &571 /sp}s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 57ef="573 /spent">/* uint16_t, */*********************************************************************drivers/power/olpc_battery.c#L27" id < <4//a>/spa6 57e/* uint16_t, * * clalaalaaaaaaInitialisg" ondrivers/power/olpc_battery.c#L27" id < <5//a>/spa6 57e/* uint16_t, * *********************************************************************"drivers/power/olpc_battery.c#L27" id < <6//a>/spa6 57e< <7//a>/spa6 5ca6.3577 /sppng" a5structas/power/olpc_ba>>3 4" id < 18//a>#incl57de &578 /spa6 clala.s/power/olpc_ba>/sp/iAT_VOLTAGE//a>/sp /spa= snt">/* uint1str/3g">"4" i- < 19//a>#incl57de &579 /spa6 clala.s/power/olpc_baget_property_BAT_ACR//a> get_propertyhrefa= s/power/olpc_ba4" id 4" id < 20//a>#incl58de &58d /spa6 clala.s/power/olpc_bause_for_apm_BAT_ACR//a> use_for_apmhrefa= 1,/power/olpc_battery.c#L27" id < 21//a>#incl58de &581 /sp}s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 58ef="583 /sppng" a5int s/power/olpc_ba2" id 4" id < <4//a>/spa6 58e pm_message_L /spas/power/olpc_bapng"e/iAT_VOLTAGE//asng"e /sp)/power/olpc_battery.c#L24" id < <5//a>/spa6 58e< <6//a>/spa6 58e 4" idachref.s/power/olpc_badev/iAT_VOLTAGE//adevhref))/power/olpc_battery.c#L24" id < <7//a>/spa6 58a6.3587 /spa6 clalaalaaaaaas/power/olpc_ba4" idec_wakeup_s0< <8//a>/spa6 5cde &588 /spa6 clalaelse/power/olpc_battery.c#L22" id < 19//a>#incl58de &589 /spa6 clalaalaaaaaas/power/olpc_ba4" idec_wakeup_clear_BAT_ACR//a> 4" idec_wakeup_clearhref(s/power/olpc_batteSCI_SRC_ACPWR_BAT_VOLTAGE//atteSCI_SRC_ACPWR /sp)s/power/olpc_battery.c#L22" id < 20//a>#incl59de &59d /sp/power/olpc_battery.c#L27" id < 21//a>#incl59de &591 /spa6 clala0f (s/power/olpc_badevice_may_wakeup_BAT_VOLTAGE//adevice_may_wakeuphref(s/power/olpc_ba4" id 4" id < 22uea.3< <3//a>/spa6 59ef="593 /spa6 clalaalaaaaaaaaaaaaaalaaaaaaaaaa| s/power/olpc_baEteSCI_SRC_BATERR_BAT_VOLTAGE//atteSCI_SRC_BATERR /sp)s/power/olpc_battery.c#L22" id < <4//a>/spa6 59e< <5//a>/spa6 59e 4" idec_wakeup_clearhref(s/power/olpc_batteSCI_SRC_BATTERY_BAT_VOLTAGE//atteSCI_SRC_BATTERY /spa| s/power/olpc_baEteSCI_SRC_BATSOC_BAT_VOLTAGE//atteSCI_SRC_BATSOC /sp/power/olpc_battery.c#L27" id < <6//a>/spa6 59e< <7//a>/spa6 59a6.3597vers/power/olpc_battery.c#L24" id < <8//a>/spa6 59de &598 /spa6 clala/input 0s/power/olpc_battery.c#L22" id < 19//a>#incl5dde &599 /sp}/power/olpc_battery.c#L22" id < aluea.3< 11//a>#incl601e &601 /sppng" a5int s/power/olpc_ba2" id < 12//a>#incl602e &602 /sp{/power/olpc_battery.c#L24" id < 13//a>#incl603e &603 /spa6 clalaint s/power/olpc_bar0< 14//a>#incl604e &604 /spa6 clalas/power/olpc_bauint8_ png"us /sps/power/olpc_battery.c#L22" id < <5//a>/spa6 605e &605 /sp/power/olpc_battery.c#L22" id < <6//a>/spa6 606e &606 /spa6 clalasnt">/* uint16_t, */*drivers/power/olpc_battery.c#L27" id < <7//a>/spa6 607e &607 /spent">/* uint16_t, *aaaaaaaaa* We've seen a number of EC protocol changes; this c_batta/iquiresdrivers/power/olpc_battery.c#L27" id < <8//a>/spa6 608e &608 /spent">/* uint16_t, *aaaaaaaaa* the latest EC protocol, < 19//a>#incl609e &609versent">/* uint16_t, *aaaaaaaaa*"drivers/power/olpc_battery.c#L27" id < aluea.3< 11//a>#incl6d1e &611 /spa6 clalaalaaaaaas/power/olpc_bapr/32k/iAT_VOLTAGE//apr/32khref(s/power/olpc_baKERN_NOTICC_BAT_VOLTAGE//aKERN_NOTICC /spasnt">/* uint1str/3g">"OLPC EC atteion 0x%02x too oldafor "drivers/power/olpc_battery.c#L24" id < 12//a>#incl6ude &612 /spa6 clalaalaaaaaalaaaaaaasnt">/* uint1str/3g">" < 13//a>#incl6ude &613 /spa6 clalaalaaaaaa/input -s/power/olpc_batNXIO_BAT_ACR//a> NXIO /sps/power/olpc_battery.c#L22" id < 14//a>#incl6ude &614 /spa6 clala}/power/olpc_battery.c#L22" id < 15//a>#incl6ude &615 /sp/power/olpc_battery.c#L22" id < 16//a>#incl6ude &616 /spa6 clalas/power/olpc_bar0 ttery.cSTATUS /sp, s/power/olpc_baNULL_BAT_ACR//a> NULL /sp, 0, &s/power/olpc_bapng"us_BAT_ACR//a> png"us /sp, 1)s/power/olpc_battery.c#L22" id < 17//a>#incl6ude &617 /spa6 clalaif (s/power/olpc_bar0< 18//a>#incl6ude &618 /spa6 clalaalaaaaaa/input s/power/olpc_bar0< 19//a>#incl6ude &619 /sp/power/olpc_battery.c#L22" id < 20//a>#incl6ude &62d /spa6 clalaent">/* uint16_t, */* Ignore the sng"us. It doesn't actually m< 21//a>#incl6ude &621 /sp/power/olpc_battery.c#L22" id < 12//a>#incl6dde &622 /spa6 clalas/power/olpc_bar0 4" idachref)s/power/olpc_battery.c#L22" id < 23uea.3< 24//a>#defi6ne< 25//a>#defi6ne< 26//a>#defi6ne 4" id oard_at_leasLhref(s/power/olpc_ba4" id oard_pre/iAT_VOLTAGE//a2" id oard_prehref(0xd0))) {aent">/* uint16_t, */* XO-1.5 *"drivers/power/olpc_battery.c#L27" id 4" id properties /spa= s/power/olpc_ba4" idxo15d 4" idxo15d < 18//a>#incl62de &628 /spa6 clalaalaaaaaas/power/olpc_ba4" id 4" id num_properties /spa= s/power/olpc_baARRAY_SIZC_BAT_VOLTAGE//aARRAY_SIZChref(s/power/olpc_ba4" idxo15d 4" idxo15d < 19//a>#incl62de &629 /spa6 clala}aelse {aent">/* uint16_t, */* XO-1 *"drivers/power/olpc_battery.c#L27" id < 20//a>#incl63de &63d /spa6 clalaalaaaaaas/power/olpc_ba4" id 4" id properties /spa= s/power/olpc_ba4" idxo1d 4" idxo1d < 21//a>#incl63de &631 /spa6 clalaalaaaaaas/power/olpc_ba4" id 4" id num_properties /spa= s/power/olpc_baARRAY_SIZC_BAT_VOLTAGE//aARRAY_SIZChref(s/power/olpc_ba4" idxo1d 4" idxo1d < 22uea.3< <3//a>/spa6 6cef="633 /sp/power/olpc_battery.c#L22" id < 24//a>#defi63e 4" id < 25//a>#defi63e< 26//a>#defi63e< 18//a>#incl63de &638 /spa6 clalas/power/olpc_bar0 device_create_bin_filehref(s/power/olpc_ba4" id 4" id 4" id < 19//a>#incl63de &639 /spa6 clala0f (s/power/olpc_bar0< 20//a>#incl64de &64d /spa6 clalaalaaaaaagotoas/power/olpc_baeeprom_failed/iAT_VOLTAGE//aeeprom_failed /sps/power/olpc_battery.c#L22" id < 21//a>#incl64de &641 /sp/power/olpc_battery.c#L22" id < 22uea.3 4" id 4" id < <3//a>/spa6 64ef="643 /spa6 clalaif (s/power/olpc_bar0< 14//a>#incl6de< 25//a>#defi64e< 26//a>#defi64e 2" idec_wakeup_availablehref()) {/power/olpc_battery.c#L24" id 4" idachref.s/power/olpc_badev/iAT_VOLTAGE//adevhref, s/power/olpc_batrue_BAT_ACR//a> true /sp)s/power/olpc_battery.c#L22" id < 18//a>#incl64de &648 /spa6 clalaalaaaaaas/power/olpc_badevice_set_wakeup_capable_BAT_ACR//a> device_set_wakeup_capablehref(s/power/olpc_ba4" id 4" id true /sp)s/power/olpc_battery.c#L22" id < 19//a>#incl64de &649 /spa6 clala}/power/olpc_battery.c#L22" id < 20//a>#incl65de &65d /sp/power/olpc_battery.c#L27" id < 21//a>#incl65de &651 /spa6 clala/input 0s/power/olpc_battery.c#L22" id < 22uea.3< <3//a>/spa6 65ef="653 /sps/power/olpc_baerror_failed/iAT_VOLTAGE//aerror_failed /sp:/power/olpc_battery.c#L22" id < <4//a>/spa6 65e device_remove_bin_filehref(s/power/olpc_ba4" id 4" id 4" id < <5//a>/spa6 6ce< 26//a>#defi65e 4" id < 18//a>#incl65de &658 /spa6 clalas/power/olpc_bap>3 4" idachref)s/power/olpc_battery.c#L22" id < 19//a>#incl65de &659 /spa6 clala/input s/power/olpc_bar0< 20//a>#incl66de &66d /sp}/power/olpc_battery.c#L22" id < 21//a>#incl66de &661 /sp/power/olpc_battery.c#L22" id < 22uea.3 4" id < <3//a>/spa6 66ef="663 /sp{/power/olpc_battery.c#L24" id < <4//a>/spa6 66e device_remove_filehref(s/power/olpc_ba4" id 4" id 4" id < <5//a>/spa6 66e device_remove_bin_filehref(s/power/olpc_ba4" id 4" id 4" id < 16//a>#incl6de 4" id 4" idachref)s/power/olpc_battery.c#L22" id < 18//a>#incl66de &668 /spa6 clala/input 0s/power/olpc_battery.c#L22" id < 19//a>#incl66de &669 /sp}/power/olpc_battery.c#L22" id < 20//a>#incl67de &67d /sp/power/olpc_battery.c#L27" id < 21//a>#incl67de &671 /sppng" a5const5structas/power/olpc_baof_device_id_BAT_VOLTAGE//a4f_device_id /spas/power/olpc_ba2" id 4" id < 22uea.3 6_tpg" ble /spa= snt">/* uint1str/3g">"4" i,xo6- < 19//a>#id2" id < <4//a6/spa6657e< <5//a6/spa667ce 4" id < <6//a6/spa6657e< <7//a6/spa665ca6.3577 /sppng" a5structas/power/oAGE//aplaer/ol_device/iAT_VOLTAGE//aplaer/olvice_id /spas/power/olpc_ba2" id aer/ol_device/iAT_VOLolpc_ba2" id aer/olpg" blesp[]a= {/power/olpc_battery.c#L24" id < 18//6>#inc657de &578 /spa6 clala.s/power/aer/ol_device/iAT_VOLaer/olpg" blesp[]a= {/power/olpc_battery.c#L24" id < 19//6>#inc678de &589 /spa6 clalaa6 clala.s/power/olpc_ba>/sp/iAT_VOLTAGE//a>/sp /spa= snt">/* uint1str/3g">"4" i- < 20//6>#inc684de &64d /spa6 clalaa6 clala.s/power/ownol_device/iAT_VOLownolE//ar0< /spa= s/power/THIS_MODULE_device/iAT_VOLTHIS_MODULEE//adrivers,/power/olpc_battery.c#L24" id < 21//6>#inc683de &631 /spa6 clalaa6 clala.s/power/of_match_tp_available_BAT_ACR/f_match_tp_avperties /spa= s/power/olpc_ba2" id 4" id < 22ue6.3< <3//a6/spa6683de &578 /spa6 clala.s/power/< <4//a6/spa6658e 4" id < <5//a6/spa6685e 4" id < <6//a6/spa6658e< <7//a6/spa6683a6.3637vers/power/olpc_battery.c#L24" id < <8//a6/spa665cde & /spa= s/power/module_oAGE//aplaer/ol_device/iAT_VOLmodule_oAGE//aplaer/olin_filehref(s/power/olpc_ba4" id aer/ol_device/iAT_VOLolpc_ba2" id aer/olpg" dachref)s/power/olpc_battery.c#L22" id < 19//6>#inc68ude &619 /sp/power/olpc_battery.c#L22" id < 20//6>#inc659de &655 /sps/power/MODULE_AUTHOC_BATERR_BAT_VOLMODULE_AUTHOCin_fil/spa= snt">/* uint1str/3g"David Woodhouseatt /dwmw2@infradead.orgevhr < 21//6>#inc659de &655 /sps/power/MODULE_LICENSRAY_SIZC_BAT_VOLMODULE_LICENSRin_fil/spa= snt">/* uint1str/3g"GPL < 22ue6.3/* uint1str/3g"B" < <3//a6/spa6659ef="
The original LXR software horIgnohref)s/pohttp://sourceoo ge.net/proE//as/lxre>LXR * uiuni_properhangesexperiint1al LPC EC ahorhref)s/pomailto:lxr@ lxr@ lxr. Redpill L