Dear Maarten, > > -----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 Thanks for the advice. I have not seen this all the time I looked at the code. I accidentally forget to delete the second '!' as I did with the code tested at the embedded device. Thanks for the advice. Should I need to submit this patch again with a Fixup prefix or what needs to be done? > > > if (s->polling) > > dev_dbg(dev, > > "No interrupt pin definition, falling back to polling mode\n"); > > Kind regards, > Maarten > Regards, André