KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am trying to get the battery level inside a Linux kernel module (the module is inserted via modprobe). I would ideally like to use a kernel API call to get the battery information. I have searched on the web for solutions, and I have also explored Linux kernel source and the source of program "acpi" by Michael Meskes for ideas. These are some of the techniques I think I can use: Read and parse /proc/acpi/battery/BAT0/state and /proc/acpi/battery/BAT0/info Read from /sys/class/power_supply/BAT0/charge_now and charge_full with no parsing involved. I could try using the calls from Linux kernel source drivers/acpi/battery.c if I could figure out how to expose the interface. I would probably need the methods acpi_battery_get_status and acpi_battery_get_info I also noticed that inside drivers/acpi/sbs.c there's a method acpi_battery_read and right above it there is a comment saying "Driver Interface". This might be another way if anyone knows how to use this. I assume that it is probably a bad idea to read files while inside a kernel module, but I am not exactly sure how those files map to kernel function calls, so it might be okay. So, can you guys give me some suggestions/recommendations? Edit: I included my solution in an answer below.
Tags (comma-separated)
Save Edits
Cancel