RE: [PATCH v2] serial: sc16is7xx: Extend IRQ check for negative values
From: Maarten Brock
Date: Sat Jan 18 2025 - 07:14:31 EST
> -----Original Message-----
> Fix the IRQ check to treat the negative values as No IRQ.
It seems to me that this is a real fix and needs a Fixes tag.
See below.
> Signed-off-by: Andre Werner <andre.werner@xxxxxxxxxxxxxxxxxxxxx>
> ---
> diff --git a/drivers/tty/serial/sc16is7xx.c b/drivers/tty/serial/sc16is7xx.c
> index 7b51cdc274fd..560f45ed19ae 100644
> --- a/drivers/tty/serial/sc16is7xx.c
> +++ b/drivers/tty/serial/sc16is7xx.c
> @@ -1561,7 +1561,7 @@ int sc16is7xx_probe(struct device *dev, const struct
> sc16is7xx_devtype *devtype,
> /* Always ask for fixed clock rate from a property. */
> device_property_read_u32(dev, "clock-frequency", &uartclk);
>
> - s->polling = !!irq;
> + s->polling = (irq <= 0);
When irq>=0 these two lines above have a different outcome!
irq==0 => !!irq==false <=> (irq<=0)==true
irq==1 => !!irq==true <=> (irq<=0)==false
> if (s->polling)
> dev_dbg(dev,
> "No interrupt pin definition, falling back to polling mode\n");
Kind regards,
Maarten