Merge changes from topic "charger-shared-libs"
* changes: healthd: Add charger.recovery module. healthd: charger uses shared libraries.
This commit is contained in:
commit
74cece70bc
8 changed files with 238 additions and 128 deletions
|
|
@ -78,3 +78,5 @@ $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/ld.config.txt)
|
||||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/llndk.libraries.txt)
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/llndk.libraries.txt)
|
||||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/vndksp.libraries.txt)
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/vndksp.libraries.txt)
|
||||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/)
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/)
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/root/sbin/charger)
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/recovery/root/sbin/charger)
|
||||||
|
|
|
||||||
|
|
@ -84,3 +84,29 @@ cc_binary {
|
||||||
"manifest_healthd.xml"
|
"manifest_healthd.xml"
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cc_library_static {
|
||||||
|
name: "libhealthd_charger_nops",
|
||||||
|
|
||||||
|
srcs: [
|
||||||
|
"healthd_mode_charger_nops.cpp",
|
||||||
|
],
|
||||||
|
|
||||||
|
cflags: [
|
||||||
|
"-Wall",
|
||||||
|
"-Werror",
|
||||||
|
],
|
||||||
|
|
||||||
|
header_libs: [
|
||||||
|
"libhealthd_headers",
|
||||||
|
],
|
||||||
|
|
||||||
|
static_libs: [
|
||||||
|
"android.hardware.health@2.0-impl",
|
||||||
|
],
|
||||||
|
|
||||||
|
shared_libs: [
|
||||||
|
"android.hardware.health@2.0",
|
||||||
|
"libutils",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,14 +2,14 @@
|
||||||
|
|
||||||
LOCAL_PATH := $(call my-dir)
|
LOCAL_PATH := $(call my-dir)
|
||||||
|
|
||||||
|
### libhealthd_draw ###
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
|
|
||||||
LOCAL_MODULE := libhealthd_draw
|
LOCAL_MODULE := libhealthd_draw
|
||||||
|
|
||||||
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
|
LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)
|
||||||
LOCAL_STATIC_LIBRARIES := \
|
LOCAL_STATIC_LIBRARIES := libminui
|
||||||
libminui \
|
LOCAL_SHARED_LIBRARIES := libbase
|
||||||
libbase
|
|
||||||
LOCAL_SRC_FILES := healthd_draw.cpp
|
LOCAL_SRC_FILES := healthd_draw.cpp
|
||||||
|
|
||||||
ifneq ($(TARGET_HEALTHD_DRAW_SPLIT_SCREEN),)
|
ifneq ($(TARGET_HEALTHD_DRAW_SPLIT_SCREEN),)
|
||||||
|
|
@ -28,6 +28,7 @@ LOCAL_HEADER_LIBRARIES := libbatteryservice_headers
|
||||||
|
|
||||||
include $(BUILD_STATIC_LIBRARY)
|
include $(BUILD_STATIC_LIBRARY)
|
||||||
|
|
||||||
|
### libhealthd_charger ###
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
|
|
||||||
LOCAL_CFLAGS := -Werror
|
LOCAL_CFLAGS := -Werror
|
||||||
|
|
@ -49,24 +50,22 @@ LOCAL_EXPORT_C_INCLUDE_DIRS := \
|
||||||
$(LOCAL_PATH)/include
|
$(LOCAL_PATH)/include
|
||||||
|
|
||||||
LOCAL_STATIC_LIBRARIES := \
|
LOCAL_STATIC_LIBRARIES := \
|
||||||
android.hardware.health@2.0 \
|
|
||||||
android.hardware.health@2.0-impl \
|
android.hardware.health@2.0-impl \
|
||||||
android.hardware.health@1.0 \
|
|
||||||
android.hardware.health@1.0-convert \
|
android.hardware.health@1.0-convert \
|
||||||
libhealthstoragedefault \
|
libhealthstoragedefault \
|
||||||
|
libhealthd_draw \
|
||||||
libminui \
|
libminui \
|
||||||
libpng \
|
|
||||||
libz \
|
LOCAL_SHARED_LIBRARIES := \
|
||||||
libutils \
|
android.hardware.health@2.0 \
|
||||||
libbase \
|
libbase \
|
||||||
libcutils \
|
libcutils \
|
||||||
libhealthd_draw \
|
|
||||||
liblog \
|
liblog \
|
||||||
libm \
|
libpng \
|
||||||
libc \
|
libutils \
|
||||||
|
|
||||||
ifeq ($(strip $(BOARD_CHARGER_ENABLE_SUSPEND)),true)
|
ifeq ($(strip $(BOARD_CHARGER_ENABLE_SUSPEND)),true)
|
||||||
LOCAL_STATIC_LIBRARIES += libsuspend
|
LOCAL_SHARED_LIBRARIES += libsuspend
|
||||||
endif
|
endif
|
||||||
|
|
||||||
include $(BUILD_STATIC_LIBRARY)
|
include $(BUILD_STATIC_LIBRARY)
|
||||||
|
|
@ -81,10 +80,6 @@ LOCAL_SRC_FILES := \
|
||||||
charger.cpp \
|
charger.cpp \
|
||||||
|
|
||||||
LOCAL_MODULE := charger
|
LOCAL_MODULE := charger
|
||||||
LOCAL_MODULE_TAGS := optional
|
|
||||||
LOCAL_FORCE_STATIC_EXECUTABLE := true
|
|
||||||
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT_SBIN)
|
|
||||||
LOCAL_UNSTRIPPED_PATH := $(TARGET_ROOT_OUT_SBIN_UNSTRIPPED)
|
|
||||||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
||||||
|
|
||||||
LOCAL_CFLAGS := -Werror
|
LOCAL_CFLAGS := -Werror
|
||||||
|
|
@ -94,8 +89,6 @@ endif
|
||||||
|
|
||||||
CHARGER_STATIC_LIBRARIES := \
|
CHARGER_STATIC_LIBRARIES := \
|
||||||
android.hardware.health@2.0-impl \
|
android.hardware.health@2.0-impl \
|
||||||
android.hardware.health@2.0 \
|
|
||||||
android.hardware.health@1.0 \
|
|
||||||
android.hardware.health@1.0-convert \
|
android.hardware.health@1.0-convert \
|
||||||
libbinderthreadstate \
|
libbinderthreadstate \
|
||||||
libhidltransport \
|
libhidltransport \
|
||||||
|
|
@ -104,54 +97,97 @@ CHARGER_STATIC_LIBRARIES := \
|
||||||
libhealthstoragedefault \
|
libhealthstoragedefault \
|
||||||
libvndksupport \
|
libvndksupport \
|
||||||
libhealthd_charger \
|
libhealthd_charger \
|
||||||
|
libhealthd_charger_nops \
|
||||||
libhealthd_draw \
|
libhealthd_draw \
|
||||||
libbatterymonitor \
|
libbatterymonitor \
|
||||||
|
|
||||||
|
CHARGER_SHARED_LIBRARIES := \
|
||||||
|
android.hardware.health@2.0 \
|
||||||
libbase \
|
libbase \
|
||||||
libutils \
|
|
||||||
libcutils \
|
libcutils \
|
||||||
libjsoncpp \
|
libjsoncpp \
|
||||||
libprocessgroup \
|
libprocessgroup \
|
||||||
liblog \
|
liblog \
|
||||||
libm \
|
libutils \
|
||||||
libc \
|
|
||||||
|
|
||||||
LOCAL_STATIC_LIBRARIES := $(CHARGER_STATIC_LIBRARIES)
|
|
||||||
|
|
||||||
ifneq ($(strip $(LOCAL_CHARGER_NO_UI)),true)
|
ifneq ($(strip $(LOCAL_CHARGER_NO_UI)),true)
|
||||||
LOCAL_STATIC_LIBRARIES += \
|
CHARGER_STATIC_LIBRARIES += libminui
|
||||||
libminui \
|
CHARGER_SHARED_LIBRARIES += libpng
|
||||||
libpng \
|
|
||||||
libz \
|
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(strip $(BOARD_CHARGER_ENABLE_SUSPEND)),true)
|
ifeq ($(strip $(BOARD_CHARGER_ENABLE_SUSPEND)),true)
|
||||||
LOCAL_STATIC_LIBRARIES += libsuspend
|
CHARGER_SHARED_LIBRARIES += libsuspend
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
LOCAL_STATIC_LIBRARIES := $(CHARGER_STATIC_LIBRARIES)
|
||||||
|
LOCAL_SHARED_LIBRARIES := $(CHARGER_SHARED_LIBRARIES)
|
||||||
|
|
||||||
LOCAL_HAL_STATIC_LIBRARIES := libhealthd
|
LOCAL_HAL_STATIC_LIBRARIES := libhealthd
|
||||||
|
|
||||||
# Symlink /charger to /sbin/charger
|
# Symlink /charger to /system/bin/charger
|
||||||
LOCAL_POST_INSTALL_CMD := $(hide) mkdir -p $(TARGET_ROOT_OUT) \
|
LOCAL_POST_INSTALL_CMD := $(hide) mkdir -p $(TARGET_ROOT_OUT) \
|
||||||
&& ln -sf /sbin/charger $(TARGET_ROOT_OUT)/charger
|
&& ln -sf /system/bin/charger $(TARGET_ROOT_OUT)/charger
|
||||||
|
|
||||||
include $(BUILD_EXECUTABLE)
|
include $(BUILD_EXECUTABLE)
|
||||||
|
|
||||||
|
### charger.recovery ###
|
||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
LOCAL_MODULE := charger_test
|
|
||||||
LOCAL_MODULE_TAGS := optional
|
|
||||||
LOCAL_FORCE_STATIC_EXECUTABLE := true
|
|
||||||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
|
||||||
LOCAL_CFLAGS := -Wall -Werror -DCHARGER_TEST -DCHARGER_NO_UI
|
|
||||||
LOCAL_STATIC_LIBRARIES := $(CHARGER_STATIC_LIBRARIES)
|
|
||||||
LOCAL_SRC_FILES := \
|
LOCAL_SRC_FILES := \
|
||||||
charger.cpp \
|
charger.cpp \
|
||||||
|
|
||||||
|
LOCAL_MODULE := charger.recovery
|
||||||
|
LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/system/bin
|
||||||
|
LOCAL_MODULE_STEM := charger
|
||||||
|
|
||||||
|
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
||||||
|
LOCAL_CFLAGS := -Wall -Werror
|
||||||
|
LOCAL_CFLAGS += -DCHARGER_NO_UI
|
||||||
|
|
||||||
|
# charger.recovery doesn't link against libhealthd_{charger,draw} or libminui, since it doesn't need
|
||||||
|
# any UI support.
|
||||||
|
LOCAL_STATIC_LIBRARIES := \
|
||||||
|
android.hardware.health@2.0-impl \
|
||||||
|
android.hardware.health@1.0-convert \
|
||||||
|
libbinderthreadstate \
|
||||||
|
libhidltransport \
|
||||||
|
libhidlbase \
|
||||||
|
libhwbinder_noltopgo \
|
||||||
|
libhealthstoragedefault \
|
||||||
|
libvndksupport \
|
||||||
|
libhealthd_charger_nops \
|
||||||
|
libbatterymonitor \
|
||||||
|
|
||||||
|
# These shared libs will be installed to recovery image because of the dependency in `recovery`
|
||||||
|
# module.
|
||||||
|
LOCAL_SHARED_LIBRARIES := \
|
||||||
|
android.hardware.health@2.0 \
|
||||||
|
libbase \
|
||||||
|
libcutils \
|
||||||
|
liblog \
|
||||||
|
libutils \
|
||||||
|
|
||||||
|
# The use of LOCAL_HAL_STATIC_LIBRARIES prevents from building this module with Android.bp.
|
||||||
|
LOCAL_HAL_STATIC_LIBRARIES := libhealthd
|
||||||
|
|
||||||
|
include $(BUILD_EXECUTABLE)
|
||||||
|
|
||||||
|
### charger_test ###
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
LOCAL_MODULE := charger_test
|
||||||
|
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
||||||
|
LOCAL_CFLAGS := -Wall -Werror -DCHARGER_NO_UI
|
||||||
|
LOCAL_STATIC_LIBRARIES := $(CHARGER_STATIC_LIBRARIES)
|
||||||
|
LOCAL_SHARED_LIBRARIES := $(CHARGER_SHARED_LIBRARIES)
|
||||||
|
LOCAL_SRC_FILES := \
|
||||||
charger_test.cpp \
|
charger_test.cpp \
|
||||||
|
|
||||||
include $(BUILD_EXECUTABLE)
|
include $(BUILD_EXECUTABLE)
|
||||||
|
|
||||||
CHARGER_STATIC_LIBRARIES :=
|
CHARGER_STATIC_LIBRARIES :=
|
||||||
|
CHARGER_SHARED_LIBRARIES :=
|
||||||
|
|
||||||
|
### charger_res_images ###
|
||||||
ifneq ($(strip $(LOCAL_CHARGER_NO_UI)),true)
|
ifneq ($(strip $(LOCAL_CHARGER_NO_UI)),true)
|
||||||
define _add-charger-image
|
define _add-charger-image
|
||||||
include $$(CLEAR_VARS)
|
include $$(CLEAR_VARS)
|
||||||
|
|
|
||||||
|
|
@ -14,98 +14,13 @@
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define LOG_TAG "charger"
|
#include "healthd_mode_charger.h"
|
||||||
#define KLOG_LEVEL 6
|
#include "healthd_mode_charger_nops.h"
|
||||||
|
|
||||||
#include <health2/Health.h>
|
|
||||||
#include <healthd/healthd.h>
|
|
||||||
|
|
||||||
#include <stdlib.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <cutils/klog.h>
|
|
||||||
|
|
||||||
using namespace android;
|
|
||||||
|
|
||||||
// main healthd loop
|
|
||||||
extern int healthd_main(void);
|
|
||||||
|
|
||||||
// Charger mode
|
|
||||||
|
|
||||||
extern void healthd_mode_charger_init(struct healthd_config *config);
|
|
||||||
extern int healthd_mode_charger_preparetowait(void);
|
|
||||||
extern void healthd_mode_charger_heartbeat(void);
|
|
||||||
extern void healthd_mode_charger_battery_update(
|
|
||||||
struct android::BatteryProperties *props);
|
|
||||||
|
|
||||||
// NOPs for modes that need no special action
|
|
||||||
|
|
||||||
static void healthd_mode_nop_init(struct healthd_config *config);
|
|
||||||
static int healthd_mode_nop_preparetowait(void);
|
|
||||||
static void healthd_mode_nop_heartbeat(void);
|
|
||||||
static void healthd_mode_nop_battery_update(
|
|
||||||
struct android::BatteryProperties *props);
|
|
||||||
|
|
||||||
static struct healthd_mode_ops healthd_nops = {
|
|
||||||
.init = healthd_mode_nop_init,
|
|
||||||
.preparetowait = healthd_mode_nop_preparetowait,
|
|
||||||
.heartbeat = healthd_mode_nop_heartbeat,
|
|
||||||
.battery_update = healthd_mode_nop_battery_update,
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef CHARGER_NO_UI
|
|
||||||
static struct healthd_mode_ops charger_ops = healthd_nops;
|
|
||||||
#else
|
|
||||||
static struct healthd_mode_ops charger_ops = {
|
|
||||||
.init = healthd_mode_charger_init,
|
|
||||||
.preparetowait = healthd_mode_charger_preparetowait,
|
|
||||||
.heartbeat = healthd_mode_charger_heartbeat,
|
|
||||||
.battery_update = healthd_mode_charger_battery_update,
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void healthd_mode_nop_init(struct healthd_config* config) {
|
|
||||||
using android::hardware::health::V2_0::implementation::Health;
|
|
||||||
Health::initInstance(config);
|
|
||||||
}
|
|
||||||
|
|
||||||
static int healthd_mode_nop_preparetowait(void) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void healthd_mode_nop_heartbeat(void) {
|
|
||||||
}
|
|
||||||
|
|
||||||
static void healthd_mode_nop_battery_update(
|
|
||||||
struct android::BatteryProperties* /*props*/) {
|
|
||||||
}
|
|
||||||
|
|
||||||
int healthd_charger_main(int argc, char** argv) {
|
|
||||||
int ch;
|
|
||||||
|
|
||||||
healthd_mode_ops = &charger_ops;
|
|
||||||
|
|
||||||
while ((ch = getopt(argc, argv, "cr")) != -1) {
|
|
||||||
switch (ch) {
|
|
||||||
case 'c':
|
|
||||||
// -c is now a noop
|
|
||||||
break;
|
|
||||||
case 'r':
|
|
||||||
// force nops for recovery
|
|
||||||
healthd_mode_ops = &healthd_nops;
|
|
||||||
break;
|
|
||||||
case '?':
|
|
||||||
default:
|
|
||||||
KLOG_ERROR(LOG_TAG, "Unrecognized charger option: %c\n",
|
|
||||||
optopt);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return healthd_main();
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifndef CHARGER_TEST
|
|
||||||
int main(int argc, char** argv) {
|
int main(int argc, char** argv) {
|
||||||
|
#ifdef CHARGER_NO_UI
|
||||||
|
return healthd_charger_nops(argc, argv);
|
||||||
|
#else
|
||||||
return healthd_charger_main(argc, argv);
|
return healthd_charger_main(argc, argv);
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -54,6 +54,9 @@
|
||||||
|
|
||||||
using namespace android;
|
using namespace android;
|
||||||
|
|
||||||
|
// main healthd loop
|
||||||
|
extern int healthd_main(void);
|
||||||
|
|
||||||
char* locale;
|
char* locale;
|
||||||
|
|
||||||
#ifndef max
|
#ifndef max
|
||||||
|
|
@ -711,3 +714,33 @@ void healthd_mode_charger_init(struct healthd_config* config) {
|
||||||
healthd_config = config;
|
healthd_config = config;
|
||||||
charger->boot_min_cap = config->boot_min_cap;
|
charger->boot_min_cap = config->boot_min_cap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static struct healthd_mode_ops charger_ops = {
|
||||||
|
.init = healthd_mode_charger_init,
|
||||||
|
.preparetowait = healthd_mode_charger_preparetowait,
|
||||||
|
.heartbeat = healthd_mode_charger_heartbeat,
|
||||||
|
.battery_update = healthd_mode_charger_battery_update,
|
||||||
|
};
|
||||||
|
|
||||||
|
int healthd_charger_main(int argc, char** argv) {
|
||||||
|
int ch;
|
||||||
|
|
||||||
|
healthd_mode_ops = &charger_ops;
|
||||||
|
|
||||||
|
while ((ch = getopt(argc, argv, "cr")) != -1) {
|
||||||
|
switch (ch) {
|
||||||
|
case 'c':
|
||||||
|
// -c is now a noop
|
||||||
|
break;
|
||||||
|
case 'r':
|
||||||
|
// -r is now a noop
|
||||||
|
break;
|
||||||
|
case '?':
|
||||||
|
default:
|
||||||
|
LOGE("Unrecognized charger option: %c\n", optopt);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return healthd_main();
|
||||||
|
}
|
||||||
|
|
|
||||||
19
healthd/healthd_mode_charger.h
Normal file
19
healthd/healthd_mode_charger.h
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2019 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
int healthd_charger_main(int argc, char** argv);
|
||||||
60
healthd/healthd_mode_charger_nops.cpp
Normal file
60
healthd/healthd_mode_charger_nops.cpp
Normal file
|
|
@ -0,0 +1,60 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2019 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "healthd_mode_charger_nops.h"
|
||||||
|
|
||||||
|
#include <health2/Health.h>
|
||||||
|
#include <healthd/healthd.h>
|
||||||
|
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
using namespace android;
|
||||||
|
|
||||||
|
// main healthd loop
|
||||||
|
extern int healthd_main(void);
|
||||||
|
|
||||||
|
// NOPs for modes that need no special action
|
||||||
|
|
||||||
|
static void healthd_mode_nop_init(struct healthd_config* config);
|
||||||
|
static int healthd_mode_nop_preparetowait(void);
|
||||||
|
static void healthd_mode_nop_heartbeat(void);
|
||||||
|
static void healthd_mode_nop_battery_update(struct android::BatteryProperties* props);
|
||||||
|
|
||||||
|
static struct healthd_mode_ops healthd_nops = {
|
||||||
|
.init = healthd_mode_nop_init,
|
||||||
|
.preparetowait = healthd_mode_nop_preparetowait,
|
||||||
|
.heartbeat = healthd_mode_nop_heartbeat,
|
||||||
|
.battery_update = healthd_mode_nop_battery_update,
|
||||||
|
};
|
||||||
|
|
||||||
|
static void healthd_mode_nop_init(struct healthd_config* config) {
|
||||||
|
using android::hardware::health::V2_0::implementation::Health;
|
||||||
|
Health::initInstance(config);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int healthd_mode_nop_preparetowait(void) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void healthd_mode_nop_heartbeat(void) {}
|
||||||
|
|
||||||
|
static void healthd_mode_nop_battery_update(struct android::BatteryProperties* /*props*/) {}
|
||||||
|
|
||||||
|
int healthd_charger_nops(int /* argc */, char** /* argv */) {
|
||||||
|
healthd_mode_ops = &healthd_nops;
|
||||||
|
return healthd_main();
|
||||||
|
}
|
||||||
19
healthd/healthd_mode_charger_nops.h
Normal file
19
healthd/healthd_mode_charger_nops.h
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2019 The Android Open Source Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
int healthd_charger_nops(int argc, char** argv);
|
||||||
Loading…
Add table
Reference in a new issue