aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/mfd/twl-core.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/mfd/twl-core.c b/drivers/mfd/twl-core.c
index e77e1ffd26a9..35275ba7096f 100644
--- a/drivers/mfd/twl-core.c
+++ b/drivers/mfd/twl-core.c
@@ -115,6 +115,12 @@
115#define twl_has_codec() false 115#define twl_has_codec() false
116#endif 116#endif
117 117
118#if defined(CONFIG_CHARGER_TWL4030) || defined(CONFIG_CHARGER_TWL4030_MODULE)
119#define twl_has_bci() true
120#else
121#define twl_has_bci() false
122#endif
123
118/* Triton Core internal information (BEGIN) */ 124/* Triton Core internal information (BEGIN) */
119 125
120/* Last - for index max*/ 126/* Last - for index max*/
@@ -826,6 +832,17 @@ add_children(struct twl4030_platform_data *pdata, unsigned long features)
826 return PTR_ERR(child); 832 return PTR_ERR(child);
827 } 833 }
828 834
835 if (twl_has_bci() && pdata->bci &&
836 !(features & (TPS_SUBSET | TWL5031))) {
837 child = add_child(3, "twl4030_bci",
838 pdata->bci, sizeof(*pdata->bci), false,
839 /* irq0 = CHG_PRES, irq1 = BCI */
840 pdata->irq_base + BCI_PRES_INTR_OFFSET,
841 pdata->irq_base + BCI_INTR_OFFSET);
842 if (IS_ERR(child))
843 return PTR_ERR(child);
844 }
845
829 return 0; 846 return 0;
830} 847}
831 848