Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
On Mon, 12 Oct 2015, Andrew F. Davis wrote: > On 10/05/2015 04:27 AM, Lee Jones wrote: > >On Mon, 05 Oct 2015, Lee Jones wrote: > > > >>On Thu, 01 Oct 2015, Andrew F. Davis wrote: > >> > >>>This patch adds support for TPS65912 mfd device. It provides > >>>communication through the I2C and SPI interfaces. It contains > >>>the following components: > >>> > >>> - Regulators > >>> - GPIO controller > >>> > >>>Signed-off-by: Andrew F. Davis > >>>--- > >>> drivers/mfd/Kconfig | 25 > >>> drivers/mfd/Makefile | 3 + > >>> drivers/mfd/tps65912-core.c | 108 ++ > >>> drivers/mfd/tps65912-i2c.c | 82 ++ > >>> drivers/mfd/tps65912-spi.c | 81 ++ > >>> include/linux/mfd/tps65912.h | 345 > >>> +++ > >>> 6 files changed, 644 insertions(+) > >>> create mode 100644 drivers/mfd/tps65912-core.c > >>> create mode 100644 drivers/mfd/tps65912-i2c.c > >>> create mode 100644 drivers/mfd/tps65912-spi.c > >>> create mode 100644 include/linux/mfd/tps65912.h > >> > >>Applied, thanks. > > > >Whoops, I forgot about the removal patch. > > > >For this patch: > > Acked-by: Lee Jones > > > >Can you break up the removal patch into subsystems as well? > > > > I can if you would like, but as I responded in the other patch I > think that will cause problems as the Kconfig symbols in the new > will allow the old to be compiled and this will break build. All > the removals may have to be brought in in a single patch, again > up to you. If the other Maintainers are happy, I'll just take the set through MFD and provide the necessaries. Just collect the Acks you need and I'll do the rest. > >>>diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > >>>index 9a8df8e..02b321f 100644 > >>>--- a/drivers/mfd/Kconfig > >>>+++ b/drivers/mfd/Kconfig > >>>@@ -1167,6 +1167,31 @@ config MFD_TPS65910 > >>> if you say yes here you get support for the TPS65910 series of > >>> Power Management chips. > >>> > >>>+config MFD_TPS65912 > >>>+ tristate > >>>+ select REGMAP > >>>+ select REGMAP_IRQ > >>>+ > >>>+config MFD_TPS65912_I2C > >>>+ tristate "TI TPS65912 Power Management chip with I2C" > >>>+ select MFD_TPS65912 > >>>+ select REGMAP_I2C > >>>+ depends on I2C > >>>+ depends on OF || COMPILE_TEST > >>>+ help > >>>+If you say yes here you get support for the TPS65912 series of > >>>+PM chips with I2C interface. > >>>+ > >>>+config MFD_TPS65912_SPI > >>>+ tristate "TI TPS65912 Power Management chip with SPI" > >>>+ select MFD_TPS65912 > >>>+ select REGMAP_SPI > >>>+ depends on SPI_MASTER > >>>+ depends on OF || COMPILE_TEST > >>>+ help > >>>+If you say yes here you get support for the TPS65912 series of > >>>+PM chips with SPI interface. > >>>+ > >>> config MFD_TPS80031 > >>> bool "TI TPS80031/TPS80032 Power Management chips" > >>> depends on I2C=y > >>>diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile > >>>index 004aa76..49c3530 100644 > >>>--- a/drivers/mfd/Makefile > >>>+++ b/drivers/mfd/Makefile > >>>@@ -69,6 +69,9 @@ obj-$(CONFIG_TPS6507X) += tps6507x.o > >>> obj-$(CONFIG_MFD_TPS65217) += tps65217.o > >>> obj-$(CONFIG_MFD_TPS65218) += tps65218.o > >>> obj-$(CONFIG_MFD_TPS65910) += tps65910.o > >>>+obj-$(CONFIG_MFD_TPS65912)+= tps65912-core.o > >>>+obj-$(CONFIG_MFD_TPS65912_I2C)+= tps65912-i2c.o > >>>+obj-$(CONFIG_MFD_TPS65912_SPI) += tps65912-spi.o > >>> obj-$(CONFIG_MFD_TPS80031) += tps80031.o > >>> obj-$(CONFIG_MENELAUS) += menelaus.o > >>> > >>>diff --git a/drivers/mfd/tps65912-core.c b/drivers/mfd/tps65912-core.c > >>>new file mode 100644 > >>>index 000..e787950 > >>>--- /dev/null > >>>+++ b/drivers/mfd/tps65912-core.c > >>>@@ -0,0 +1,108 @@ > >>>+/* > >>>+ * Core functions for TI TPS65912x PMIC > >>>+ * > >>>+ * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ > >>>+ * > >>>+ * Author: Andrew F. Davis > >>>+ * > >>>+ * This program is free software; you can redistribute it and/or > >>>+ * modify it under the terms of the GNU General Public License version 2 > >>>as > >>>+ * published by the Free Software Foundation. > >>>+ * > >>>+ * This program is distributed "as is" WITHOUT ANY WARRANTY of any > >>>+ * kind, whether expressed or implied; without even the implied warranty > >>>+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > >>>+ * GNU General Public License version 2 for more details. > >>>+ * > >>>+ * Based on the TPS65218 driver and the previous TPS65912 driver by > >>>+ * Margarita Olaya Cabrera > >>>+ */ > >>>+ > >>>+#include > >>>+#include > >>>+#include > >>>+ > >>>+#include > >>>+ > >>>+static const struct regmap_irq tps65912_irqs[] = { > >>>+ /* INT_STS IRQs */ > >>>+ REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), > >>>+ REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), > >>>+ REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
On 10/05/2015 04:27 AM, Lee Jones wrote: On Mon, 05 Oct 2015, Lee Jones wrote: On Thu, 01 Oct 2015, Andrew F. Davis wrote: This patch adds support for TPS65912 mfd device. It provides communication through the I2C and SPI interfaces. It contains the following components: - Regulators - GPIO controller Signed-off-by: Andrew F. Davis --- drivers/mfd/Kconfig | 25 drivers/mfd/Makefile | 3 + drivers/mfd/tps65912-core.c | 108 ++ drivers/mfd/tps65912-i2c.c | 82 ++ drivers/mfd/tps65912-spi.c | 81 ++ include/linux/mfd/tps65912.h | 345 +++ 6 files changed, 644 insertions(+) create mode 100644 drivers/mfd/tps65912-core.c create mode 100644 drivers/mfd/tps65912-i2c.c create mode 100644 drivers/mfd/tps65912-spi.c create mode 100644 include/linux/mfd/tps65912.h Applied, thanks. Whoops, I forgot about the removal patch. For this patch: Acked-by: Lee Jones Can you break up the removal patch into subsystems as well? I can if you would like, but as I responded in the other patch I think that will cause problems as the Kconfig symbols in the new will allow the old to be compiled and this will break build. All the removals may have to be brought in in a single patch, again up to you. diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 9a8df8e..02b321f 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -1167,6 +1167,31 @@ config MFD_TPS65910 if you say yes here you get support for the TPS65910 series of Power Management chips. +config MFD_TPS65912 + tristate + select REGMAP + select REGMAP_IRQ + +config MFD_TPS65912_I2C + tristate "TI TPS65912 Power Management chip with I2C" + select MFD_TPS65912 + select REGMAP_I2C + depends on I2C + depends on OF || COMPILE_TEST + help + If you say yes here you get support for the TPS65912 series of + PM chips with I2C interface. + +config MFD_TPS65912_SPI + tristate "TI TPS65912 Power Management chip with SPI" + select MFD_TPS65912 + select REGMAP_SPI + depends on SPI_MASTER + depends on OF || COMPILE_TEST + help + If you say yes here you get support for the TPS65912 series of + PM chips with SPI interface. + config MFD_TPS80031 bool "TI TPS80031/TPS80032 Power Management chips" depends on I2C=y diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 004aa76..49c3530 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -69,6 +69,9 @@ obj-$(CONFIG_TPS6507X)+= tps6507x.o obj-$(CONFIG_MFD_TPS65217)+= tps65217.o obj-$(CONFIG_MFD_TPS65218)+= tps65218.o obj-$(CONFIG_MFD_TPS65910)+= tps65910.o +obj-$(CONFIG_MFD_TPS65912) += tps65912-core.o +obj-$(CONFIG_MFD_TPS65912_I2C) += tps65912-i2c.o +obj-$(CONFIG_MFD_TPS65912_SPI) += tps65912-spi.o obj-$(CONFIG_MFD_TPS80031)+= tps80031.o obj-$(CONFIG_MENELAUS)+= menelaus.o diff --git a/drivers/mfd/tps65912-core.c b/drivers/mfd/tps65912-core.c new file mode 100644 index 000..e787950 --- /dev/null +++ b/drivers/mfd/tps65912-core.c @@ -0,0 +1,108 @@ +/* + * Core functions for TI TPS65912x PMIC + * + * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ + * + * Author: Andrew F. Davis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed "as is" WITHOUT ANY WARRANTY of any + * kind, whether expressed or implied; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License version 2 for more details. + * + * Based on the TPS65218 driver and the previous TPS65912 driver by + * Margarita Olaya Cabrera + */ + +#include +#include +#include + +#include + +static const struct regmap_irq tps65912_irqs[] = { + /* INT_STS IRQs */ + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), + REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912_INT_STS_PWRON), + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON_LP, 0, TPS65912_INT_STS_PWRON_LP), + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_R, 0, TPS65912_INT_STS_PWRHOLD_R), + REGMAP_IRQ_REG(TPS65912_IRQ_HOTDIE, 0, TPS65912_INT_STS_HOTDIE), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_R, 0, TPS65912_INT_STS_GPIO1_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_F, 0, TPS65912_INT_STS_GPIO1_F), + /* INT_STS2 IRQs */ + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_R, 1, TPS65912_INT_STS2_GPIO2_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_F, 1, TPS65912_INT_STS2_GPIO2_F), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_R, 1, TPS65912_INT_STS2_GPIO3_R), + REGMAP_IRQ_RE
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
On Mon, 05 Oct 2015, Lee Jones wrote: > On Thu, 01 Oct 2015, Andrew F. Davis wrote: > > > This patch adds support for TPS65912 mfd device. It provides > > communication through the I2C and SPI interfaces. It contains > > the following components: > > > > - Regulators > > - GPIO controller > > > > Signed-off-by: Andrew F. Davis > > --- > > drivers/mfd/Kconfig | 25 > > drivers/mfd/Makefile | 3 + > > drivers/mfd/tps65912-core.c | 108 ++ > > drivers/mfd/tps65912-i2c.c | 82 ++ > > drivers/mfd/tps65912-spi.c | 81 ++ > > include/linux/mfd/tps65912.h | 345 > > +++ > > 6 files changed, 644 insertions(+) > > create mode 100644 drivers/mfd/tps65912-core.c > > create mode 100644 drivers/mfd/tps65912-i2c.c > > create mode 100644 drivers/mfd/tps65912-spi.c > > create mode 100644 include/linux/mfd/tps65912.h > > Applied, thanks. Whoops, I forgot about the removal patch. For this patch: Acked-by: Lee Jones Can you break up the removal patch into subsystems as well? > > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > > index 9a8df8e..02b321f 100644 > > --- a/drivers/mfd/Kconfig > > +++ b/drivers/mfd/Kconfig > > @@ -1167,6 +1167,31 @@ config MFD_TPS65910 > > if you say yes here you get support for the TPS65910 series of > > Power Management chips. > > > > +config MFD_TPS65912 > > + tristate > > + select REGMAP > > + select REGMAP_IRQ > > + > > +config MFD_TPS65912_I2C > > + tristate "TI TPS65912 Power Management chip with I2C" > > + select MFD_TPS65912 > > + select REGMAP_I2C > > + depends on I2C > > + depends on OF || COMPILE_TEST > > + help > > + If you say yes here you get support for the TPS65912 series of > > + PM chips with I2C interface. > > + > > +config MFD_TPS65912_SPI > > + tristate "TI TPS65912 Power Management chip with SPI" > > + select MFD_TPS65912 > > + select REGMAP_SPI > > + depends on SPI_MASTER > > + depends on OF || COMPILE_TEST > > + help > > + If you say yes here you get support for the TPS65912 series of > > + PM chips with SPI interface. > > + > > config MFD_TPS80031 > > bool "TI TPS80031/TPS80032 Power Management chips" > > depends on I2C=y > > diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile > > index 004aa76..49c3530 100644 > > --- a/drivers/mfd/Makefile > > +++ b/drivers/mfd/Makefile > > @@ -69,6 +69,9 @@ obj-$(CONFIG_TPS6507X)+= tps6507x.o > > obj-$(CONFIG_MFD_TPS65217) += tps65217.o > > obj-$(CONFIG_MFD_TPS65218) += tps65218.o > > obj-$(CONFIG_MFD_TPS65910) += tps65910.o > > +obj-$(CONFIG_MFD_TPS65912) += tps65912-core.o > > +obj-$(CONFIG_MFD_TPS65912_I2C) += tps65912-i2c.o > > +obj-$(CONFIG_MFD_TPS65912_SPI) += tps65912-spi.o > > obj-$(CONFIG_MFD_TPS80031) += tps80031.o > > obj-$(CONFIG_MENELAUS) += menelaus.o > > > > diff --git a/drivers/mfd/tps65912-core.c b/drivers/mfd/tps65912-core.c > > new file mode 100644 > > index 000..e787950 > > --- /dev/null > > +++ b/drivers/mfd/tps65912-core.c > > @@ -0,0 +1,108 @@ > > +/* > > + * Core functions for TI TPS65912x PMIC > > + * > > + * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ > > + * > > + * Author: Andrew F. Davis > > + * > > + * This program is free software; you can redistribute it and/or > > + * modify it under the terms of the GNU General Public License version 2 as > > + * published by the Free Software Foundation. > > + * > > + * This program is distributed "as is" WITHOUT ANY WARRANTY of any > > + * kind, whether expressed or implied; without even the implied warranty > > + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > > + * GNU General Public License version 2 for more details. > > + * > > + * Based on the TPS65218 driver and the previous TPS65912 driver by > > + * Margarita Olaya Cabrera > > + */ > > + > > +#include > > +#include > > +#include > > + > > +#include > > + > > +static const struct regmap_irq tps65912_irqs[] = { > > + /* INT_STS IRQs */ > > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), > > + REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), > > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912_INT_STS_PWRON), > > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON_LP, 0, TPS65912_INT_STS_PWRON_LP), > > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_R, 0, TPS65912_INT_STS_PWRHOLD_R), > > + REGMAP_IRQ_REG(TPS65912_IRQ_HOTDIE, 0, TPS65912_INT_STS_HOTDIE), > > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_R, 0, TPS65912_INT_STS_GPIO1_R), > > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_F, 0, TPS65912_INT_STS_GPIO1_F), > > + /* INT_STS2 IRQs */ > > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_R, 1, TPS65912_INT_STS2_GPIO2_R), > > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_F, 1, TPS65912_INT_STS2_GPIO2_F), > > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_R, 1, TPS65912_INT_STS2_GPIO3_R), > > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_F, 1
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
On Thu, 01 Oct 2015, Andrew F. Davis wrote: > This patch adds support for TPS65912 mfd device. It provides > communication through the I2C and SPI interfaces. It contains > the following components: > > - Regulators > - GPIO controller > > Signed-off-by: Andrew F. Davis > --- > drivers/mfd/Kconfig | 25 > drivers/mfd/Makefile | 3 + > drivers/mfd/tps65912-core.c | 108 ++ > drivers/mfd/tps65912-i2c.c | 82 ++ > drivers/mfd/tps65912-spi.c | 81 ++ > include/linux/mfd/tps65912.h | 345 > +++ > 6 files changed, 644 insertions(+) > create mode 100644 drivers/mfd/tps65912-core.c > create mode 100644 drivers/mfd/tps65912-i2c.c > create mode 100644 drivers/mfd/tps65912-spi.c > create mode 100644 include/linux/mfd/tps65912.h Applied, thanks. > diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig > index 9a8df8e..02b321f 100644 > --- a/drivers/mfd/Kconfig > +++ b/drivers/mfd/Kconfig > @@ -1167,6 +1167,31 @@ config MFD_TPS65910 > if you say yes here you get support for the TPS65910 series of > Power Management chips. > > +config MFD_TPS65912 > + tristate > + select REGMAP > + select REGMAP_IRQ > + > +config MFD_TPS65912_I2C > + tristate "TI TPS65912 Power Management chip with I2C" > + select MFD_TPS65912 > + select REGMAP_I2C > + depends on I2C > + depends on OF || COMPILE_TEST > + help > + If you say yes here you get support for the TPS65912 series of > + PM chips with I2C interface. > + > +config MFD_TPS65912_SPI > + tristate "TI TPS65912 Power Management chip with SPI" > + select MFD_TPS65912 > + select REGMAP_SPI > + depends on SPI_MASTER > + depends on OF || COMPILE_TEST > + help > + If you say yes here you get support for the TPS65912 series of > + PM chips with SPI interface. > + > config MFD_TPS80031 > bool "TI TPS80031/TPS80032 Power Management chips" > depends on I2C=y > diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile > index 004aa76..49c3530 100644 > --- a/drivers/mfd/Makefile > +++ b/drivers/mfd/Makefile > @@ -69,6 +69,9 @@ obj-$(CONFIG_TPS6507X) += tps6507x.o > obj-$(CONFIG_MFD_TPS65217) += tps65217.o > obj-$(CONFIG_MFD_TPS65218) += tps65218.o > obj-$(CONFIG_MFD_TPS65910) += tps65910.o > +obj-$(CONFIG_MFD_TPS65912) += tps65912-core.o > +obj-$(CONFIG_MFD_TPS65912_I2C) += tps65912-i2c.o > +obj-$(CONFIG_MFD_TPS65912_SPI) += tps65912-spi.o > obj-$(CONFIG_MFD_TPS80031) += tps80031.o > obj-$(CONFIG_MENELAUS) += menelaus.o > > diff --git a/drivers/mfd/tps65912-core.c b/drivers/mfd/tps65912-core.c > new file mode 100644 > index 000..e787950 > --- /dev/null > +++ b/drivers/mfd/tps65912-core.c > @@ -0,0 +1,108 @@ > +/* > + * Core functions for TI TPS65912x PMIC > + * > + * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ > + * > + * Author: Andrew F. Davis > + * > + * This program is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License version 2 as > + * published by the Free Software Foundation. > + * > + * This program is distributed "as is" WITHOUT ANY WARRANTY of any > + * kind, whether expressed or implied; without even the implied warranty > + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License version 2 for more details. > + * > + * Based on the TPS65218 driver and the previous TPS65912 driver by > + * Margarita Olaya Cabrera > + */ > + > +#include > +#include > +#include > + > +#include > + > +static const struct regmap_irq tps65912_irqs[] = { > + /* INT_STS IRQs */ > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), > + REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912_INT_STS_PWRON), > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON_LP, 0, TPS65912_INT_STS_PWRON_LP), > + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_R, 0, TPS65912_INT_STS_PWRHOLD_R), > + REGMAP_IRQ_REG(TPS65912_IRQ_HOTDIE, 0, TPS65912_INT_STS_HOTDIE), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_R, 0, TPS65912_INT_STS_GPIO1_R), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_F, 0, TPS65912_INT_STS_GPIO1_F), > + /* INT_STS2 IRQs */ > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_R, 1, TPS65912_INT_STS2_GPIO2_R), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_F, 1, TPS65912_INT_STS2_GPIO2_F), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_R, 1, TPS65912_INT_STS2_GPIO3_R), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_F, 1, TPS65912_INT_STS2_GPIO3_F), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_R, 1, TPS65912_INT_STS2_GPIO4_R), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_F, 1, TPS65912_INT_STS2_GPIO4_F), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_R, 1, TPS65912_INT_STS2_GPIO5_R), > + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_F, 1, TPS65912_INT_STS2_GPIO5_F), > +
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
On 10/01/2015 03:37 PM, Andrew F. Davis wrote: This patch adds support for TPS65912 mfd device. It provides communication through the I2C and SPI interfaces. It contains the following components: - Regulators - GPIO controller Signed-off-by: Andrew F. Davis Forgot to mention, as the kbuild bot figured out, this patch needs b4fe8ba ("regmap: Add generic macro to define regmap_irq") from Lee Jones' tree to build. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
Hi Andrew, [auto build test results on v4.3-rc3 -- if it's inappropriate base, please ignore] config: xtensa-allyesconfig (attached as .config) reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout d617dea974adf7dc262f2d49dea24a673e0403e2 # save the attached .config to linux build tree make.cross ARCH=xtensa All warnings (new ones prefixed by >>): drivers/mfd/tps65912-core.c:29:2: error: implicit declaration of function 'REGMAP_IRQ_REG' [-Werror=implicit-function-declaration] REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), ^ >> drivers/mfd/tps65912-core.c:29:2: warning: missing braces around initializer >> [-Wmissing-braces] >> drivers/mfd/tps65912-core.c:29:2: warning: (near initialization for >> 'tps65912_irqs[0]') [-Wmissing-braces] drivers/mfd/tps65912-core.c:29:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:29:2: error: (near initialization for 'tps65912_irqs[0].reg_offset') drivers/mfd/tps65912-core.c:30:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), ^ drivers/mfd/tps65912-core.c:30:2: error: (near initialization for 'tps65912_irqs[0].mask') drivers/mfd/tps65912-core.c:31:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912_INT_STS_PWRON), ^ drivers/mfd/tps65912-core.c:31:2: error: (near initialization for 'tps65912_irqs[1].reg_offset') drivers/mfd/tps65912-core.c:32:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PWRON_LP, 0, TPS65912_INT_STS_PWRON_LP), ^ drivers/mfd/tps65912-core.c:32:2: error: (near initialization for 'tps65912_irqs[1].mask') drivers/mfd/tps65912-core.c:33:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_R, 0, TPS65912_INT_STS_PWRHOLD_R), ^ drivers/mfd/tps65912-core.c:33:2: error: (near initialization for 'tps65912_irqs[2].reg_offset') drivers/mfd/tps65912-core.c:34:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_HOTDIE, 0, TPS65912_INT_STS_HOTDIE), ^ drivers/mfd/tps65912-core.c:34:2: error: (near initialization for 'tps65912_irqs[2].mask') drivers/mfd/tps65912-core.c:35:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_R, 0, TPS65912_INT_STS_GPIO1_R), ^ drivers/mfd/tps65912-core.c:35:2: error: (near initialization for 'tps65912_irqs[3].reg_offset') drivers/mfd/tps65912-core.c:36:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_F, 0, TPS65912_INT_STS_GPIO1_F), ^ drivers/mfd/tps65912-core.c:36:2: error: (near initialization for 'tps65912_irqs[3].mask') drivers/mfd/tps65912-core.c:38:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_R, 1, TPS65912_INT_STS2_GPIO2_R), ^ drivers/mfd/tps65912-core.c:38:2: error: (near initialization for 'tps65912_irqs[4].reg_offset') drivers/mfd/tps65912-core.c:39:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_F, 1, TPS65912_INT_STS2_GPIO2_F), ^ drivers/mfd/tps65912-core.c:39:2: error: (near initialization for 'tps65912_irqs[4].mask') drivers/mfd/tps65912-core.c:40:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_R, 1, TPS65912_INT_STS2_GPIO3_R), ^ drivers/mfd/tps65912-core.c:40:2: error: (near initialization for 'tps65912_irqs[5].reg_offset') drivers/mfd/tps65912-core.c:41:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_F, 1, TPS65912_INT_STS2_GPIO3_F), ^ drivers/mfd/tps65912-core.c:41:2: error: (near initialization for 'tps65912_irqs[5].mask') drivers/mfd/tps65912-core.c:42:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_R, 1, TPS65912_INT_STS2_GPIO4_R), ^ drivers/mfd/tps65912-core.c:42:2: error: (near initialization for 'tps65912_irqs[6].reg_offset') drivers/mfd/tps65912-core.c:43:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_F, 1, TPS65912_INT_STS2_GPIO4_F), ^ drivers/mfd/tps65912-core.c:43:2: error: (near initialization for 'tps65912_irqs[6].mask') drivers/mfd/tps65912-core.c:44:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_R, 1, TPS65912_INT_STS2_GPIO5_R), ^ drivers/mfd/tps65912-core.c:44:2: error: (near initialization for 'tps65912_irqs[7].reg_offset') drivers/mfd/tps65912-core.c:45:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_F, 1, TPS65912_INT_STS2_GPIO5_F), ^ drivers/mfd/tps65912-core.c:45:2: error: (near initialization for 'tps65912_irqs[7].mask') drivers/mfd/tps65912-c
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
Hi Andrew, [auto build test results on v4.3-rc3 -- if it's inappropriate base, please ignore] config: tile-allyesconfig (attached as .config) reproduce: wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout d617dea974adf7dc262f2d49dea24a673e0403e2 # save the attached .config to linux build tree make.cross ARCH=tile All warnings (new ones prefixed by >>): drivers/mfd/tps65912-core.c:29:2: error: implicit declaration of function 'REGMAP_IRQ_REG' drivers/mfd/tps65912-core.c:29:2: warning: missing braces around initializer >> drivers/mfd/tps65912-core.c:29:2: warning: (near initialization for drivers/mfd/tps65912-core.c:29:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:29:2: error: (near initialization for drivers/mfd/tps65912-core.c:30:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:30:2: error: (near initialization for drivers/mfd/tps65912-core.c:31:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:31:2: error: (near initialization for drivers/mfd/tps65912-core.c:32:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:32:2: error: (near initialization for drivers/mfd/tps65912-core.c:33:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:33:2: error: (near initialization for drivers/mfd/tps65912-core.c:34:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:34:2: error: (near initialization for drivers/mfd/tps65912-core.c:35:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:35:2: error: (near initialization for drivers/mfd/tps65912-core.c:36:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:36:2: error: (near initialization for drivers/mfd/tps65912-core.c:38:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:38:2: error: (near initialization for drivers/mfd/tps65912-core.c:39:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:39:2: error: (near initialization for drivers/mfd/tps65912-core.c:40:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:40:2: error: (near initialization for drivers/mfd/tps65912-core.c:41:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:41:2: error: (near initialization for drivers/mfd/tps65912-core.c:42:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:42:2: error: (near initialization for drivers/mfd/tps65912-core.c:43:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:43:2: error: (near initialization for drivers/mfd/tps65912-core.c:44:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:44:2: error: (near initialization for drivers/mfd/tps65912-core.c:45:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:45:2: error: (near initialization for drivers/mfd/tps65912-core.c:47:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:47:2: error: (near initialization for drivers/mfd/tps65912-core.c:48:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:48:2: error: (near initialization for drivers/mfd/tps65912-core.c:49:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:49:2: error: (near initialization for drivers/mfd/tps65912-core.c:50:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:50:2: error: (near initialization for drivers/mfd/tps65912-core.c:51:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:51:2: error: (near initialization for drivers/mfd/tps65912-core.c:52:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:52:2: error: (near initialization for drivers/mfd/tps65912-core.c:53:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:53:2: error: (near initialization for drivers/mfd/tps65912-core.c:54:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:54:2: error: (near initialization for drivers/mfd/tps65912-core.c:56:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:56:2: error: (near initialization for drivers/mfd/tps65912-core.c:57:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:57:2: error: (near initialization for drivers/mfd/tps65912-core.c:58:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:58:2: error: (near initialization for drivers/mfd/tps65912-core.c:59:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:59:2: error: (near initialization for drivers/mfd/tps65912-core.c:60:2: error: initializer element is not constant
Re: [PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
Hi Andrew, [auto build test results on v4.3-rc3 -- if it's inappropriate base, please ignore] config: x86_64-allmodconfig (attached as .config) reproduce: git checkout d617dea974adf7dc262f2d49dea24a673e0403e2 # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): >> drivers/mfd/tps65912-core.c:29:2: error: implicit declaration of function >> 'REGMAP_IRQ_REG' [-Werror=implicit-function-declaration] REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), ^ >> drivers/mfd/tps65912-core.c:29:2: error: initializer element is not constant drivers/mfd/tps65912-core.c:29:2: note: (near initialization for 'tps65912_irqs[0].reg_offset') drivers/mfd/tps65912-core.c:30:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), ^ drivers/mfd/tps65912-core.c:30:2: note: (near initialization for 'tps65912_irqs[0].mask') drivers/mfd/tps65912-core.c:31:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912_INT_STS_PWRON), ^ drivers/mfd/tps65912-core.c:31:2: note: (near initialization for 'tps65912_irqs[1].reg_offset') drivers/mfd/tps65912-core.c:32:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PWRON_LP, 0, TPS65912_INT_STS_PWRON_LP), ^ drivers/mfd/tps65912-core.c:32:2: note: (near initialization for 'tps65912_irqs[1].mask') drivers/mfd/tps65912-core.c:33:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_R, 0, TPS65912_INT_STS_PWRHOLD_R), ^ drivers/mfd/tps65912-core.c:33:2: note: (near initialization for 'tps65912_irqs[2].reg_offset') drivers/mfd/tps65912-core.c:34:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_HOTDIE, 0, TPS65912_INT_STS_HOTDIE), ^ drivers/mfd/tps65912-core.c:34:2: note: (near initialization for 'tps65912_irqs[2].mask') drivers/mfd/tps65912-core.c:35:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_R, 0, TPS65912_INT_STS_GPIO1_R), ^ drivers/mfd/tps65912-core.c:35:2: note: (near initialization for 'tps65912_irqs[3].reg_offset') drivers/mfd/tps65912-core.c:36:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_F, 0, TPS65912_INT_STS_GPIO1_F), ^ drivers/mfd/tps65912-core.c:36:2: note: (near initialization for 'tps65912_irqs[3].mask') drivers/mfd/tps65912-core.c:38:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_R, 1, TPS65912_INT_STS2_GPIO2_R), ^ drivers/mfd/tps65912-core.c:38:2: note: (near initialization for 'tps65912_irqs[4].reg_offset') drivers/mfd/tps65912-core.c:39:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_F, 1, TPS65912_INT_STS2_GPIO2_F), ^ drivers/mfd/tps65912-core.c:39:2: note: (near initialization for 'tps65912_irqs[4].mask') drivers/mfd/tps65912-core.c:40:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_R, 1, TPS65912_INT_STS2_GPIO3_R), ^ drivers/mfd/tps65912-core.c:40:2: note: (near initialization for 'tps65912_irqs[5].reg_offset') drivers/mfd/tps65912-core.c:41:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_F, 1, TPS65912_INT_STS2_GPIO3_F), ^ drivers/mfd/tps65912-core.c:41:2: note: (near initialization for 'tps65912_irqs[5].mask') drivers/mfd/tps65912-core.c:42:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_R, 1, TPS65912_INT_STS2_GPIO4_R), ^ drivers/mfd/tps65912-core.c:42:2: note: (near initialization for 'tps65912_irqs[6].reg_offset') drivers/mfd/tps65912-core.c:43:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_F, 1, TPS65912_INT_STS2_GPIO4_F), ^ drivers/mfd/tps65912-core.c:43:2: note: (near initialization for 'tps65912_irqs[6].mask') drivers/mfd/tps65912-core.c:44:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_R, 1, TPS65912_INT_STS2_GPIO5_R), ^ drivers/mfd/tps65912-core.c:44:2: note: (near initialization for 'tps65912_irqs[7].reg_offset') drivers/mfd/tps65912-core.c:45:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_F, 1, TPS65912_INT_STS2_GPIO5_F), ^ drivers/mfd/tps65912-core.c:45:2: note: (near initialization for 'tps65912_irqs[7].mask') drivers/mfd/tps65912-core.c:47:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PGOOD_DCDC1, 2, TPS65912_INT_STS3_PGOOD_DCDC1), ^ drivers/mfd/tps65912-core.c:47:2: note: (near initialization for 'tps65912_irqs[8].reg_offset') drivers/mfd/tps65912-core.c:48:2: error: initializer element is not constant REGMAP_IRQ_REG(TPS65912_IRQ_PGOOD_DCDC2, 2, TPS65912_INT
[PATCH v4 3/5] mfd: tps65912: Add driver for the TPS65912 PMIC
This patch adds support for TPS65912 mfd device. It provides communication through the I2C and SPI interfaces. It contains the following components: - Regulators - GPIO controller Signed-off-by: Andrew F. Davis --- drivers/mfd/Kconfig | 25 drivers/mfd/Makefile | 3 + drivers/mfd/tps65912-core.c | 108 ++ drivers/mfd/tps65912-i2c.c | 82 ++ drivers/mfd/tps65912-spi.c | 81 ++ include/linux/mfd/tps65912.h | 345 +++ 6 files changed, 644 insertions(+) create mode 100644 drivers/mfd/tps65912-core.c create mode 100644 drivers/mfd/tps65912-i2c.c create mode 100644 drivers/mfd/tps65912-spi.c create mode 100644 include/linux/mfd/tps65912.h diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig index 9a8df8e..02b321f 100644 --- a/drivers/mfd/Kconfig +++ b/drivers/mfd/Kconfig @@ -1167,6 +1167,31 @@ config MFD_TPS65910 if you say yes here you get support for the TPS65910 series of Power Management chips. +config MFD_TPS65912 + tristate + select REGMAP + select REGMAP_IRQ + +config MFD_TPS65912_I2C + tristate "TI TPS65912 Power Management chip with I2C" + select MFD_TPS65912 + select REGMAP_I2C + depends on I2C + depends on OF || COMPILE_TEST + help + If you say yes here you get support for the TPS65912 series of + PM chips with I2C interface. + +config MFD_TPS65912_SPI + tristate "TI TPS65912 Power Management chip with SPI" + select MFD_TPS65912 + select REGMAP_SPI + depends on SPI_MASTER + depends on OF || COMPILE_TEST + help + If you say yes here you get support for the TPS65912 series of + PM chips with SPI interface. + config MFD_TPS80031 bool "TI TPS80031/TPS80032 Power Management chips" depends on I2C=y diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile index 004aa76..49c3530 100644 --- a/drivers/mfd/Makefile +++ b/drivers/mfd/Makefile @@ -69,6 +69,9 @@ obj-$(CONFIG_TPS6507X)+= tps6507x.o obj-$(CONFIG_MFD_TPS65217) += tps65217.o obj-$(CONFIG_MFD_TPS65218) += tps65218.o obj-$(CONFIG_MFD_TPS65910) += tps65910.o +obj-$(CONFIG_MFD_TPS65912) += tps65912-core.o +obj-$(CONFIG_MFD_TPS65912_I2C) += tps65912-i2c.o +obj-$(CONFIG_MFD_TPS65912_SPI) += tps65912-spi.o obj-$(CONFIG_MFD_TPS80031) += tps80031.o obj-$(CONFIG_MENELAUS) += menelaus.o diff --git a/drivers/mfd/tps65912-core.c b/drivers/mfd/tps65912-core.c new file mode 100644 index 000..e787950 --- /dev/null +++ b/drivers/mfd/tps65912-core.c @@ -0,0 +1,108 @@ +/* + * Core functions for TI TPS65912x PMIC + * + * Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/ + * + * Author: Andrew F. Davis + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed "as is" WITHOUT ANY WARRANTY of any + * kind, whether expressed or implied; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License version 2 for more details. + * + * Based on the TPS65218 driver and the previous TPS65912 driver by + * Margarita Olaya Cabrera + */ + +#include +#include +#include + +#include + +static const struct regmap_irq tps65912_irqs[] = { + /* INT_STS IRQs */ + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_F, 0, TPS65912_INT_STS_PWRHOLD_F), + REGMAP_IRQ_REG(TPS65912_IRQ_VMON, 0, TPS65912_INT_STS_VMON), + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON, 0, TPS65912_INT_STS_PWRON), + REGMAP_IRQ_REG(TPS65912_IRQ_PWRON_LP, 0, TPS65912_INT_STS_PWRON_LP), + REGMAP_IRQ_REG(TPS65912_IRQ_PWRHOLD_R, 0, TPS65912_INT_STS_PWRHOLD_R), + REGMAP_IRQ_REG(TPS65912_IRQ_HOTDIE, 0, TPS65912_INT_STS_HOTDIE), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_R, 0, TPS65912_INT_STS_GPIO1_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO1_F, 0, TPS65912_INT_STS_GPIO1_F), + /* INT_STS2 IRQs */ + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_R, 1, TPS65912_INT_STS2_GPIO2_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO2_F, 1, TPS65912_INT_STS2_GPIO2_F), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_R, 1, TPS65912_INT_STS2_GPIO3_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO3_F, 1, TPS65912_INT_STS2_GPIO3_F), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_R, 1, TPS65912_INT_STS2_GPIO4_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO4_F, 1, TPS65912_INT_STS2_GPIO4_F), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_R, 1, TPS65912_INT_STS2_GPIO5_R), + REGMAP_IRQ_REG(TPS65912_IRQ_GPIO5_F, 1, TPS65912_INT_STS2_GPIO5_F), + /* INT_STS3 IRQs */ + REGMAP_IRQ_REG(TPS65912_IRQ_PGOOD_DCDC1, 2, TPS65912_INT_STS3_PGOOD_DCDC1), + REGMAP_IRQ_REG(TPS65912_IRQ_PGOOD_DCDC2, 2, TPS65912_INT_STS3_PGOOD_DCDC2), + REGMAP_IRQ_REG(TPS65912