Re: [PATCH net-next v6 03/12] net: pse-pd: tps23881: Add support for PSE events and interrupts
From: Kory Maincent
Date: Thu Mar 20 2025 - 10:10:46 EST
On Mon, 17 Mar 2025 10:43:58 +0100
Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx> wrote:
> On Tue, Mar 04, 2025 at 11:18:52AM +0100, Kory Maincent wrote:
> > +static int tps23881_irq_handler(int irq, struct pse_controller_dev *pcdev,
> > + unsigned long *notifs,
> > + unsigned long *notifs_mask)
> > +{
> > + struct tps23881_priv *priv = to_tps23881_priv(pcdev);
> > + struct i2c_client *client = priv->client;
> > + int ret, it_mask;
> > +
> > + /* Get interruption mask */
> > + ret = i2c_smbus_read_word_data(client, TPS23881_REG_IT_MASK);
> > + if (ret < 0)
> > + return ret;
> > + it_mask = ret;
> > +
> > + /* Read interrupt register until it frees the interruption pin. */
> > + while (true) {
>
> If the hardware has a stuck interrupt, this could result in an infinite
> loop. max_retries with some sane value would be good.
Ack I will. Do you have a value in mind as a sane value?
> > +
> > +static int tps23881_setup_irq(struct tps23881_priv *priv, int irq)
> > +{
> > + struct i2c_client *client = priv->client;
> > + struct pse_irq_desc irq_desc = {
> > + .name = "tps23881-irq",
>
> here or in devm_pse_irq_helper() it would be good to add intex suffix to
> the irq handler name.
You mean index? Like the PSE index?
So I will need to add back the support of the PSE index in the series.
Regards,
--
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com