ab8500_bm: Rename battery management platform data to something more logical
The platform specific battery management configuration data structure is currently called 'bat' short for 'battery'; however, it contains information for all components of the battery management group, rather than information pertaining to the battery itself - there are other structures for that. So, in keeping with its structure namesake 'abx500_bm_data', we rename it to 'bm' here. Using similar logic, we're also renaming 'bmdevs_of_probe' to the more device specific 'ab8500_bm_of_probe'. Signed-off-by: Lee Jones <lee.jones@linaro.org>
This commit is contained in:
@@ -78,7 +78,7 @@ struct ab8500_btemp_ranges {
|
||||
* @parent: Pointer to the struct ab8500
|
||||
* @gpadc: Pointer to the struct gpadc
|
||||
* @fg: Pointer to the struct fg
|
||||
* @bat: Pointer to the abx500_bm platform data
|
||||
* @bm: Platform specific battery management information
|
||||
* @btemp_psy: Structure for BTEMP specific battery properties
|
||||
* @events: Structure for information about events triggered
|
||||
* @btemp_ranges: Battery temperature range structure
|
||||
@@ -95,7 +95,7 @@ struct ab8500_btemp {
|
||||
struct ab8500 *parent;
|
||||
struct ab8500_gpadc *gpadc;
|
||||
struct ab8500_fg *fg;
|
||||
struct abx500_bm_data *bat;
|
||||
struct abx500_bm_data *bm;
|
||||
struct power_supply btemp_psy;
|
||||
struct ab8500_btemp_events events;
|
||||
struct ab8500_btemp_ranges btemp_ranges;
|
||||
@@ -149,13 +149,13 @@ static int ab8500_btemp_batctrl_volt_to_res(struct ab8500_btemp *di,
|
||||
return (450000 * (v_batctrl)) / (1800 - v_batctrl);
|
||||
}
|
||||
|
||||
if (di->bat->adc_therm == ABx500_ADC_THERM_BATCTRL) {
|
||||
if (di->bm->adc_therm == ABx500_ADC_THERM_BATCTRL) {
|
||||
/*
|
||||
* If the battery has internal NTC, we use the current
|
||||
* source to calculate the resistance, 7uA or 20uA
|
||||
*/
|
||||
rbs = (v_batctrl * 1000
|
||||
- di->bat->gnd_lift_resistance * inst_curr)
|
||||
- di->bm->gnd_lift_resistance * inst_curr)
|
||||
/ di->curr_source;
|
||||
} else {
|
||||
/*
|
||||
@@ -211,7 +211,7 @@ static int ab8500_btemp_curr_source_enable(struct ab8500_btemp *di,
|
||||
return 0;
|
||||
|
||||
/* Only do this for batteries with internal NTC */
|
||||
if (di->bat->adc_therm == ABx500_ADC_THERM_BATCTRL && enable) {
|
||||
if (di->bm->adc_therm == ABx500_ADC_THERM_BATCTRL && enable) {
|
||||
if (di->curr_source == BTEMP_BATCTRL_CURR_SRC_7UA)
|
||||
curr = BAT_CTRL_7U_ENA;
|
||||
else
|
||||
@@ -243,7 +243,7 @@ static int ab8500_btemp_curr_source_enable(struct ab8500_btemp *di,
|
||||
__func__);
|
||||
goto disable_curr_source;
|
||||
}
|
||||
} else if (di->bat->adc_therm == ABx500_ADC_THERM_BATCTRL && !enable) {
|
||||
} else if (di->bm->adc_therm == ABx500_ADC_THERM_BATCTRL && !enable) {
|
||||
dev_dbg(di->dev, "Disable BATCTRL curr source\n");
|
||||
|
||||
/* Write 0 to the curr bits */
|
||||
@@ -459,9 +459,9 @@ static int ab8500_btemp_measure_temp(struct ab8500_btemp *di)
|
||||
int rbat, rntc, vntc;
|
||||
u8 id;
|
||||
|
||||
id = di->bat->batt_id;
|
||||
id = di->bm->batt_id;
|
||||
|
||||
if (di->bat->adc_therm == ABx500_ADC_THERM_BATCTRL &&
|
||||
if (di->bm->adc_therm == ABx500_ADC_THERM_BATCTRL &&
|
||||
id != BATTERY_UNKNOWN) {
|
||||
|
||||
rbat = ab8500_btemp_get_batctrl_res(di);
|
||||
@@ -476,8 +476,8 @@ static int ab8500_btemp_measure_temp(struct ab8500_btemp *di)
|
||||
}
|
||||
|
||||
temp = ab8500_btemp_res_to_temp(di,
|
||||
di->bat->bat_type[id].r_to_t_tbl,
|
||||
di->bat->bat_type[id].n_temp_tbl_elements, rbat);
|
||||
di->bm->bat_type[id].r_to_t_tbl,
|
||||
di->bm->bat_type[id].n_temp_tbl_elements, rbat);
|
||||
} else {
|
||||
vntc = ab8500_gpadc_convert(di->gpadc, BTEMP_BALL);
|
||||
if (vntc < 0) {
|
||||
@@ -493,8 +493,8 @@ static int ab8500_btemp_measure_temp(struct ab8500_btemp *di)
|
||||
rntc = 230000 * vntc / (VTVOUT_V - vntc);
|
||||
|
||||
temp = ab8500_btemp_res_to_temp(di,
|
||||
di->bat->bat_type[id].r_to_t_tbl,
|
||||
di->bat->bat_type[id].n_temp_tbl_elements, rntc);
|
||||
di->bm->bat_type[id].r_to_t_tbl,
|
||||
di->bm->bat_type[id].n_temp_tbl_elements, rntc);
|
||||
prev = temp;
|
||||
}
|
||||
dev_dbg(di->dev, "Battery temperature is %d\n", temp);
|
||||
@@ -515,7 +515,7 @@ static int ab8500_btemp_id(struct ab8500_btemp *di)
|
||||
u8 i;
|
||||
|
||||
di->curr_source = BTEMP_BATCTRL_CURR_SRC_7UA;
|
||||
di->bat->batt_id = BATTERY_UNKNOWN;
|
||||
di->bm->batt_id = BATTERY_UNKNOWN;
|
||||
|
||||
res = ab8500_btemp_get_batctrl_res(di);
|
||||
if (res < 0) {
|
||||
@@ -524,23 +524,23 @@ static int ab8500_btemp_id(struct ab8500_btemp *di)
|
||||
}
|
||||
|
||||
/* BATTERY_UNKNOWN is defined on position 0, skip it! */
|
||||
for (i = BATTERY_UNKNOWN + 1; i < di->bat->n_btypes; i++) {
|
||||
if ((res <= di->bat->bat_type[i].resis_high) &&
|
||||
(res >= di->bat->bat_type[i].resis_low)) {
|
||||
for (i = BATTERY_UNKNOWN + 1; i < di->bm->n_btypes; i++) {
|
||||
if ((res <= di->bm->bat_type[i].resis_high) &&
|
||||
(res >= di->bm->bat_type[i].resis_low)) {
|
||||
dev_dbg(di->dev, "Battery detected on %s"
|
||||
" low %d < res %d < high: %d"
|
||||
" index: %d\n",
|
||||
di->bat->adc_therm == ABx500_ADC_THERM_BATCTRL ?
|
||||
di->bm->adc_therm == ABx500_ADC_THERM_BATCTRL ?
|
||||
"BATCTRL" : "BATTEMP",
|
||||
di->bat->bat_type[i].resis_low, res,
|
||||
di->bat->bat_type[i].resis_high, i);
|
||||
di->bm->bat_type[i].resis_low, res,
|
||||
di->bm->bat_type[i].resis_high, i);
|
||||
|
||||
di->bat->batt_id = i;
|
||||
di->bm->batt_id = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (di->bat->batt_id == BATTERY_UNKNOWN) {
|
||||
if (di->bm->batt_id == BATTERY_UNKNOWN) {
|
||||
dev_warn(di->dev, "Battery identified as unknown"
|
||||
", resistance %d Ohm\n", res);
|
||||
return -ENXIO;
|
||||
@@ -550,13 +550,13 @@ static int ab8500_btemp_id(struct ab8500_btemp *di)
|
||||
* We only have to change current source if the
|
||||
* detected type is Type 1, else we use the 7uA source
|
||||
*/
|
||||
if (di->bat->adc_therm == ABx500_ADC_THERM_BATCTRL &&
|
||||
di->bat->batt_id == 1) {
|
||||
if (di->bm->adc_therm == ABx500_ADC_THERM_BATCTRL &&
|
||||
di->bm->batt_id == 1) {
|
||||
dev_dbg(di->dev, "Set BATCTRL current source to 20uA\n");
|
||||
di->curr_source = BTEMP_BATCTRL_CURR_SRC_20UA;
|
||||
}
|
||||
|
||||
return di->bat->batt_id;
|
||||
return di->bm->batt_id;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -586,9 +586,9 @@ static void ab8500_btemp_periodic_work(struct work_struct *work)
|
||||
}
|
||||
|
||||
if (di->events.ac_conn || di->events.usb_conn)
|
||||
interval = di->bat->temp_interval_chg;
|
||||
interval = di->bm->temp_interval_chg;
|
||||
else
|
||||
interval = di->bat->temp_interval_nochg;
|
||||
interval = di->bm->temp_interval_nochg;
|
||||
|
||||
/* Schedule a new measurement */
|
||||
queue_delayed_work(di->btemp_wq,
|
||||
@@ -815,7 +815,7 @@ static int ab8500_btemp_get_property(struct power_supply *psy,
|
||||
val->intval = 1;
|
||||
break;
|
||||
case POWER_SUPPLY_PROP_TECHNOLOGY:
|
||||
val->intval = di->bat->bat_type[di->bat->batt_id].name;
|
||||
val->intval = di->bm->bat_type[di->bm->batt_id].name;
|
||||
break;
|
||||
case POWER_SUPPLY_PROP_TEMP:
|
||||
val->intval = ab8500_btemp_get_temp(di);
|
||||
@@ -985,10 +985,10 @@ static int __devinit ab8500_btemp_probe(struct platform_device *pdev)
|
||||
dev_err(&pdev->dev, "%s no mem for ab8500_btemp\n", __func__);
|
||||
return -ENOMEM;
|
||||
}
|
||||
di->bat = pdev->mfd_cell->platform_data;
|
||||
if (!di->bat) {
|
||||
di->bm = pdev->mfd_cell->platform_data;
|
||||
if (!di->bm) {
|
||||
if (np) {
|
||||
ret = bmdevs_of_probe(&pdev->dev, np, &di->bat);
|
||||
ret = ab8500_bm_of_probe(&pdev->dev, np, &di->bm);
|
||||
if (ret) {
|
||||
dev_err(&pdev->dev,
|
||||
"failed to get battery information\n");
|
||||
|
Reference in New Issue
Block a user