summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDewal Agarwal <d1.agarwal@samsung.com>2020-04-01 10:12:40 +0530
committerDewal Agarwal <d1.agarwal@samsung.com>2020-04-01 10:12:40 +0530
commitb6e96c6b1c42fbfa7d9181c7a4752bcdd7943c91 (patch)
tree9276f9935232a0ecf0b94f7a3deb49c2f8df5b4c
parentb070cf5f97a6f6fc4a87fd1e16bad88b1a88aec7 (diff)
downloadbatterymonitor-b6e96c6b1c42fbfa7d9181c7a4752bcdd7943c91.tar.gz
batterymonitor-b6e96c6b1c42fbfa7d9181c7a4752bcdd7943c91.tar.bz2
batterymonitor-b6e96c6b1c42fbfa7d9181c7a4752bcdd7943c91.zip
Revert: Modify Wi-Fi Power Model
Change-Id: Icddd756f91f77c1225103ae313d680aafa8ec25b Signed-off-by: Dewal Agarwal <d1.agarwal@samsung.com>
-rw-r--r--include/bm_plugin_interface.h2
-rw-r--r--src/bm_power_engine.c28
2 files changed, 10 insertions, 20 deletions
diff --git a/include/bm_plugin_interface.h b/include/bm_plugin_interface.h
index 05ef8e9..e8e0b32 100644
--- a/include/bm_plugin_interface.h
+++ b/include/bm_plugin_interface.h
@@ -139,8 +139,6 @@ typedef struct {
uint time_level_2; /**< Total time in milliseconds during which rssi was on level 2 */
uint time_level_3; /**< Total time in milliseconds during which rssi was on level 3 */
uint time_level_4; /**< Total time in milliseconds during which rssi was on level 4 */
- uint rxTime; /**< Total time in milliseconds (RX) mode */
- uint txTime; /**< Total time in milliseconds (TX) mode */
time_t startTime; /**< start time of feature data collection session */
time_t endTime; /**< end time of feature data collection session */
uint scanTime; /**< Total time spent by the resource in (scan) mode during the session */
diff --git a/src/bm_power_engine.c b/src/bm_power_engine.c
index a186b66..0ff3db6 100644
--- a/src/bm_power_engine.c
+++ b/src/bm_power_engine.c
@@ -788,18 +788,19 @@ int bm_wifi_calc_power_and_commit(bm_wifi_st *handle, bool mode)
long int sesTime = 0, scTime = 0, tl_total = 0;
long int tl0 = 0, tl1 = 0, tl2 = 0, tl3 = 0, tl4 = 0;
double onTime = 0;
- long int RX = 0, TX = 0, rx_time = 0, tx_time = 0;
+ long int RX = 0, TX = 0;
/* iterating over list for data accumulation */
for (wifi_data_iterator = handle->wifi_data_list; wifi_data_iterator; wifi_data_iterator = wifi_data_iterator->next) {
bm_wifi_st *datalistnode = (bm_wifi_st *)(wifi_data_iterator->data);
edTime = datalistnode->endTime;
stTime = datalistnode->startTime;
- sesTime += (edTime - stTime);
+ sesTime += edTime - stTime;
scTime += datalistnode->scanTime;
- tl0 += datalistnode->time_level_0; tl1 += datalistnode->time_level_1;
- tl2 += datalistnode->time_level_2; tl3 += datalistnode->time_level_3;
+ tl0 += datalistnode->time_level_0;
+ tl1 += datalistnode->time_level_1;
+ tl2 += datalistnode->time_level_2;
+ tl3 += datalistnode->time_level_3;
tl4 += datalistnode->time_level_4;
- rx_time += datalistnode->rxTime; tx_time += datalistnode->txTime;
wifi_atm_iterator = datalistnode->atm_list;
for ( ; wifi_atm_iterator; wifi_atm_iterator = wifi_atm_iterator->next) {
app_time_map_st2 *wifi_atm_node = NULL;
@@ -846,7 +847,6 @@ int bm_wifi_calc_power_and_commit(bm_wifi_st *handle, bool mode)
tl0 /= 1000; tl1 /= 1000; tl2 /= 1000; tl3 /= 1000; tl4 /= 1000;
scTime /= 1000; sesTime /= 1000; onTime /= 1000;
- rx_time /= 1000; tx_time /= 1000;
tl_total = tl0 + tl1 + tl2 + tl3 + tl4;
/* Wifi power consumption Level - 1 at the Resource Level */
long int P_power_wifi = 0, P_power_data = 0, P_power_conn = 0;
@@ -855,10 +855,8 @@ int bm_wifi_calc_power_and_commit(bm_wifi_st *handle, bool mode)
(sP_power_wf_tl4 * tl4) + (sP_power_wf_scan * scTime) +
(sP_power_wf_idle * (sesTime - (tl_total + scTime))));
/* Amount based usage calculation */
-// P_power_data = ((sP_power_wf_tx) * TX) + ((sP_power_wf_rx) * RX);
+ P_power_data = ((sP_power_wf_tx) * TX) + ((sP_power_wf_rx) * RX);
- /* Use rx and tx time to calculate the usage */
- P_power_data = ((sP_power_wf_tx * tx_time) + (sP_power_wf_rx * rx_time));
P_power_wifi = P_power_conn + P_power_data;
_DBG("Calculated Power for Wifi P_power_wifi(%ld), P_power_conn (%ld), P_power_data(%ld)", P_power_wifi, P_power_conn, P_power_data);
@@ -870,16 +868,10 @@ int bm_wifi_calc_power_and_commit(bm_wifi_st *handle, bool mode)
long int P_power_app_wifi = 0, P_power_app_data = 0, P_power_app_conn = 0;
char *appid = NULL;
long int apprx = 0, apptx = 0;
- double apptime = 0, crtx_t = 0;
- long int rx_t = 0, tx_t = 0, rx_tx_time = 0;
+ double apptime = 0;
+ long int rx_t = 0, tx_t = 0;
long int ret_time = bm_get_log_time();
- /* Coefficient to divide the rx and tx time wrt rx and tx bytes */
- if (RX != 0 || TX != 0) {
- rx_tx_time = rx_time + tx_time;
- crtx_t = (double)rx_tx_time/(RX + TX);
- }
-
appid_usage_s *app_usage = (appid_usage_s *)calloc(1, sizeof(appid_usage_s));
if (app_usage == NULL) {
_ERR("memory allocation failed");
@@ -895,7 +887,7 @@ int bm_wifi_calc_power_and_commit(bm_wifi_st *handle, bool mode)
apptx = temp->tx; tx_t += apptx;
apptime = temp->time;
apptime /= 1000;
- P_power_app_data = (sP_power_wf_tx * (crtx_t * apptx)) + (sP_power_wf_rx * (crtx_t * apprx));
+ P_power_app_data = ((sP_power_wf_tx) * apptx) + ((sP_power_wf_rx) * apprx);
if (onTime != 0)
P_power_app_conn = (P_power_conn * apptime)/onTime; //check for 0 denominator & same units