Re: [PATCH RESEND v2] gpio: omap: Add omap_gpio_disable/enable_irq calls

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

 



On Tue, Nov 05, 2024 at 12:47:58PM -0600, Judith Mendez wrote:
> Hi Kevin,
> 
> On 11/1/24 9:29 AM, Kevin Hilman wrote:
> > Hi Judith,
> > 
> > Judith Mendez <jm@xxxxxx> writes:
> > 
> > > From: Bin Liu <b-liu@xxxxxx>
> > > 
> > > Add omap_gpio_disable_irq and omap_gpio_enable_irq
> > > calls in gpio-omap.
> > > 
> > > Currently, kernel cannot disable gpio interrupts in
> > > case of a irq storm, so add omap_gpio_disable/enable_irq
> > > so that interrupts can be disabled/enabled.
> > > 
> > > Signed-off-by: Bin Liu <b-liu@xxxxxx>
> > > [Judith: Add commit message]
> > > Signed-off-by: Judith Mendez <jm@xxxxxx>
> > 
> > Thanks for this patch.  Can you give a bit more context on the
> > problem(s) this solves and on which SoCs/platforms it was
> > developed/validated?
> 
> Sorry for the late response. Patch was tested/developed on am335x
> device BBB, If you feed a PWM signal at 200KHz frequency to
> GPIO, and execute gpiomon 0 12 &, Linux will be unresponsive
> even after CTRL+C without these 2 functions in this patch. Once
> this patch is applied, you can get console back after hitting
> CTRL+C and then proceed to kill gpiomon.

In addtion to Judith's explanation, when the PWM is applied to a GPIO
pin, kernel detects the interrupt storm and disables the irq, however,
without these callbacks, this gpio platform driver doesn't really
disable the interrupt in the gpio controller, so the interrupt storm is
still happening and handled by this gpio controller driver then causes
Linux unresponsive.

-Bin.




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux