mirror of
https://github.com/team-infusion-developers/android_hardware_samsung.git
synced 2024-11-06 21:55:41 +00:00
power: Get panel backlight brightness from lights helper
Change-Id: I3f28fc4abac947cc4a30d95ba74f45bf24c12c20
This commit is contained in:
parent
898e1fe432
commit
1226350ee7
2 changed files with 4 additions and 24 deletions
|
@ -23,6 +23,7 @@ LOCAL_SRC_FILES := power.c
|
|||
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := liblog libcutils
|
||||
LOCAL_STATIC_LIBRARIES := liblights_helper
|
||||
|
||||
LOCAL_MODULE := power.$(TARGET_BOOTLOADER_BOARD_NAME)
|
||||
LOCAL_MODULE_RELATIVE_PATH := hw
|
||||
|
|
|
@ -36,11 +36,10 @@
|
|||
|
||||
#include <hardware/hardware.h>
|
||||
#include <hardware/power.h>
|
||||
#include <liblights/samsung_lights_helper.h>
|
||||
|
||||
#include "samsung_power.h"
|
||||
|
||||
#define PANEL_BRIGHTNESS "/sys/class/backlight/panel/brightness"
|
||||
|
||||
struct samsung_power_module {
|
||||
struct power_module base;
|
||||
pthread_mutex_t lock;
|
||||
|
@ -118,27 +117,6 @@ static void sysfs_write(const char *path, char *s)
|
|||
close(fd);
|
||||
}
|
||||
|
||||
static int read_panel_brightness() {
|
||||
int ret = 0;
|
||||
int read_status;
|
||||
// brightness can range from 0 to 255, so max. 3 chars + '\0'
|
||||
char panel_brightness[4];
|
||||
// for strtol
|
||||
char *dummy;
|
||||
const int base = 10;
|
||||
|
||||
read_status = sysfs_read(PANEL_BRIGHTNESS, panel_brightness, sizeof(PANEL_BRIGHTNESS));
|
||||
if (read_status < 0) {
|
||||
ALOGE("%s: Failed to read panel brightness from %s!\n", __func__, PANEL_BRIGHTNESS);
|
||||
return -1;
|
||||
}
|
||||
|
||||
ret = strtol(panel_brightness, &dummy, base);
|
||||
ALOGV("%s: Panel brightness is: %d", __func__, ret);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**********************************************************
|
||||
*** POWER FUNCTIONS
|
||||
**********************************************************/
|
||||
|
@ -360,9 +338,10 @@ static void samsung_power_set_interactive(struct power_module *module, int on)
|
|||
|
||||
ALOGV("power_set_interactive: %d\n", on);
|
||||
|
||||
// Get panel backlight brightness from lights HAL
|
||||
// Do not disable any input devices if the screen is on but we are in a non-interactive state
|
||||
if (!on) {
|
||||
if (read_panel_brightness() > 0) {
|
||||
if (get_cur_panel_brightness() > 0) {
|
||||
ALOGV("%s: Moving to non-interactive state, but screen is still on,"
|
||||
" not disabling input devices\n", __func__);
|
||||
goto out;
|
||||
|
|
Loading…
Reference in a new issue