#include <vconf.h>
#include <errno.h>
+#include <device-node.h>
+#include "devman.h"
#include "devman_internal.h"
-#include "device_engine.h"
#include "devlog.h"
-#define DISP_INDEX_BIT 4
-#define COMBINE_DISP_CMD(cmd, prop, index) (cmd = (prop | (index << DISP_INDEX_BIT)))
+#define DISPLAY_MAX_BRIGHTNESS 100
+#define DISPLAY_MIN_BRIGHTNESS 0
-#define SET_FLAG(var, bit) (var |= (1<<bit))
-#define UNSET_FLAG(var, bit) (var &= (~(1<<bit)))
-#define BRT_BIT 1
-#define GAMMA_BIT 2
-#define LED_BIT 4
+#define DISP_INDEX_BIT 4
+#define COMBINE_DISP_CMD(cmd, prop, index) (cmd = (prop | (index << DISP_INDEX_BIT)))
+
+#define SET_FLAG(var, bit) (var |= (1<<bit))
+#define UNSET_FLAG(var, bit) (var &= (~(1<<bit)))
+#define BRT_BIT 1
+#define LED_BIT 4
static unsigned int disp_flag = 0x0;
API int device_get_battery_pct(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_POWERSUPPLY, POWER_SUPPLY_PROP_CAPACITY, &val);
+ ret = device_get_property(DEVICE_TYPE_POWER, PROP_POWER_CAPACITY, &val);
if (ret < 0)
return ret;
if (val < 0 || val > 100) {
- ERR("capacity value is wrong");
+ DEVERR("capacity value is wrong");
return DEVMAN_ERROR_OPERATION_FAILED;
}
API int device_is_battery_full(void)
{
- int charge_full = 0;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_POWERSUPPLY, POWER_SUPPLY_PROP_CHARGE_FULL, &charge_full);
+ ret = device_get_property(DEVICE_TYPE_POWER, PROP_POWER_CHARGE_FULL, &val);
if (ret < 0)
return ret;
- if (charge_full != 0 && charge_full != 1) {
- ERR("charge_full value is wrong");
+ if (val != 0 && val != 1) {
+ DEVERR("charge_full value is wrong");
return DEVMAN_ERROR_OPERATION_FAILED;
}
- return charge_full;
+ return val;
}
API int device_get_battery_health(void)
{
- int health = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_POWERSUPPLY, POWER_SUPPLY_PROP_BATTERY_HEALTH, &health);
+ ret = device_get_property(DEVICE_TYPE_POWER, PROP_POWER_HEALTH, &val);
if (ret < 0)
return ret;
- if (health < BAT_UNKNOWN || health > BAT_COLD) {
- ERR("battery health value is wrong");
+ if (val < BAT_UNKNOWN || val > BAT_COLD) {
+ DEVERR("battery health value is wrong");
return DEVMAN_ERROR_OPERATION_FAILED;
}
- return health;
+ return val;
}
API int device_get_battery_pct_raw(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_POWERSUPPLY, POWER_SUPPLY_PROP_CAPACITY_RAW, &val);
+ ret = device_get_property(DEVICE_TYPE_POWER, PROP_POWER_CAPACITY_RAW, &val);
if (ret < 0)
return ret;
API int device_get_display_brt(display_num_t lcdnum)
{
- int val = -1;
- int cmd = 0;
- int ret = -1;
+ int val;
+ int cmd;
+ int ret;
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_BRIGHTNESS, lcdnum);
- ret = device_get_property(DEVTYPE_DISPLAY0, cmd, &val);
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_BRIGHTNESS, lcdnum);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, cmd, &val);
if (ret < 0)
return ret;
API int device_set_display_brt_with_settings(display_num_t lcdnum, int val)
{
- int bat_state = -1;
- int auto_brightness_state = -1;
- int ret = -1;
- int cmd = 0;
+ int bat_state;
+ int auto_brt_state;
+ int cmd;
+ int ret;
if (vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW, &bat_state) != 0) {
- ERR("Failed to get VCONFKEY_SYSMAN_BATTERY_STATUS_LOW value");
+ DEVERR("Failed to get VCONFKEY_SYSMAN_BATTERY_STATUS_LOW value");
return DEVMAN_ERROR_OPERATION_FAILED;
}
if (bat_state < VCONFKEY_SYSMAN_BAT_WARNING_LOW) {
- DBG("can not set brightness for low battery");
+ DEVLOG("can not set brightness for low battery");
return DEVMAN_ERROR_NONE;
}
- if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &auto_brightness_state) != 0) {
- ERR("Failed to get VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT value");
+ if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &auto_brt_state) != 0) {
+ DEVERR("Failed to get VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT value");
return DEVMAN_ERROR_OPERATION_FAILED;
}
- if (auto_brightness_state == SETTING_BRIGHTNESS_AUTOMATIC_ON) {
- DBG("auto_brightness state is ON, can not change the brightness value");
+ if (auto_brt_state == SETTING_BRIGHTNESS_AUTOMATIC_ON) {
+ DEVLOG("auto_brightness state is ON, can not change the brightness value");
return DEVMAN_ERROR_NONE;
}
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_BRIGHTNESS, lcdnum);
- ret = device_set_property(DEVTYPE_DISPLAY0, cmd, val);
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_BRIGHTNESS, lcdnum);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, cmd, val);
if (ret < 0)
return ret;
if (vconf_set_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, val) != 0) {
- ERR("Failed to set VCONFKEY_SETAPPL_LCD_BRIGHTNESS value");
- return DEVMAN_ERROR_OPERATION_FAILED;
+ DEVERR("Failed to set VCONFKEY_SETAPPL_LCD_BRIGHTNESS value");
+ }
+
+ if (vconf_set_int(VCONFKEY_PM_CURRENT_BRIGHTNESS, val) != 0) {
+ DEVERR("Failed to set VCONFKEY_PM_CURRENT_BRIGHTNESS value");
}
return DEVMAN_ERROR_NONE;
API int device_set_display_brt(display_num_t lcdnum, int val)
{
- int bat_state = -1;
- int auto_brightness_state = -1;
- int ret = -1;
- int cmd = 0;
+ int bat_state;
+ int auto_brt_state;
+ int cmd;
+ int ret;
if (vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW, &bat_state) != 0) {
- ERR("Failed to get VCONFKEY_SYSMAN_BATTERY_STATUS_LOW value");
+ DEVERR("Failed to get VCONFKEY_SYSMAN_BATTERY_STATUS_LOW value");
return DEVMAN_ERROR_OPERATION_FAILED;
}
vconf_set_int(VCONFKEY_PM_CUSTOM_BRIGHTNESS_STATUS, VCONFKEY_PM_CUSTOM_BRIGHTNESS_ON);
if (bat_state < VCONFKEY_SYSMAN_BAT_WARNING_LOW) {
- DBG("can not set brightness for low battery");
+ DEVLOG("can not set brightness for low battery");
return DEVMAN_ERROR_NONE;
}
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_BRIGHTNESS, lcdnum);
- ret = device_set_property(DEVTYPE_DISPLAY0, cmd, val);
+ if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &auto_brt_state) != 0) {
+ DEVERR("Failed to get VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT value");
+ return DEVMAN_ERROR_OPERATION_FAILED;
+ }
+
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_BRIGHTNESS, lcdnum);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, cmd, val);
if (ret < 0)
return ret;
- if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &auto_brightness_state) == 0) {
- if (auto_brightness_state == SETTING_BRIGHTNESS_AUTOMATIC_ON) {
- DBG("Auto brightness is paused");
- vconf_set_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, SETTING_BRIGHTNESS_AUTOMATIC_PAUSE);
- }
+ if (auto_brt_state == SETTING_BRIGHTNESS_AUTOMATIC_ON) {
+ DEVLOG("Auto brightness will be paused");
+ vconf_set_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, SETTING_BRIGHTNESS_AUTOMATIC_PAUSE);
+ }
+
+ if (vconf_set_int(VCONFKEY_PM_CURRENT_BRIGHTNESS, val) != 0) {
+ DEVERR("Failed to set VCONFKEY_PM_CURRENT_BRIGHTNESS value");
}
if (!disp_flag)
API int device_release_brt_ctrl(display_num_t lcdnum)
{
- int setting_val = 0;
- int bat_state = -1;
- int auto_brightness_state = -1;
- int cmd = 0;
- int ret = -1;
- int charger_state = -1;
- int brt_changed_state = -1;
+ int bat_state;
+ int setting_val;
+ int auto_brt_state;
+ int charger_state;
+ int brt_changed_state;
+ int cmd;
+ int ret;
if (vconf_get_int(VCONFKEY_SYSMAN_BATTERY_STATUS_LOW, &bat_state) != 0) {
- ERR("Failed to get VCONFKEY_SYSMAN_BATTERY_STATUS_LOW value");
+ DEVERR("Failed to get VCONFKEY_SYSMAN_BATTERY_STATUS_LOW value");
return DEVMAN_ERROR_OPERATION_FAILED;
}
if (vconf_get_int(VCONFKEY_SYSMAN_CHARGER_STATUS, &charger_state) != 0) {
- ERR("Failed to get VCONFKEY_SYSMAN_CHARGER_STATUS value");
+ DEVERR("Failed to get VCONFKEY_SYSMAN_CHARGER_STATUS value");
return DEVMAN_ERROR_OPERATION_FAILED;
}
if (vconf_get_bool(VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM, &brt_changed_state) != 0) {
- ERR("Failed to get VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM value");
+ DEVERR("Failed to get VCONFKEY_PM_BRIGHTNESS_CHANGED_IN_LPM value");
return DEVMAN_ERROR_OPERATION_FAILED;
}
vconf_set_int(VCONFKEY_PM_CUSTOM_BRIGHTNESS_STATUS, VCONFKEY_PM_CUSTOM_BRIGHTNESS_OFF);
if (bat_state < VCONFKEY_SYSMAN_BAT_WARNING_LOW) {
- DBG("can not set brightness for low battery");
+ DEVLOG("can not set brightness for low battery");
return DEVMAN_ERROR_NONE;
}
+ if (vconf_get_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, &setting_val) != 0) {
+ DEVERR("Failed to get VCONFKEY_SETAPPL_LCD_BRIGHTNESS value");
+ return DEVMAN_ERROR_OPERATION_FAILED;
+ }
+
+ if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &auto_brt_state) != 0) {
+ DEVERR("Failed to get VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT value");
+ return DEVMAN_ERROR_OPERATION_FAILED;
+ }
+
// check dim state
if (bat_state == VCONFKEY_SYSMAN_BAT_WARNING_LOW &&
charger_state == VCONFKEY_SYSMAN_CHARGER_DISCONNECTED && !brt_changed_state) {
- DBG("batt warning low : brightness is not changed!");
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_BRIGHTNESS, lcdnum);
- device_set_property(DEVTYPE_DISPLAY0, cmd, 0);
+ DEVLOG("batt warning low : brightness is not changed!");
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_BRIGHTNESS, lcdnum);
+ device_set_property(DEVICE_TYPE_DISPLAY, cmd, 0);
return DEVMAN_ERROR_NONE;
}
- if (vconf_get_int(VCONFKEY_SETAPPL_LCD_BRIGHTNESS, &setting_val) != 0) {
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_MAX_BRIGHTNESS, lcdnum);
- ret = device_get_property(DEVTYPE_DISPLAY0, cmd, &setting_val);
- if (ret < 0)
- return ret;
- setting_val = setting_val * 0.7;
- }
-
- if (vconf_get_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, &auto_brightness_state) == 0) {
- if (auto_brightness_state == SETTING_BRIGHTNESS_AUTOMATIC_OFF) {
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_BRIGHTNESS, lcdnum);
- device_set_property(DEVTYPE_DISPLAY0, cmd, setting_val);
- } else if (auto_brightness_state == SETTING_BRIGHTNESS_AUTOMATIC_PAUSE) {
- vconf_set_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, SETTING_BRIGHTNESS_AUTOMATIC_ON);
- }
+ if (auto_brt_state == SETTING_BRIGHTNESS_AUTOMATIC_OFF) {
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_BRIGHTNESS, lcdnum);
+ device_set_property(DEVICE_TYPE_DISPLAY, cmd, setting_val);
+ } else if (auto_brt_state == SETTING_BRIGHTNESS_AUTOMATIC_PAUSE) {
+ DEVLOG("Auto brightness will be enable");
+ vconf_set_int(VCONFKEY_SETAPPL_BRIGHTNESS_AUTOMATIC_INT, SETTING_BRIGHTNESS_AUTOMATIC_ON);
}
UNSET_FLAG(disp_flag, BRT_BIT);
return DEVMAN_ERROR_NONE;
}
-API int device_get_min_brt(display_num_t lcdnum)
+API int device_get_max_brt(display_num_t lcdnum)
{
- int val = -1;
- int cmd = 0;
- int ret = -1;
-
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_MIN_BRIGHTNESS, lcdnum);
- ret = device_get_property(DEVTYPE_DISPLAY0, cmd, &val);
- if (ret < 0)
- return ret;
-
- return val;
+ return DISPLAY_MAX_BRIGHTNESS;
}
-API int device_get_max_brt(display_num_t lcdnum)
+API int device_get_min_brt(display_num_t lcdnum)
{
- int val = -1;
- int cmd = 0;
- int ret = -1;
-
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_MAX_BRIGHTNESS, lcdnum);
- ret = device_get_property(DEVTYPE_DISPLAY0, cmd, &val);
- if (ret < 0)
- return ret;
-
- return val;
+ return DISPLAY_MIN_BRIGHTNESS;
}
API int device_get_display_gamma(display_num_t lcdnum)
{
- int val = -1;
- int cmd = 0;
- int ret = -1;
-
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_GAMMA, lcdnum);
- ret = device_get_property(DEVTYPE_DISPLAY0, cmd, &val);
- if (ret < 0)
- return ret;
-
- return val;
+ DEVERR("Not support this api");
+ return DEVMAN_ERROR_NOT_SUPPORTED;
}
API int device_set_display_gamma(display_num_t lcdnum, display_gamma_t val)
{
- int ret = -1;
- int cmd = 0;
-
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_GAMMA, lcdnum);
- ret = device_set_property(DEVTYPE_DISPLAY0, cmd, val);
- if (ret < 0)
- return ret;
-
- if (!disp_flag)
- ret = display_register_postjob();
- if (ret == 0)
- SET_FLAG(disp_flag, GAMMA_BIT);
-
- return DEVMAN_ERROR_NONE;
+ DEVERR("Not support this api");
+ return DEVMAN_ERROR_NOT_SUPPORTED;
}
API int device_release_gamma_ctrl(display_num_t lcdnum, display_gamma_t org_val)
{
- int cmd = 0;
- int ret = -1;
-
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_GAMMA, lcdnum);
- ret = device_set_property(DEVTYPE_DISPLAY0, cmd, org_val);
- if (ret < 0)
- return ret;
-
- UNSET_FLAG(disp_flag, GAMMA_BIT);
- if (!disp_flag)
- display_cancel_postjob();
-
- return DEVMAN_ERROR_NONE;
+ DEVERR("Not support this api");
+ return DEVMAN_ERROR_NOT_SUPPORTED;
}
API int device_get_display_count(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_DISPLAY_COUNT, &val);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_DISPLAY_COUNT, &val);
if (ret < 0)
return ret;
API int device_get_image_enhance_mode(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_MODE, &val);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_MODE, &val);
if (ret < 0)
return ret;
API int device_set_image_enhance_mode(int val)
{
- int ret = -1;
+ int ret;
- ret = device_set_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_MODE, val);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_MODE, val);
if (ret < 0)
return ret;
API int device_get_image_enhance_scenario(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_SCENARIO, &val);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_SCENARIO, &val);
if (ret < 0)
return ret;
API int device_set_image_enhance_scenario(int val)
{
- int ret = -1;
+ int ret;
- ret = device_set_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_SCENARIO, val);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_SCENARIO, val);
if (ret < 0)
return ret;
API int device_get_image_enhance_tone(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_TONE, &val);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_TONE, &val);
if (ret < 0)
return ret;
API int device_set_image_enhance_tone(int val)
{
- int ret = -1;
+ int ret;
- ret = device_set_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_TONE, val);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_TONE, val);
if (ret < 0)
return ret;
API int device_get_image_enhance_outdoor(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_OUTDOOR, &val);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_OUTDOOR, &val);
if (ret < 0)
return ret;
API int device_set_image_enhance_outdoor(int val)
{
- int ret = -1;
+ int ret;
- ret = device_set_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_OUTDOOR, val);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_OUTDOOR, val);
if (ret < 0)
return ret;
API int device_get_image_enhance_info(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
- ret = device_get_property(DEVTYPE_DISPLAY0, DISPLAY_PROP_IMAGE_ENHANCE_INFO, &val);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, PROP_DISPLAY_IMAGE_ENHANCE_INFO, &val);
if (ret < 0)
return ret;
API int device_get_led_brt(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
ret = device_get_property(DEVTYPE_LED, LED_PROP_BRIGHTNESS, &val);
if (ret < 0)
return DEVMAN_ERROR_NONE;
}
+API int device_set_led_brt_without_noti(int val)
+{
+ int ret;
+
+ ret = device_set_property(DEVTYPE_LED, LED_PROP_BRIGHTNESS, val);
+ if (ret < 0)
+ return ret;
+
+ return DEVMAN_ERROR_NONE;
+}
+
API int device_get_max_led(void)
{
- int val = -1;
- int ret = -1;
+ int val;
+ int ret;
ret = device_get_property(DEVTYPE_LED, LED_PROP_MAX_BRIGHTNESS, &val);
if (ret < 0)
API int device_get_acl_control_status(display_num_t num)
{
- int val = -1;
- int cmd = 0;
- int ret = -1;
+ int val;
+ int cmd;
+ int ret;
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_ACL_CONTROL, num);
- ret = device_get_property(DEVTYPE_DISPLAY0, cmd, &val);
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_ACL_CONTROL, num);
+ ret = device_get_property(DEVICE_TYPE_DISPLAY, cmd, &val);
if (ret < 0)
return ret;
API int device_set_acl_control_status(display_num_t num, int val)
{
- int cmd = 0;
- int ret = -1;
+ int cmd;
+ int ret;
- COMBINE_DISP_CMD(cmd, DISPLAY_PROP_ACL_CONTROL, num);
- ret = device_set_property(DEVTYPE_DISPLAY0, cmd, val);
+ COMBINE_DISP_CMD(cmd, PROP_DISPLAY_ACL_CONTROL, num);
+ ret = device_set_property(DEVICE_TYPE_DISPLAY, cmd, val);
if (ret < 0)
return ret;