aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/power/max8903_charger.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/power/max8903_charger.c')
-rw-r--r--drivers/power/max8903_charger.c22
1 files changed, 9 insertions, 13 deletions
diff --git a/drivers/power/max8903_charger.c b/drivers/power/max8903_charger.c
index 0a5b0e142788..6ec705f7a9d9 100644
--- a/drivers/power/max8903_charger.c
+++ b/drivers/power/max8903_charger.c
@@ -211,27 +211,23 @@ static int max8903_probe(struct platform_device *pdev)
211 } 211 }
212 212
213 if (pdata->dc_valid) { 213 if (pdata->dc_valid) {
214 if (pdata->dok && gpio_is_valid(pdata->dok) && 214 if (pdata->dok && gpio_is_valid(pdata->dok)) {
215 pdata->dcm && gpio_is_valid(pdata->dcm)) {
216 gpio = pdata->dok; /* PULL_UPed Interrupt */ 215 gpio = pdata->dok; /* PULL_UPed Interrupt */
217 ta_in = gpio_get_value(gpio) ? 0 : 1; 216 ta_in = gpio_get_value(gpio) ? 0 : 1;
217 } else {
218 dev_err(dev, "When DC is wired, DOK should be wired as well.\n");
219 return -EINVAL;
220 }
221 }
218 222
223 if (pdata->dcm) {
224 if (gpio_is_valid(pdata->dcm)) {
219 gpio = pdata->dcm; /* Output */ 225 gpio = pdata->dcm; /* Output */
220 gpio_set_value(gpio, ta_in); 226 gpio_set_value(gpio, ta_in);
221 } else { 227 } else {
222 dev_err(dev, "When DC is wired, DOK and DCM should" 228 dev_err(dev, "Invalid pin: dcm.\n");
223 " be wired as well.\n");
224 return -EINVAL; 229 return -EINVAL;
225 } 230 }
226 } else {
227 if (pdata->dcm) {
228 if (gpio_is_valid(pdata->dcm))
229 gpio_set_value(pdata->dcm, 0);
230 else {
231 dev_err(dev, "Invalid pin: dcm.\n");
232 return -EINVAL;
233 }
234 }
235 } 231 }
236 232
237 if (pdata->usb_valid) { 233 if (pdata->usb_valid) {