# \[RFC/PATCH 4/4\] gpio: smscece: Add support for gpio IO expander feature

- From: Mark Brown \<hidden\>
- Date: 2012-08-21 14:50:16 
- List: linux-arm-kernel
- Page: https://ratatoskr.run/linux-arm-kernel/2012/08/3912069
- Thread: https://ratatoskr.run/linux-arm-kernel/2012/08/3911919/t.md

```text
On Tue, Aug 21, 2012 at 03:22:18PM +0300, Felipe Balbi wrote:
> On Tue, Aug 21, 2012 at 05:50:28PM +0530, Poddar, Sourav wrote:

> > If I am understanding correctly, if they both uses the same bit we cannot
> > use both for a particular user. ?

> we can, it's just a bit more complex. If a user request both LOW and
> HIGH, then you start with HIGH, once it triggers, before calling the
> nested IRQ handler, you need to change it LOW. When low triggers, before
> calling the nested IRQ handler, you need to change it to HIGH again. And
> so on. I'm just not sure if that's valid on linux IRQ subsystem.

The given example was for keypress - usually a system would use edge
triggered interrupts in combination with reading the GPIO state rather
than level triggered interrupts.
```
