Control: tags -1 + moreinfo Hi Michael,
On Tue, Jan 11, 2022 at 12:27:50PM +0100, Sebastian Andrzej Siewior wrote: > On 2021-12-25 12:27:33 [+0100], Michael Below wrote: > > Hi, > Hi, > > > I have tested the patch, with help from Salvatore, and the dmesg output > > looks better, but the touchpad still does not work. I am attaching the > > dmesg output. > > based on > > > [ 1.575843] idma64 idma64.0: Found Intel integrated DMA 64-bit > > [ 1.578321] i801_smbus 0000:00:1f.4: SPD Write Disable is set > > [ 1.578365] genirq: Flags mismatch irq 16. 00010080 (i801_smbus) vs. > > 00002080 (idma64.0) > > [ 1.578368] i801_smbus 0000:00:1f.4: Failed to allocate irq 16: -16 > > [ 1.578370] i801_smbus 0000:00:1f.4: SMBus using polling > > the IRQ can not be non-threaded because it is shared with idma64. Good. > Based on output it says that it is using polling so I'm don't know why > the touchpad is not working… > > What about the following hunk instead? > > diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c > index 73253e667de1d..30e93651d5b6b 100644 > --- a/drivers/i2c/i2c-core-base.c > +++ b/drivers/i2c/i2c-core-base.c > @@ -1423,7 +1423,10 @@ int i2c_handle_smbus_host_notify(struct i2c_adapter > *adap, unsigned short addr) > if (irq <= 0) > return -ENXIO; > > - generic_handle_irq(irq); > + if (!IS_ENABLED(CONFIG_PREEMPT_RT)) > + generic_handle_irq(irq); > + else > + handle_nested_irq(irq); > > return 0; > } > > > Cheers > > Michael Where you by chance already able to test this? Regards, Salvatore