[PATCH v3 0/7] gpio: mockup: improve the user-space testing interface

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

 



From: Bartosz Golaszewski <bgolaszewski@xxxxxxxxxxxx>

Hi Marc,

this is a trimmed down version of the previous series. All irq_sim patches
from the previous implementation were dropped. The only change in irq_sim now
is addition of the irq_sim_get_type() helper. We store the irq type in the
irq_set_type() callback and allow users to retrieve it with the new function.

The entire logic handling the line state now lives directly in the only user
that needs it - the GPIO testing module. Since the GPIO user API only supports
edge interrupts, level types are not supported. This functionality is only
needed for user-space tests. The testing module tracks the line state and makes
sure to avoid impossible situations (like firing a rising edge interrupt if
the line is being driven low).

Other gpio-mockup patches are unchanged - the only change in patch 7 is the
line state tracking.

v1 -> v2:
- instead of providing the irq_sim_get_type() helper, move the irq type
  logic into the simulator and provide a helper that allows users to specify
  the type of the fired interrupt

v2 -> v3:
- switch back to having irq_sim_type() and put the line state logic into the
  GPIO testing module

Bartosz Golaszewski (7):
  irq/irq_sim: provide irq_sim_get_type()
  gpio: mockup: add locking
  gpio: mockup: implement get_multiple()
  gpio: mockup: don't create the debugfs link named after the label
  gpio: mockup: change the type of 'offset' to unsigned int
  gpio: mockup: change the signature of unlocked get/set helpers
  gpio: mockup: rework debugfs interface

 drivers/gpio/gpio-mockup.c | 188 +++++++++++++++++++++++++++++++------
 include/linux/irq_sim.h    |   2 +
 kernel/irq/irq_sim.c       |  23 +++++
 3 files changed, 186 insertions(+), 27 deletions(-)

-- 
2.20.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