healthd.h: add ignorePowerSupplyNames to healthd_config
In case some power supply paths should not be considered, add a black list to the healthd_config to instruct BatteryMonitor of the power supply paths to ignore on init. Bug: 117903348 Change-Id: I6f9ddeff9351ad01772b43728ddc2627da81df2a Signed-off-by: Thierry Strudel <tstrudel@google.com>
This commit is contained in:
parent
1c4ad71dff
commit
f73de6f037
2 changed files with 11 additions and 0 deletions
|
@ -26,6 +26,8 @@
|
|||
#include <stdlib.h>
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <algorithm>
|
||||
#include <memory>
|
||||
|
||||
#include <android-base/file.h>
|
||||
|
@ -476,10 +478,16 @@ void BatteryMonitor::init(struct healthd_config *hc) {
|
|||
|
||||
while ((entry = readdir(dir.get()))) {
|
||||
const char* name = entry->d_name;
|
||||
std::vector<String8>::iterator itIgnoreName;
|
||||
|
||||
if (!strcmp(name, ".") || !strcmp(name, ".."))
|
||||
continue;
|
||||
|
||||
itIgnoreName = find(hc->ignorePowerSupplyNames.begin(),
|
||||
hc->ignorePowerSupplyNames.end(), String8(name));
|
||||
if (itIgnoreName != hc->ignorePowerSupplyNames.end())
|
||||
continue;
|
||||
|
||||
// Look for "type" file in each subdirectory
|
||||
path.clear();
|
||||
path.appendFormat("%s/%s/type", POWER_SUPPLY_SYSFS_PATH, name);
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
#include <utils/Errors.h>
|
||||
#include <utils/String8.h>
|
||||
|
||||
#include <vector>
|
||||
|
||||
// periodic_chores_interval_fast, periodic_chores_interval_slow: intervals at
|
||||
// which healthd wakes up to poll health state and perform periodic chores,
|
||||
// in units of seconds:
|
||||
|
@ -71,6 +73,7 @@ struct healthd_config {
|
|||
int (*energyCounter)(int64_t *);
|
||||
int boot_min_cap;
|
||||
bool (*screen_on)(android::BatteryProperties *props);
|
||||
std::vector<android::String8> ignorePowerSupplyNames;
|
||||
};
|
||||
|
||||
enum EventWakeup {
|
||||
|
|
Loading…
Reference in a new issue