[PATCH 0/2] irq/irq_sim: provide a specialized variant of irq_sim_fire()

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

 



The interrupts simulator has a limitation in that a call to irq_sim_fire()
always fires the dummy interrupt - irrespective of the flags passed to the
irq request function.

This series addresses a problem with certain libgpiod tests failing when
using gpio-mockup with simulated interrupts since commit fa38869b0161
("gpiolib: Don't support irq sharing for userspace"). The tests are
failing because irq_sim fires interrupts for falling edge events even if
gpiolib requests a threaded irq triggered by rising edge only (and vice
versa).

We're introducing a new function: irq_sim_fire_edge() which takes
another argument allowing to specify the trigger type for the dummy
interrupt. We then use it in gpio-mockup.

Patch 1 applies on top of my previous irq_sim changeset[1]. Patch 2
applies on top of the recent changes to gpio-mockup[2].

Since test breakage in user-space after 4.20-rc1 can be considered
a regression, it would be great if this could go into 4.20.

[1] https://lkml.org/lkml/2018/11/9/1418
[2] https://lkml.org/lkml/2018/11/8/1012

Bartosz Golaszewski (2):
  irq/irq_sim: provide irq_sim_fire_edge()
  gpio: mockup: use irq_sim_fire_edge()

 drivers/gpio/gpio-mockup.c |  5 +++--
 include/linux/irq_sim.h    |  2 ++
 kernel/irq/irq_sim.c       | 30 ++++++++++++++++++++++++++++--
 3 files changed, 33 insertions(+), 4 deletions(-)

-- 
2.19.1




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux