[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6d82dca4-3ffe-4c51-9f74-cd6cfbac7f7a@baylibre.com>
Date: Mon, 26 Feb 2024 12:07:13 +0100
From: Julien Panis <jpanis@...libre.com>
To: Bhargav Raviprakash <bhargav.r@...s.com>, linux-kernel@...r.kernel.org
Cc: m.nirmaladevi@...s.com, lee@...nel.org, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, conor+dt@...nel.org,
devicetree@...r.kernel.org, arnd@...db.de, gregkh@...uxfoundation.org,
lgirdwood@...il.com, broonie@...nel.org, linus.walleij@...aro.org,
linux-gpio@...r.kernel.org, linux-arm-kernel@...ts.infradead.org, nm@...com,
vigneshr@...com, kristo@...nel.org
Subject: Re: [PATCH v2 01/14] mfd: tps6594: Add register definitions for TI
TPS65224 PMIC
Hi Bhargav.
Thanks for the series.
On 2/23/24 10:36, Bhargav Raviprakash wrote:
> From: Nirmala Devi Mal Nadar <m.nirmaladevi@...s.com>
>
> Extend TPS6594 PMIC register and field definitions to support TPS65224
> power management IC.
>
> TPS65224 is software compatible to TPS6594 and can re-use many of the
> same definitions, new definitions are added to support additional
> controls available on TPS65224.
>
> Signed-off-by: Nirmala Devi Mal Nadar <m.nirmaladevi@...s.com>
> Signed-off-by: Bhargav Raviprakash <bhargav.r@...s.com>
> ---
> include/linux/mfd/tps6594.h | 354 ++++++++++++++++++++++++++++++++++--
> 1 file changed, 342 insertions(+), 12 deletions(-)
[...]
> +/* IRQs */
> +enum tps65224_irqs {
> + /* INT_BUCK register */
> + TPS65224_IRQ_BUCK1_UVOV,
> + TPS65224_IRQ_BUCK2_UVOV,
> + TPS65224_IRQ_BUCK3_UVOV,
> + TPS65224_IRQ_BUCK4_UVOV,
> + /* INT_LDO_VMON register */
> + TPS65224_IRQ_LDO1_UVOV,
> + TPS65224_IRQ_LDO2_UVOV,
> + TPS65224_IRQ_LDO3_UVOV,
> + TPS65224_IRQ_VCCA_UVOV,
> + TPS65224_IRQ_VMON1_UVOV,
> + TPS65224_IRQ_VMON2_UVOV,
> + /* INT_GPIO register */
> + TPS65224_IRQ_GPIO1,
> + TPS65224_IRQ_GPIO2,
> + TPS65224_IRQ_GPIO3,
> + TPS65224_IRQ_GPIO4,
> + TPS65224_IRQ_GPIO5,
> + TPS65224_IRQ_GPIO6,
> + /* INT_STARTUP register */
> + TPS65224_IRQ_VSENSE,
> + TPS65224_IRQ_ENABLE,
> + TPS65224_IRQ_PB_SHORT,
> + TPS65224_IRQ_FSD,
> + TPS65224_IRQ_SOFT_REBOOT,
> + /* INT_MISC register */
> + TPS65224_IRQ_BIST_PASS,
> + TPS65224_IRQ_EXT_CLK,
> + TPS65224_IRQ_REG_UNLOCK,
> + TPS65224_IRQ_TWARN,
> + TPS65224_IRQ_PB_LONG,
> + TPS65224_IRQ_PB_FALL,
> + TPS65224_IRQ_PB_RISE,
> + TPS65224_IRQ_ADC_CONV_READY,
> + /* INT_MODERATE_ERR register */
> + TPS65224_IRQ_TSD_ORD,
> + TPS65224_IRQ_BIST_FAIL,
> + TPS65224_IRQ_REG_CRC_ERR,
> + TPS65224_IRQ_RECOV_CNT,
> + /* INT_SEVERE_ERR register */
> + TPS65224_IRQ_TSD_IMM,
> + TPS65224_IRQ_VCCA_OVP,
> + TPS65224_IRQ_PFSM_ERR,
> + TPS65224_IRQ_BG_XMON,
> + /* INT_FSM_ERR register */
> + TPS65224_IRQ_IMM_SHUTDOWN,
> + TPS65224_IRQ_ORD_SHUTDOWN,
> + TPS65224_IRQ_MCU_PWR_ERR,
> + TPS65224_IRQ_SOC_PWR_ERR,
> + TPS65224_IRQ_COMM_ERR,
> + TPS65224_IRQ_I2C2_ERR,
> + /* INT_ESM register */
> + TPS65224_IRQ_ESM_MCU_PIN,
> + TPS65224_IRQ_ESM_MCU_FAIL,
> + TPS65224_IRQ_ESM_MCU_RST,
> +};
For tps6594, ESM_MCU interrupts were supposed to be cleared by the MCU FW. That's why we only had to
deal with ESM_SOC interrupts in linux. For tps65224, I would recommend double-checking with TI where
ESM_MCU interrupts should be handled (either in MCU FW or in the linux driver). For some reason this
might be different than tps6594's case, but it does not look very consistent to me at first sight.
Julien Panis
Powered by blists - more mailing lists