Snap for 12589329 from dc619f6c922501200a3e182975cb24aff0a4e295 to android14-gs-pixel-6.1-25Q1-release
Change-Id: Iae88378d62debe68f66aa823c5270a905a391580
Signed-off-by: Coastguard Worker <[email protected]>
diff --git a/google_battery.c b/google_battery.c
index 5f61c0e..80908c0 100644
--- a/google_battery.c
+++ b/google_battery.c
@@ -639,7 +639,6 @@
int aacr_algo;
int aacr_min_capacity_rate;
int aacr_cliff_capacity_rate;
- struct mutex aacr_state_lock;
/* AAFV: Aged Adjusted Float Voltage */
enum batt_aafv_state aafv_state;
@@ -3946,7 +3945,6 @@
if (batt_drv->aacr_state == BATT_AACR_DISABLED)
goto exit_done;
- mutex_lock(&batt_drv->aacr_state_lock);
if (cycle_count <= batt_drv->aacr_cycle_grace) {
batt_drv->aacr_state = BATT_AACR_UNDER_CYCLES;
} else {
@@ -3960,7 +3958,6 @@
capacity = aacr_capacity;
}
}
- mutex_unlock(&batt_drv->aacr_state_lock);
exit_done:
return (u32)capacity;
@@ -7702,10 +7699,8 @@
pr_info("aacr_state: %d -> %d, aacr_algo: %d -> %d\n",
batt_drv->aacr_state, state, batt_drv->aacr_algo, algo);
- mutex_lock(&batt_drv->aacr_state_lock);
batt_drv->aacr_state = state;
batt_drv->aacr_algo = algo;
- mutex_unlock(&batt_drv->aacr_state_lock);
aacr_update_chg_table(batt_drv);
@@ -7739,10 +7734,7 @@
if (value < 0)
return -ERANGE;
- mutex_lock(&batt_drv->aacr_state_lock);
batt_drv->aacr_cycle_grace = value;
- mutex_unlock(&batt_drv->aacr_state_lock);
-
return count;
}
@@ -7773,10 +7765,7 @@
if (value < 0 || value > 3000) /* unexpected cycles */
return -ERANGE;
- mutex_lock(&batt_drv->aacr_state_lock);
batt_drv->aacr_cycle_max = value;
- mutex_unlock(&batt_drv->aacr_state_lock);
-
return count;
}
@@ -7814,10 +7803,7 @@
if (ret < 0 || rate > 100 || rate <= 0)
return ret;
- mutex_lock(&batt_drv->aacr_state_lock);
batt_drv->aacr_min_capacity_rate = rate;
- mutex_unlock(&batt_drv->aacr_state_lock);
-
return count;
}
@@ -7847,10 +7833,7 @@
if(rate > 100 || rate <= 0)
return -ERANGE;
- mutex_lock(&batt_drv->aacr_state_lock);
batt_drv->aacr_cliff_capacity_rate = rate;
- mutex_unlock(&batt_drv->aacr_state_lock);
-
return count;
}
@@ -7865,72 +7848,6 @@
static const DEVICE_ATTR_RW(aacr_cliff_capacity_rate);
-static ssize_t aacr_profile_store(struct device *dev,
- struct device_attribute *attr,
- const char *buf, size_t count)
-{
- struct power_supply *psy = container_of(dev, struct power_supply, dev);
- struct batt_drv *batt_drv = power_supply_get_drvdata(psy);
- struct gbms_chg_profile *profile = &batt_drv->chg_profile;
- u32 cc[GBMS_AACR_DATA_MAX] = { 0 };
- u32 fd[GBMS_AACR_DATA_MAX] = { 0 };
- int cnt = 0, batt_id;
-
- cnt = sscanf(buf, "%d,%u:%u,%u:%u,%u:%u,%u:%u,%u:%u,%u:%u,%u:%u,%u:%u,%u:%u,%u:%u",
- &batt_id, &cc[0], &fd[0], &cc[1], &fd[1], &cc[2], &fd[2], &cc[3], &fd[3],
- &cc[4], &fd[4], &cc[5], &fd[5], &cc[6], &fd[6], &cc[7], &fd[7],
- &cc[8], &fd[8], &cc[9], &fd[9]);
-
- /* The number entered must be an odd number (include batt_id) */
- if (cnt % 2 == 0 || cnt < 3)
- return -ERANGE;
-
- /* validity check */
- for (cnt = 0; cnt < GBMS_AACR_DATA_MAX - 1; cnt++) {
- if (cc[cnt + 1] == 0)
- break;
-
- if (cc[cnt] > cc[cnt + 1] || fd[cnt] > fd[cnt + 1])
- return -ERANGE;
- }
-
- if (batt_id == batt_drv->batt_id) {
- mutex_lock(&batt_drv->aacr_state_lock);
- memcpy(&profile->aacr_reference_cycles, cc, sizeof(cc));
- memcpy(&profile->aacr_reference_fade10, fd, sizeof(fd));
- profile->aacr_nb_limits = (u32)(cnt + 1);
- mutex_unlock(&batt_drv->aacr_state_lock);
- }
-
- return count;
-}
-
-static ssize_t aacr_profile_show(struct device *dev,
- struct device_attribute *attr, char *buf)
-{
- struct power_supply *psy = container_of(dev, struct power_supply, dev);
- struct batt_drv *batt_drv = power_supply_get_drvdata(psy);
- struct gbms_chg_profile *profile = &batt_drv->chg_profile;
- ssize_t cnt = 0;
- int i;
-
- if (profile->aacr_nb_limits == 0)
- return cnt;
-
- cnt += sysfs_emit_at(buf, cnt, "%d", batt_drv->batt_id);
-
- for (i = 0; i < profile->aacr_nb_limits; i++)
- cnt += sysfs_emit_at(buf, cnt, ",%u:%u",
- profile->aacr_reference_cycles[i],
- profile->aacr_reference_fade10[i]);
-
- cnt += sysfs_emit_at(buf, cnt, "\n");
-
- return cnt;
-}
-
-static const DEVICE_ATTR_RW(aacr_profile);
-
/* AAFV ------------------------------------------------------------------- */
static ssize_t aafv_state_store(struct device *dev,
@@ -9318,9 +9235,6 @@
ret = device_create_file(&batt_drv->psy->dev, &dev_attr_aacr_cliff_capacity_rate);
if (ret)
dev_err(&batt_drv->psy->dev, "Failed to create aacr cliff capacity rate\n");
- ret = device_create_file(&batt_drv->psy->dev, &dev_attr_aacr_profile);
- if (ret)
- dev_err(&batt_drv->psy->dev, "Failed to create aacr profile\n");
/* aafv */
ret = device_create_file(&batt_drv->psy->dev, &dev_attr_aafv_state);
if (ret)
@@ -11404,7 +11318,6 @@
mutex_init(&batt_drv->cc_data.lock);
mutex_init(&batt_drv->bpst_state.lock);
mutex_init(&batt_drv->hda_tz_lock);
- mutex_init(&batt_drv->aacr_state_lock);
mutex_init(&batt_drv->aafv_state_lock);
ret = of_property_read_u32(node, "google,batt-init-delay", &init_delay_ms);