summaryrefslogtreecommitdiff
path: root/drivers/power
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/qcom-charger/qpnp-smb2.c1
-rw-r--r--drivers/power/qcom-charger/smb-lib.c205
-rw-r--r--drivers/power/qcom-charger/smb-lib.h1
-rw-r--r--drivers/power/qcom-charger/smb138x-charger.c1
4 files changed, 105 insertions, 103 deletions
diff --git a/drivers/power/qcom-charger/qpnp-smb2.c b/drivers/power/qcom-charger/qpnp-smb2.c
index 31354938bc2a..954a03f042f7 100644
--- a/drivers/power/qcom-charger/qpnp-smb2.c
+++ b/drivers/power/qcom-charger/qpnp-smb2.c
@@ -1584,6 +1584,7 @@ static int smb2_probe(struct platform_device *pdev)
chg->param = v1_params;
chg->debug_mask = &__debug_mask;
chg->mode = PARALLEL_MASTER;
+ chg->name = "PMI";
chg->pl.master_percent = &__pl_master_percent;
chg->regmap = dev_get_regmap(chg->dev->parent, NULL);
diff --git a/drivers/power/qcom-charger/smb-lib.c b/drivers/power/qcom-charger/smb-lib.c
index 679bfb97879b..042a616e0c69 100644
--- a/drivers/power/qcom-charger/smb-lib.c
+++ b/drivers/power/qcom-charger/smb-lib.c
@@ -22,12 +22,18 @@
#include "storm-watch.h"
#include "pmic-voter.h"
+#define smblib_err(chg, fmt, ...) \
+ pr_err("%s: %s: " fmt, chg->name, \
+ __func__, ##__VA_ARGS__) \
+
#define smblib_dbg(chg, reason, fmt, ...) \
do { \
if (*chg->debug_mask & (reason)) \
- dev_info(chg->dev, fmt, ##__VA_ARGS__); \
+ pr_info("%s: %s: " fmt, chg->name, \
+ __func__, ##__VA_ARGS__); \
else \
- dev_dbg(chg->dev, fmt, ##__VA_ARGS__); \
+ pr_debug("%s: %s: " fmt, chg->name, \
+ __func__, ##__VA_ARGS__); \
} while (0)
static bool is_secure(struct smb_charger *chg, int addr)
@@ -99,7 +105,7 @@ static int smblib_get_step_charging_adjustment(struct smb_charger *chg,
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
rc);
return rc;
}
@@ -136,7 +142,7 @@ static void smblib_fcc_split_ua(struct smb_charger *chg, int total_fcc,
&chg->param.jeita_cc_comp,
&cc_reduction_ua);
if (rc < 0) {
- dev_err(chg->dev, "Could not get jeita comp, rc=%d\n",
+ smblib_err(chg, "Could not get jeita comp, rc=%d\n",
rc);
cc_reduction_ua = 0;
}
@@ -172,7 +178,7 @@ int smblib_get_charge_param(struct smb_charger *chg,
rc = smblib_read(chg, param->reg, &val_raw);
if (rc < 0) {
- dev_err(chg->dev, "%s: Couldn't read from 0x%04x rc=%d\n",
+ smblib_err(chg, "%s: Couldn't read from 0x%04x rc=%d\n",
param->name, param->reg, rc);
return rc;
}
@@ -194,7 +200,7 @@ int smblib_get_usb_suspend(struct smb_charger *chg, int *suspend)
rc = smblib_read(chg, USBIN_CMD_IL_REG, &temp);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read USBIN_CMD_IL rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read USBIN_CMD_IL rc=%d\n", rc);
return rc;
}
*suspend = temp & USBIN_SUSPEND_BIT;
@@ -271,7 +277,7 @@ static const struct apsd_result *smblib_get_apsd_result(struct smb_charger *chg)
rc = smblib_read(chg, APSD_STATUS_REG, &apsd_stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read APSD_STATUS rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read APSD_STATUS rc=%d\n", rc);
return result;
}
smblib_dbg(chg, PR_REGISTER, "APSD_STATUS = 0x%02x\n", apsd_stat);
@@ -281,7 +287,7 @@ static const struct apsd_result *smblib_get_apsd_result(struct smb_charger *chg)
rc = smblib_read(chg, APSD_RESULT_STATUS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read APSD_RESULT_STATUS rc=%d\n",
+ smblib_err(chg, "Couldn't read APSD_RESULT_STATUS rc=%d\n",
rc);
return result;
}
@@ -318,7 +324,7 @@ int smblib_set_charge_param(struct smb_charger *chg,
return -EINVAL;
} else {
if (val_u > param->max_u || val_u < param->min_u) {
- dev_err(chg->dev, "%s: %d is out of range [%d, %d]\n",
+ smblib_err(chg, "%s: %d is out of range [%d, %d]\n",
param->name, val_u, param->min_u, param->max_u);
return -EINVAL;
}
@@ -328,7 +334,7 @@ int smblib_set_charge_param(struct smb_charger *chg,
rc = smblib_write(chg, param->reg, val_raw);
if (rc < 0) {
- dev_err(chg->dev, "%s: Couldn't write 0x%02x to 0x%04x rc=%d\n",
+ smblib_err(chg, "%s: Couldn't write 0x%02x to 0x%04x rc=%d\n",
param->name, val_raw, param->reg, rc);
return rc;
}
@@ -345,14 +351,14 @@ static int step_charge_soc_update(struct smb_charger *chg, int capacity)
rc = smblib_set_charge_param(chg, &chg->param.step_soc, capacity);
if (rc < 0) {
- dev_err(chg->dev, "Error in updating soc, rc=%d\n", rc);
+ smblib_err(chg, "Error in updating soc, rc=%d\n", rc);
return rc;
}
rc = smblib_write(chg, STEP_CHG_SOC_VBATT_V_UPDATE_REG,
STEP_CHG_SOC_VBATT_V_UPDATE_BIT);
if (rc < 0) {
- dev_err(chg->dev,
+ smblib_err(chg,
"Couldn't set STEP_CHG_SOC_VBATT_V_UPDATE_REG rc=%d\n",
rc);
return rc;
@@ -368,7 +374,7 @@ int smblib_set_usb_suspend(struct smb_charger *chg, bool suspend)
rc = smblib_masked_write(chg, USBIN_CMD_IL_REG, USBIN_SUSPEND_BIT,
suspend ? USBIN_SUSPEND_BIT : 0);
if (rc < 0)
- dev_err(chg->dev, "Couldn't write %s to USBIN_SUSPEND_BIT rc=%d\n",
+ smblib_err(chg, "Couldn't write %s to USBIN_SUSPEND_BIT rc=%d\n",
suspend ? "suspend" : "resume", rc);
return rc;
@@ -381,7 +387,7 @@ int smblib_set_dc_suspend(struct smb_charger *chg, bool suspend)
rc = smblib_masked_write(chg, DCIN_CMD_IL_REG, DCIN_SUSPEND_BIT,
suspend ? DCIN_SUSPEND_BIT : 0);
if (rc < 0)
- dev_err(chg->dev, "Couldn't write %s to DCIN_SUSPEND_BIT rc=%d\n",
+ smblib_err(chg, "Couldn't write %s to DCIN_SUSPEND_BIT rc=%d\n",
suspend ? "suspend" : "resume", rc);
return rc;
@@ -409,14 +415,14 @@ static int smblib_set_usb_pd_allowed_voltage(struct smb_charger *chg,
} else if (min_allowed_uv < MICRO_12V && max_allowed_uv <= MICRO_12V) {
allowed_voltage = USBIN_ADAPTER_ALLOW_9V_TO_12V;
} else {
- dev_err(chg->dev, "invalid allowed voltage [%d, %d]\n",
+ smblib_err(chg, "invalid allowed voltage [%d, %d]\n",
min_allowed_uv, max_allowed_uv);
return -EINVAL;
}
rc = smblib_write(chg, USBIN_ADAPTER_ALLOW_CFG_REG, allowed_voltage);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't write 0x%02x to USBIN_ADAPTER_ALLOW_CFG rc=%d\n",
+ smblib_err(chg, "Couldn't write 0x%02x to USBIN_ADAPTER_ALLOW_CFG rc=%d\n",
allowed_voltage, rc);
return rc;
}
@@ -497,7 +503,7 @@ static int smblib_register_notifier(struct smb_charger *chg)
chg->nb.notifier_call = smblib_notifier_call;
rc = power_supply_reg_notifier(&chg->nb);
if (rc < 0) {
- pr_err("Couldn't register psy notifier rc = %d\n", rc);
+ smblib_err(chg, "Couldn't register psy notifier rc = %d\n", rc);
return rc;
}
@@ -595,7 +601,7 @@ static int smblib_fcc_vote_callback(struct votable *votable, void *data,
rc = power_supply_set_property(chg->pl.psy,
POWER_SUPPLY_PROP_CURRENT_MAX, &pval);
if (rc < 0) {
- dev_err(chg->dev, "Could not set parallel fcc, rc=%d\n",
+ smblib_err(chg, "Could not set parallel fcc, rc=%d\n",
rc);
return rc;
}
@@ -605,7 +611,7 @@ static int smblib_fcc_vote_callback(struct votable *votable, void *data,
rc = smblib_set_charge_param(chg, &chg->param.fcc, master_ua);
if (rc < 0) {
- dev_err(chg->dev, "Error in setting fcc, rc=%d\n", rc);
+ smblib_err(chg, "Error in setting fcc, rc=%d\n", rc);
return rc;
}
@@ -627,8 +633,7 @@ static int smblib_fv_vote_callback(struct votable *votable, void *data,
rc = smblib_set_charge_param(chg, &chg->param.fv, fv_uv);
if (rc < 0) {
- dev_err(chg->dev,
- "Couldn't set floating voltage rc=%d\n", rc);
+ smblib_err(chg, "Couldn't set floating voltage rc=%d\n", rc);
return rc;
}
@@ -637,7 +642,7 @@ static int smblib_fv_vote_callback(struct votable *votable, void *data,
rc = power_supply_set_property(chg->pl.psy,
POWER_SUPPLY_PROP_VOLTAGE_MAX, &pval);
if (rc < 0) {
- dev_err(chg->dev,
+ smblib_err(chg,
"Couldn't set float on parallel rc=%d\n", rc);
return rc;
}
@@ -665,7 +670,7 @@ static int smblib_usb_icl_vote_callback(struct votable *votable, void *data,
if (chg->usb_psy_desc.type != POWER_SUPPLY_TYPE_USB) {
rc = smblib_set_charge_param(chg, &chg->param.usb_icl, icl_ua);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't set HC ICL rc=%d\n", rc);
+ smblib_err(chg, "Couldn't set HC ICL rc=%d\n", rc);
return rc;
}
@@ -691,7 +696,7 @@ static int smblib_usb_icl_vote_callback(struct votable *votable, void *data,
icl_options = CFG_USB3P0_SEL_BIT | USB51_MODE_BIT;
break;
default:
- dev_err(chg->dev, "ICL %duA isn't supported for SDP\n", icl_ua);
+ smblib_err(chg, "ICL %duA isn't supported for SDP\n", icl_ua);
icl_options = 0;
break;
}
@@ -700,13 +705,13 @@ out:
rc = smblib_masked_write(chg, USBIN_ICL_OPTIONS_REG,
CFG_USB3P0_SEL_BIT | USB51_MODE_BIT, icl_options);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't set ICL opetions rc=%d\n", rc);
+ smblib_err(chg, "Couldn't set ICL opetions rc=%d\n", rc);
return rc;
}
rc = vote(chg->usb_suspend_votable, PD_VOTER, suspend, 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't %s input rc=%d\n",
+ smblib_err(chg, "Couldn't %s input rc=%d\n",
suspend ? "suspend" : "resume", rc);
return rc;
}
@@ -721,8 +726,7 @@ static int smblib_otg_cl_config(struct smb_charger *chg, int otg_cl_ua)
rc = smblib_set_charge_param(chg, &chg->param.otg_cl, otg_cl_ua);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't set otg current limit rc=%d\n",
- rc);
+ smblib_err(chg, "Couldn't set otg current limit rc=%d\n", rc);
return rc;
}
@@ -731,7 +735,7 @@ static int smblib_otg_cl_config(struct smb_charger *chg, int otg_cl_ua)
ENG_SSUPPLY_CFG_SKIP_TH_V0P2_BIT,
otg_cl_ua > MICRO_250MA ? 1 : 0);
if (rc < 0) {
- dev_err(chg->dev,
+ smblib_err(chg,
"Couldn't write DC_ENG_SSUPPLY_CFG3_REG rc=%d\n", rc);
return rc;
}
@@ -757,7 +761,7 @@ static int smblib_dc_icl_vote_callback(struct votable *votable, void *data,
rc = smblib_set_charge_param(chg, &chg->param.dc_icl, icl_ua);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't set DC input current limit rc=%d\n",
+ smblib_err(chg, "Couldn't set DC input current limit rc=%d\n",
rc);
return rc;
}
@@ -765,7 +769,7 @@ static int smblib_dc_icl_vote_callback(struct votable *votable, void *data,
suspend:
rc = vote(chg->dc_suspend_votable, USER_VOTER, suspend, 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't vote to %s DC rc=%d\n",
+ smblib_err(chg, "Couldn't vote to %s DC rc=%d\n",
suspend ? "suspend" : "resume", rc);
return rc;
}
@@ -815,7 +819,7 @@ static int smblib_pl_disable_vote_callback(struct votable *votable, void *data,
rc = power_supply_set_property(chg->pl.psy,
POWER_SUPPLY_PROP_INPUT_SUSPEND, &pval);
if (rc < 0) {
- dev_err(chg->dev,
+ smblib_err(chg,
"Couldn't change slave suspend state rc=%d\n", rc);
return rc;
}
@@ -833,7 +837,7 @@ static int smblib_chg_disable_vote_callback(struct votable *votable, void *data,
CHARGING_ENABLE_CMD_BIT,
chg_disable ? 0 : CHARGING_ENABLE_CMD_BIT);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't %s charging rc=%d\n",
+ smblib_err(chg, "Couldn't %s charging rc=%d\n",
chg_disable ? "disable" : "enable", rc);
return rc;
}
@@ -874,7 +878,7 @@ static int smblib_hvdcp_disable_vote_callback(struct votable *votable,
| HVDCP_AUTH_ALG_EN_CFG_BIT,
val);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't %s hvdcp rc=%d\n",
+ smblib_err(chg, "Couldn't %s hvdcp rc=%d\n",
hvdcp_disable ? "disable" : "enable", rc);
return rc;
}
@@ -893,7 +897,7 @@ static int smblib_apsd_disable_vote_callback(struct votable *votable,
AUTO_SRC_DETECT_BIT,
apsd_disable ? 0 : AUTO_SRC_DETECT_BIT);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't %s APSD rc=%d\n",
+ smblib_err(chg, "Couldn't %s APSD rc=%d\n",
apsd_disable ? "disable" : "enable", rc);
return rc;
}
@@ -915,21 +919,21 @@ int smblib_vbus_regulator_enable(struct regulator_dev *rdev)
ENG_BUCKBOOST_HALT1_8_MODE_BIT,
ENG_BUCKBOOST_HALT1_8_MODE_BIT);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't set OTG_ENG_OTG_CFG_REG rc=%d\n",
+ smblib_err(chg, "Couldn't set OTG_ENG_OTG_CFG_REG rc=%d\n",
rc);
return rc;
}
rc = smblib_write(chg, CMD_OTG_REG, OTG_EN_BIT);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't enable OTG regulator rc=%d\n", rc);
+ smblib_err(chg, "Couldn't enable OTG regulator rc=%d\n", rc);
return rc;
}
msleep(OTG_SOFT_START_DELAY_MS);
rc = smblib_read(chg, OTG_STATUS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read OTG_STATUS_REG rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read OTG_STATUS_REG rc=%d\n", rc);
return rc;
}
if (stat & BOOST_SOFTSTART_DONE_BIT)
@@ -945,7 +949,7 @@ int smblib_vbus_regulator_disable(struct regulator_dev *rdev)
rc = smblib_write(chg, CMD_OTG_REG, 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't disable OTG regulator rc=%d\n", rc);
+ smblib_err(chg, "Couldn't disable OTG regulator rc=%d\n", rc);
return rc;
}
@@ -954,7 +958,7 @@ int smblib_vbus_regulator_disable(struct regulator_dev *rdev)
rc = smblib_masked_write(chg, OTG_ENG_OTG_CFG_REG,
ENG_BUCKBOOST_HALT1_8_MODE_BIT, 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't set OTG_ENG_OTG_CFG_REG rc=%d\n",
+ smblib_err(chg, "Couldn't set OTG_ENG_OTG_CFG_REG rc=%d\n",
rc);
return rc;
}
@@ -971,7 +975,7 @@ int smblib_vbus_regulator_is_enabled(struct regulator_dev *rdev)
rc = smblib_read(chg, CMD_OTG_REG, &cmd);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read CMD_OTG rc=%d", rc);
+ smblib_err(chg, "Couldn't read CMD_OTG rc=%d", rc);
return rc;
}
@@ -994,7 +998,7 @@ int smblib_vconn_regulator_enable(struct regulator_dev *rdev)
*/
rc = smblib_read(chg, TYPE_C_STATUS_4_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
return rc;
}
stat = stat & CC_ORIENTATION_BIT ? 0 : VCONN_EN_ORIENTATION_BIT;
@@ -1002,7 +1006,7 @@ int smblib_vconn_regulator_enable(struct regulator_dev *rdev)
VCONN_EN_VALUE_BIT | VCONN_EN_ORIENTATION_BIT,
VCONN_EN_VALUE_BIT | stat);
if (rc < 0)
- dev_err(chg->dev, "Couldn't enable vconn setting rc=%d\n", rc);
+ smblib_err(chg, "Couldn't enable vconn setting rc=%d\n", rc);
return rc;
}
@@ -1015,7 +1019,7 @@ int smblib_vconn_regulator_disable(struct regulator_dev *rdev)
rc = smblib_masked_write(chg, TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG,
VCONN_EN_VALUE_BIT, 0);
if (rc < 0)
- dev_err(chg->dev, "Couldn't disable vconn regulator rc=%d\n",
+ smblib_err(chg, "Couldn't disable vconn regulator rc=%d\n",
rc);
return rc;
@@ -1029,7 +1033,7 @@ int smblib_vconn_regulator_is_enabled(struct regulator_dev *rdev)
rc = smblib_read(chg, TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG, &cmd);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_INTRPT_ENB_SOFTWARE_CTRL rc=%d\n",
+ smblib_err(chg, "Couldn't read TYPE_C_INTRPT_ENB_SOFTWARE_CTRL rc=%d\n",
rc);
return rc;
}
@@ -1057,8 +1061,7 @@ int smblib_get_prop_batt_present(struct smb_charger *chg,
rc = smblib_read(chg, BATIF_BASE + INT_RT_STS_OFFSET, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATIF_INT_RT_STS rc=%d\n",
- rc);
+ smblib_err(chg, "Couldn't read BATIF_INT_RT_STS rc=%d\n", rc);
return rc;
}
@@ -1094,7 +1097,7 @@ int smblib_get_prop_batt_status(struct smb_charger *chg,
rc = smblib_get_prop_usb_online(chg, &pval);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't get usb online property rc=%d\n",
+ smblib_err(chg, "Couldn't get usb online property rc=%d\n",
rc);
return rc;
}
@@ -1102,7 +1105,7 @@ int smblib_get_prop_batt_status(struct smb_charger *chg,
rc = smblib_get_prop_dc_online(chg, &pval);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't get dc online property rc=%d\n",
+ smblib_err(chg, "Couldn't get dc online property rc=%d\n",
rc);
return rc;
}
@@ -1115,7 +1118,7 @@ int smblib_get_prop_batt_status(struct smb_charger *chg,
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
rc);
return rc;
}
@@ -1152,7 +1155,7 @@ int smblib_get_prop_batt_charge_type(struct smb_charger *chg,
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
rc);
return rc;
}
@@ -1184,7 +1187,7 @@ int smblib_get_prop_batt_health(struct smb_charger *chg,
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_2_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_2 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_2 rc=%d\n",
rc);
return rc;
}
@@ -1192,7 +1195,7 @@ int smblib_get_prop_batt_health(struct smb_charger *chg,
stat);
if (stat & CHARGER_ERROR_STATUS_BAT_OV_BIT) {
- dev_err(chg->dev, "battery over-voltage\n");
+ smblib_err(chg, "battery over-voltage\n");
val->intval = POWER_SUPPLY_HEALTH_OVERVOLTAGE;
goto done;
}
@@ -1227,7 +1230,7 @@ int smblib_get_prop_input_current_limited(struct smb_charger *chg,
rc = smblib_read(chg, AICL_STATUS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read AICL_STATUS rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read AICL_STATUS rc=%d\n", rc);
return rc;
}
val->intval = (stat & SOFT_ILIMIT_BIT) || chg->is_hdc;
@@ -1286,7 +1289,7 @@ int smblib_get_prop_step_chg_step(struct smb_charger *chg,
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
rc);
return rc;
}
@@ -1305,7 +1308,7 @@ int smblib_get_prop_batt_charge_done(struct smb_charger *chg,
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
rc);
return rc;
}
@@ -1326,14 +1329,14 @@ int smblib_set_prop_input_suspend(struct smb_charger *chg,
rc = vote(chg->usb_suspend_votable, USER_VOTER, (bool)val->intval, 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't vote to %s USB rc=%d\n",
+ smblib_err(chg, "Couldn't vote to %s USB rc=%d\n",
(bool)val->intval ? "suspend" : "resume", rc);
return rc;
}
rc = vote(chg->dc_suspend_votable, USER_VOTER, (bool)val->intval, 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't vote to %s DC rc=%d\n",
+ smblib_err(chg, "Couldn't vote to %s DC rc=%d\n",
(bool)val->intval ? "suspend" : "resume", rc);
return rc;
}
@@ -1390,7 +1393,7 @@ int smblib_get_prop_dc_present(struct smb_charger *chg,
rc = smblib_read(chg, DC_INT_RT_STS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read DC_INT_RT_STS_REG rc=%d\n",
+ smblib_err(chg, "Couldn't read DC_INT_RT_STS_REG rc=%d\n",
rc);
return rc;
}
@@ -1415,7 +1418,7 @@ int smblib_get_prop_dc_online(struct smb_charger *chg,
rc = smblib_read(chg, POWER_PATH_STATUS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read POWER_PATH_STATUS rc=%d\n",
+ smblib_err(chg, "Couldn't read POWER_PATH_STATUS rc=%d\n",
rc);
return rc;
}
@@ -1460,8 +1463,7 @@ int smblib_get_prop_usb_present(struct smb_charger *chg,
rc = smblib_read(chg, TYPE_C_STATUS_4_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_4 rc=%d\n",
- rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
return rc;
}
smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_4 = 0x%02x\n",
@@ -1485,7 +1487,7 @@ int smblib_get_prop_usb_online(struct smb_charger *chg,
rc = smblib_read(chg, POWER_PATH_STATUS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read POWER_PATH_STATUS rc=%d\n",
+ smblib_err(chg, "Couldn't read POWER_PATH_STATUS rc=%d\n",
rc);
return rc;
}
@@ -1592,8 +1594,7 @@ int smblib_get_prop_typec_cc_orientation(struct smb_charger *chg,
rc = smblib_read(chg, TYPE_C_STATUS_4_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_4 rc=%d\n",
- rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
return rc;
}
smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_4 = 0x%02x\n",
@@ -1627,7 +1628,7 @@ static int smblib_get_prop_ufp_mode(struct smb_charger *chg)
rc = smblib_read(chg, TYPE_C_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_1 rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_1 rc=%d\n", rc);
return POWER_SUPPLY_TYPEC_NONE;
}
smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_1 = 0x%02x\n", stat);
@@ -1655,7 +1656,7 @@ static int smblib_get_prop_dfp_mode(struct smb_charger *chg)
rc = smblib_read(chg, TYPE_C_STATUS_2_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_2 rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_2 rc=%d\n", rc);
return POWER_SUPPLY_TYPEC_NONE;
}
smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_2 = 0x%02x\n", stat);
@@ -1686,7 +1687,7 @@ int smblib_get_prop_typec_mode(struct smb_charger *chg,
rc = smblib_read(chg, TYPE_C_STATUS_4_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
val->intval = POWER_SUPPLY_TYPEC_NONE;
return rc;
}
@@ -1713,7 +1714,7 @@ int smblib_get_prop_typec_power_role(struct smb_charger *chg,
rc = smblib_read(chg, TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG, &ctrl);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_INTRPT_ENB_SOFTWARE_CTRL rc=%d\n",
+ smblib_err(chg, "Couldn't read TYPE_C_INTRPT_ENB_SOFTWARE_CTRL rc=%d\n",
rc);
return rc;
}
@@ -1737,7 +1738,7 @@ int smblib_get_prop_typec_power_role(struct smb_charger *chg,
break;
default:
val->intval = POWER_SUPPLY_TYPEC_PR_NONE;
- dev_err(chg->dev, "unsupported power role 0x%02lx\n",
+ smblib_err(chg, "unsupported power role 0x%02lx\n",
ctrl & (DFP_EN_CMD_BIT | UFP_EN_CMD_BIT));
return -EINVAL;
}
@@ -1766,7 +1767,7 @@ int smblib_get_prop_pd_in_hard_reset(struct smb_charger *chg,
rc = smblib_read(chg, TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG, &ctrl);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG rc=%d\n",
+ smblib_err(chg, "Couldn't read TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG rc=%d\n",
rc);
return rc;
}
@@ -1830,14 +1831,14 @@ int smblib_set_prop_typec_power_role(struct smb_charger *chg,
power_role = DFP_EN_CMD_BIT;
break;
default:
- dev_err(chg->dev, "power role %d not supported\n", val->intval);
+ smblib_err(chg, "power role %d not supported\n", val->intval);
return -EINVAL;
}
rc = smblib_masked_write(chg, TYPE_C_INTRPT_ENB_SOFTWARE_CTRL_REG,
TYPEC_POWER_ROLE_CMD_MASK, power_role);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't write 0x%02x to TYPE_C_INTRPT_ENB_SOFTWARE_CTRL rc=%d\n",
+ smblib_err(chg, "Couldn't write 0x%02x to TYPE_C_INTRPT_ENB_SOFTWARE_CTRL rc=%d\n",
power_role, rc);
return rc;
}
@@ -1854,7 +1855,7 @@ int smblib_set_prop_usb_voltage_min(struct smb_charger *chg,
rc = smblib_set_usb_pd_allowed_voltage(chg, min_uv,
chg->voltage_max_uv);
if (rc < 0) {
- dev_err(chg->dev, "invalid max voltage %duV rc=%d\n",
+ smblib_err(chg, "invalid max voltage %duV rc=%d\n",
val->intval, rc);
return rc;
}
@@ -1876,7 +1877,7 @@ int smblib_set_prop_usb_voltage_max(struct smb_charger *chg,
rc = smblib_set_usb_pd_allowed_voltage(chg, chg->voltage_min_uv,
max_uv);
if (rc < 0) {
- dev_err(chg->dev, "invalid min voltage %duV rc=%d\n",
+ smblib_err(chg, "invalid min voltage %duV rc=%d\n",
val->intval, rc);
return rc;
}
@@ -1895,7 +1896,7 @@ int smblib_set_prop_pd_active(struct smb_charger *chg,
bool pd_active = val->intval;
if (!get_effective_result(chg->pd_allowed_votable)) {
- dev_err(chg->dev, "PD is not allowed\n");
+ smblib_err(chg, "PD is not allowed\n");
return -EINVAL;
}
@@ -1909,7 +1910,7 @@ int smblib_set_prop_pd_active(struct smb_charger *chg,
*/
rc = smblib_read(chg, TYPE_C_STATUS_4_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
return rc;
}
@@ -1920,7 +1921,7 @@ int smblib_set_prop_pd_active(struct smb_charger *chg,
VCONN_EN_ORIENTATION_BIT,
orientation ? 0 : VCONN_EN_ORIENTATION_BIT);
if (rc < 0) {
- dev_err(chg->dev,
+ smblib_err(chg,
"Couldn't enable vconn on CC line rc=%d\n", rc);
return rc;
}
@@ -1931,7 +1932,7 @@ int smblib_set_prop_pd_active(struct smb_charger *chg,
TYPEC_SPARE_CFG_BIT,
pd_active ? TYPEC_SPARE_CFG_BIT : 0);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't change cc_out ctrl to %s rc=%d\n",
+ smblib_err(chg, "Couldn't change cc_out ctrl to %s rc=%d\n",
pd_active ? "SW" : "HW", rc);
return rc;
}
@@ -2030,7 +2031,7 @@ irqreturn_t smblib_handle_chg_state_change(int irq, void *data)
rc = smblib_read(chg, BATTERY_CHARGER_STATUS_1_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
+ smblib_err(chg, "Couldn't read BATTERY_CHARGER_STATUS_1 rc=%d\n",
rc);
return IRQ_HANDLED;
}
@@ -2085,7 +2086,7 @@ irqreturn_t smblib_handle_step_chg_soc_update_request(int irq, void *data)
rc = smblib_get_prop_batt_capacity(chg, &pval);
if (rc < 0)
- dev_err(chg->dev, "Couldn't get batt capacity rc=%d\n", rc);
+ smblib_err(chg, "Couldn't get batt capacity rc=%d\n", rc);
else
step_charge_soc_update(chg, pval.intval);
@@ -2134,7 +2135,7 @@ irqreturn_t smblib_handle_usb_plugin(int irq, void *data)
"dpdm-supply", NULL)) {
chg->dpdm_reg = devm_regulator_get(chg->dev, "dpdm");
if (IS_ERR(chg->dpdm_reg)) {
- dev_err(chg->dev, "Couldn't get dpdm regulator rc=%ld\n",
+ smblib_err(chg, "Couldn't get dpdm regulator rc=%ld\n",
PTR_ERR(chg->dpdm_reg));
chg->dpdm_reg = NULL;
}
@@ -2145,7 +2146,7 @@ irqreturn_t smblib_handle_usb_plugin(int irq, void *data)
rc = smblib_read(chg, USBIN_BASE + INT_RT_STS_OFFSET, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read USB_INT_RT_STS rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read USB_INT_RT_STS rc=%d\n", rc);
return IRQ_HANDLED;
}
@@ -2156,7 +2157,7 @@ irqreturn_t smblib_handle_usb_plugin(int irq, void *data)
smblib_dbg(chg, PR_MISC, "enabling DPDM regulator\n");
rc = regulator_enable(chg->dpdm_reg);
if (rc < 0)
- dev_err(chg->dev, "Couldn't enable dpdm regulator rc=%d\n",
+ smblib_err(chg, "Couldn't enable dpdm regulator rc=%d\n",
rc);
}
} else {
@@ -2164,7 +2165,7 @@ irqreturn_t smblib_handle_usb_plugin(int irq, void *data)
smblib_dbg(chg, PR_MISC, "disabling DPDM regulator\n");
rc = regulator_disable(chg->dpdm_reg);
if (rc < 0)
- dev_err(chg->dev, "Couldn't disable dpdm regulator rc=%d\n",
+ smblib_err(chg, "Couldn't disable dpdm regulator rc=%d\n",
rc);
}
}
@@ -2186,7 +2187,7 @@ irqreturn_t smblib_handle_icl_change(int irq, void *data)
rc = smblib_get_charge_param(chg, &chg->param.icl_stat, &icl_ma);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't get ICL status rc=%d\n", rc);
+ smblib_err(chg, "Couldn't get ICL status rc=%d\n", rc);
return IRQ_HANDLED;
}
@@ -2297,7 +2298,7 @@ static void smblib_handle_apsd_done(struct smb_charger *chg, bool rising)
rc = smblib_update_usb_type(chg);
if (rc < 0)
- dev_err(chg->dev, "Couldn't update usb type rc=%d\n", rc);
+ smblib_err(chg, "Couldn't update usb type rc=%d\n", rc);
smblib_dbg(chg, PR_INTERRUPT, "IRQ: apsd-done rising; %s detected\n",
apsd_result->name);
@@ -2312,7 +2313,7 @@ irqreturn_t smblib_handle_usb_source_change(int irq, void *data)
rc = smblib_read(chg, APSD_STATUS_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read APSD_STATUS rc=%d\n", rc);
+ smblib_err(chg, "Couldn't read APSD_STATUS rc=%d\n", rc);
return IRQ_HANDLED;
}
smblib_dbg(chg, PR_REGISTER, "APSD_STATUS = 0x%02x\n", stat);
@@ -2361,7 +2362,7 @@ static void typec_source_removal(struct smb_charger *chg)
rc = smblib_write(chg, USBIN_ADAPTER_ALLOW_CFG_REG,
USBIN_ADAPTER_ALLOW_5V_OR_9V_TO_12V);
if (rc < 0)
- dev_err(chg->dev, "Couldn't set USBIN_ADAPTER_ALLOW_5V_OR_9V_TO_12V rc=%d\n",
+ smblib_err(chg, "Couldn't set USBIN_ADAPTER_ALLOW_5V_OR_9V_TO_12V rc=%d\n",
rc);
chg->voltage_min_uv = MICRO_5V;
@@ -2370,12 +2371,12 @@ static void typec_source_removal(struct smb_charger *chg)
/* clear USB ICL vote for PD_VOTER */
rc = vote(chg->usb_icl_votable, PD_VOTER, false, 0);
if (rc < 0)
- dev_err(chg->dev, "Couldn't un-vote for USB ICL rc=%d\n", rc);
+ smblib_err(chg, "Couldn't un-vote for USB ICL rc=%d\n", rc);
/* clear USB ICL vote for USB_PSY_VOTER */
rc = vote(chg->usb_icl_votable, USB_PSY_VOTER, false, 0);
if (rc < 0)
- dev_err(chg->dev, "Couldn't un-vote for USB ICL rc=%d\n", rc);
+ smblib_err(chg, "Couldn't un-vote for USB ICL rc=%d\n", rc);
}
static void typec_source_insertion(struct smb_charger *chg)
@@ -2436,7 +2437,7 @@ static void smblib_handle_typec_insertion(struct smb_charger *chg,
if (rp == POWER_SUPPLY_TYPEC_SOURCE_HIGH
|| rp == POWER_SUPPLY_TYPEC_NON_COMPLIANT) {
vbus_cc_short = true;
- pr_err("Disabling PD and HVDCP, VBUS-CC shorted, rp = %d found\n",
+ smblib_err(chg, "Disabling PD and HVDCP, VBUS-CC shorted, rp = %d found\n",
rp);
}
}
@@ -2459,7 +2460,7 @@ static void smblib_handle_typec_debounce_done(struct smb_charger *chg,
rc = smblib_get_prop_typec_mode(chg, &pval);
if (rc < 0)
- dev_err(chg->dev, "Couldn't get prop typec mode rc=%d\n", rc);
+ smblib_err(chg, "Couldn't get prop typec mode rc=%d\n", rc);
smblib_dbg(chg, PR_INTERRUPT, "IRQ: debounce-done %s; Type-C %s detected\n",
rising ? "rising" : "falling",
@@ -2476,8 +2477,7 @@ irqreturn_t smblib_handle_usb_typec_change(int irq, void *data)
rc = smblib_read(chg, TYPE_C_STATUS_4_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_4 rc=%d\n",
- rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_4 rc=%d\n", rc);
return IRQ_HANDLED;
}
smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_4 = 0x%02x\n", stat);
@@ -2486,8 +2486,7 @@ irqreturn_t smblib_handle_usb_typec_change(int irq, void *data)
rc = smblib_read(chg, TYPE_C_STATUS_5_REG, &stat);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't read TYPE_C_STATUS_5 rc=%d\n",
- rc);
+ smblib_err(chg, "Couldn't read TYPE_C_STATUS_5 rc=%d\n", rc);
return IRQ_HANDLED;
}
smblib_dbg(chg, PR_REGISTER, "TYPE_C_STATUS_5 = 0x%02x\n", stat);
@@ -2551,7 +2550,7 @@ static void step_soc_req_work(struct work_struct *work)
rc = smblib_get_prop_batt_capacity(chg, &pval);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't get batt capacity rc=%d\n", rc);
+ smblib_err(chg, "Couldn't get batt capacity rc=%d\n", rc);
return;
}
@@ -2583,7 +2582,7 @@ static void smblib_pl_taper_work(struct work_struct *work)
rc = smblib_get_prop_batt_charge_type(chg, &pval);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't get batt charge type rc=%d\n", rc);
+ smblib_err(chg, "Couldn't get batt charge type rc=%d\n", rc);
goto done;
}
@@ -2805,14 +2804,14 @@ int smblib_init(struct smb_charger *chg)
case PARALLEL_MASTER:
rc = smblib_create_votables(chg);
if (rc < 0) {
- dev_err(chg->dev, "Couldn't create votables rc=%d\n",
+ smblib_err(chg, "Couldn't create votables rc=%d\n",
rc);
return rc;
}
rc = smblib_register_notifier(chg);
if (rc < 0) {
- dev_err(chg->dev,
+ smblib_err(chg,
"Couldn't register notifier rc=%d\n", rc);
return rc;
}
@@ -2827,7 +2826,7 @@ int smblib_init(struct smb_charger *chg)
case PARALLEL_SLAVE:
break;
default:
- dev_err(chg->dev, "Unsupported mode %d\n", chg->mode);
+ smblib_err(chg, "Unsupported mode %d\n", chg->mode);
return -EINVAL;
}
@@ -2844,7 +2843,7 @@ int smblib_deinit(struct smb_charger *chg)
case PARALLEL_SLAVE:
break;
default:
- dev_err(chg->dev, "Unsupported mode %d\n", chg->mode);
+ smblib_err(chg, "Unsupported mode %d\n", chg->mode);
return -EINVAL;
}
diff --git a/drivers/power/qcom-charger/smb-lib.h b/drivers/power/qcom-charger/smb-lib.h
index b84fa0924ef9..f167a9881ecc 100644
--- a/drivers/power/qcom-charger/smb-lib.h
+++ b/drivers/power/qcom-charger/smb-lib.h
@@ -116,6 +116,7 @@ struct smb_iio {
struct smb_charger {
struct device *dev;
+ char *name;
struct regmap *regmap;
struct smb_params param;
struct smb_iio iio;
diff --git a/drivers/power/qcom-charger/smb138x-charger.c b/drivers/power/qcom-charger/smb138x-charger.c
index e8ec2f49f7eb..816ac0713c66 100644
--- a/drivers/power/qcom-charger/smb138x-charger.c
+++ b/drivers/power/qcom-charger/smb138x-charger.c
@@ -1172,6 +1172,7 @@ static int smb138x_probe(struct platform_device *pdev)
chip->chg.dev = &pdev->dev;
chip->chg.debug_mask = &__debug_mask;
+ chip->chg.name = "SMB";
chip->chg.regmap = dev_get_regmap(chip->chg.dev->parent, NULL);
if (!chip->chg.regmap) {