Re: [PATCH] irq: Resolve that mask_irq/unmask_irq may not be called in pairs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



在 2023/12/13 00:57, Jiri Kosina 写道:
On Mon, 11 Dec 2023, xiongxin wrote:

In this scenario, unmask_irq() will not be called, and then gpio corresponding
interrupt pin will be masked. Finally, in the suspend() process driven by gpio
interrupt controller, the interrupt mask register will be saved, and then
masked will continue to be read when resuming () process. After the kernel
resumed, the i2c hid gpio interrupt was masked and the i2c hid device was
unavailable.

In addition to what Thomas already wrote -- what exactly is the problem
you are trying to solve here?

Is it that your device drive by i2c-hid driver is no longer sending any
data reports after a suspend/resume cycle? What makes you think that it's
because of its IRQ being disabled?

Don't you just perhaps need I2C_HID_QUIRK_RESET_ON_RESUME quirk for that
device?


I have confirmed I2C_HID_QUIRK_RESET_ON_RESUME quirk, the current BUG is related to GPIO interrupt masking, and has little to do with hid code.

I explained the detailed process of the BUG in another email.





[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux