diff options
-rw-r--r-- | drivers/power/max8925_power.c | 8 | ||||
-rw-r--r-- | include/linux/mfd/max8925.h | 1 |
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/power/max8925_power.c b/drivers/power/max8925_power.c index 83b827cf004b..be2d563cb315 100644 --- a/drivers/power/max8925_power.c +++ b/drivers/power/max8925_power.c @@ -79,6 +79,7 @@ struct max8925_power_info { unsigned topoff_threshold:2; unsigned fast_charge:3; unsigned no_temp_support:1; + unsigned no_insert_detect:1; int (*set_charger) (int); }; @@ -365,8 +366,10 @@ static __devinit int max8925_init_charger(struct max8925_chip *chip, int ret; REQUEST_IRQ(MAX8925_IRQ_VCHG_DC_OVP, "ac-ovp"); - REQUEST_IRQ(MAX8925_IRQ_VCHG_DC_F, "ac-remove"); - REQUEST_IRQ(MAX8925_IRQ_VCHG_DC_R, "ac-insert"); + if (!info->no_insert_detect) { + REQUEST_IRQ(MAX8925_IRQ_VCHG_DC_F, "ac-remove"); + REQUEST_IRQ(MAX8925_IRQ_VCHG_DC_R, "ac-insert"); + } REQUEST_IRQ(MAX8925_IRQ_VCHG_USB_OVP, "usb-ovp"); REQUEST_IRQ(MAX8925_IRQ_VCHG_USB_F, "usb-remove"); REQUEST_IRQ(MAX8925_IRQ_VCHG_USB_R, "usb-insert"); @@ -481,6 +484,7 @@ static __devinit int max8925_power_probe(struct platform_device *pdev) info->fast_charge = pdata->fast_charge; info->set_charger = pdata->set_charger; info->no_temp_support = pdata->no_temp_support; + info->no_insert_detect = pdata->no_insert_detect; max8925_init_charger(chip, info); return 0; diff --git a/include/linux/mfd/max8925.h b/include/linux/mfd/max8925.h index 69ec8f0bd490..e742e044e2eb 100644 --- a/include/linux/mfd/max8925.h +++ b/include/linux/mfd/max8925.h @@ -224,6 +224,7 @@ struct max8925_power_pdata { unsigned topoff_threshold:2; unsigned fast_charge:3; /* charge current */ unsigned no_temp_support:1; /* set if no temperature detect */ + unsigned no_insert_detect:1; /* set if no ac insert detect */ }; /* |