diff options
Diffstat (limited to 'firmware/target/hosted/agptek/power-agptek.c')
-rw-r--r-- | firmware/target/hosted/agptek/power-agptek.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/firmware/target/hosted/agptek/power-agptek.c b/firmware/target/hosted/agptek/power-agptek.c index 7403801681..023d3888b9 100644 --- a/firmware/target/hosted/agptek/power-agptek.c +++ b/firmware/target/hosted/agptek/power-agptek.c @@ -35,19 +35,23 @@ const char * const sysfs_bat_voltage = const char * const sysfs_bat_status = "/sys/class/power_supply/battery/status"; -unsigned int agptek_power_get_status(void) +const char * const sysfs_pow_supply = + "/sys/class/power_supply/usb/present"; + +unsigned int agptek_power_input_status(void) +{ + int present = 0; + sysfs_get_int(sysfs_pow_supply, &present); + + return present ? POWER_INPUT_USB_CHARGER : POWER_INPUT_NONE; +} + +bool agptek_power_charging_status(void) { char buf[12] = {0}; sysfs_get_string(sysfs_bat_status, buf, sizeof(buf)); - if (strncmp(buf, "Charging", 8) == 0) - { - return POWER_INPUT_USB_CHARGER; - } - else - { - return POWER_INPUT_NONE; - } + return (strncmp(buf, "Charging", 8) == 0); } unsigned int agptek_power_get_battery_voltage(void) |