static guint power_timer;
static device_notifier_state_e old_state = -1;
+bool battery_initialized;
+
bool battery_do_not_disturb(void);
int battery_pm_change_internal(int pid, int s_bits);
static int booting_done(void *data);
env_value = udev_device_get_property_value(dev, TEMPERATURE);
check_temperature_status(env_value);
+ battery_initialized = true;
+
ret = booting_done(NULL);
if (ret) {
if (battery.online > POWER_SUPPLY_TYPE_BATTERY)
battery.voltage_average = info->voltage_average;
battery.freq_strength = info->freq_strength;
+ battery_initialized = true;
+
ret = battery_state(info);
if (ret != 1)
return;
if (old_state == DEVICE_NOTIFIER_STATE_STOP)
goto out;
+ if (battery_initialized)
+ goto out;
+
if (battery_dev && battery_dev->get_current_state) {
ret = battery_dev->get_current_state(battery_get_info, &info);
if (ret < 0)
battery.misc = MISC_NONE;
battery.freq_strength = 0;
+ /* It will be true on initializing battery structure */
+ battery_initialized = false;
+
/* process check battery timer until booting done */
power_supply_timer_start();
extern struct battery_status battery;
extern struct battery_status old_battery;
+extern bool battery_initialized;
int power_supply_broadcast(char *sig, int status);
int battery_pm_change_internal(int pid, int s_bits);