Message ID | 20201029084832.13933-1-warthog618@gmail.com |
---|---|
State | Accepted |
Commit | 5e2ca893d772560a0926a31b88f8c83efbc6b058 |
Headers | show |
Series | gpiolib: cdev: add GPIO_V2_LINE_FLAG_EDGE_BOTH and use it in edge_irq_thread() | expand |
On Thu, Oct 29, 2020 at 9:48 AM Kent Gibson <warthog618@gmail.com> wrote: > > Add GPIO_V2_LINE_FLAG_EDGE_BOTH macro and use it in edge_irq_thread() to > improve readability of edge handling cases. > > Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com> > Signed-off-by: Kent Gibson <warthog618@gmail.com> > --- > drivers/gpio/gpiolib-cdev.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpio/gpiolib-cdev.c b/drivers/gpio/gpiolib-cdev.c > index ea787eb3810d..5eb4435afa64 100644 > --- a/drivers/gpio/gpiolib-cdev.c > +++ b/drivers/gpio/gpiolib-cdev.c > @@ -510,6 +510,8 @@ struct linereq { > (GPIO_V2_LINE_FLAG_EDGE_RISING | \ > GPIO_V2_LINE_FLAG_EDGE_FALLING) > > +#define GPIO_V2_LINE_FLAG_EDGE_BOTH GPIO_V2_LINE_EDGE_FLAGS > + > #define GPIO_V2_LINE_VALID_FLAGS \ > (GPIO_V2_LINE_FLAG_ACTIVE_LOW | \ > GPIO_V2_LINE_DIRECTION_FLAGS | \ > @@ -569,8 +571,7 @@ static irqreturn_t edge_irq_thread(int irq, void *p) > line->timestamp_ns = 0; > > eflags = READ_ONCE(line->eflags); > - if (eflags == (GPIO_V2_LINE_FLAG_EDGE_RISING | > - GPIO_V2_LINE_FLAG_EDGE_FALLING)) { > + if (eflags == GPIO_V2_LINE_FLAG_EDGE_BOTH) { > int level = gpiod_get_value_cansleep(line->desc); > > if (level) > -- > 2.29.0 > Applied, thanks! Bartosz
diff --git a/drivers/gpio/gpiolib-cdev.c b/drivers/gpio/gpiolib-cdev.c index ea787eb3810d..5eb4435afa64 100644 --- a/drivers/gpio/gpiolib-cdev.c +++ b/drivers/gpio/gpiolib-cdev.c @@ -510,6 +510,8 @@ struct linereq { (GPIO_V2_LINE_FLAG_EDGE_RISING | \ GPIO_V2_LINE_FLAG_EDGE_FALLING) +#define GPIO_V2_LINE_FLAG_EDGE_BOTH GPIO_V2_LINE_EDGE_FLAGS + #define GPIO_V2_LINE_VALID_FLAGS \ (GPIO_V2_LINE_FLAG_ACTIVE_LOW | \ GPIO_V2_LINE_DIRECTION_FLAGS | \ @@ -569,8 +571,7 @@ static irqreturn_t edge_irq_thread(int irq, void *p) line->timestamp_ns = 0; eflags = READ_ONCE(line->eflags); - if (eflags == (GPIO_V2_LINE_FLAG_EDGE_RISING | - GPIO_V2_LINE_FLAG_EDGE_FALLING)) { + if (eflags == GPIO_V2_LINE_FLAG_EDGE_BOTH) { int level = gpiod_get_value_cansleep(line->desc); if (level)
Add GPIO_V2_LINE_FLAG_EDGE_BOTH macro and use it in edge_irq_thread() to improve readability of edge handling cases. Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by: Kent Gibson <warthog618@gmail.com> --- drivers/gpio/gpiolib-cdev.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)