Ideas for improvement --------------------- (The best way to get these done is to send a patch.) Don't create /sys files for unsupported functions, and don't access those functions on suspend+resume (requires probing on module load or a huge white/blacklist). Make inhibit_charge_minutes return the time left, not the time originally set (as returned by the SMAPI BIOS). Requires remembering when inhibit_charge_minutes was set and comparing to current time. Save and and restore inhibit_charge_minutes across suspend-to-disk, as done for charge thresholds (requires the above time calculations too). Use the new Linux battery model introduced in kernel 2.6.23 (see the kernel's Documentation/power/power_supply_class.txt).