Thread (29 messages) 29 messages, 7 authors, 2025-05-23

Re: [PATCH v8 05/11] regmap: irq: Add support for chips without separate IRQ status

From: Mark Brown <broonie@kernel.org>
Date: 2025-05-14 09:59:39
Also in: linux-devicetree, linux-gpio, linux-pwm, lkml

On Fri, May 09, 2025 at 11:14:39AM +0200, Mathieu Dubois-Briand wrote:
Some GPIO chips allow to rise an IRQ on GPIO level changes but do not
provide an IRQ status for each separate line: only the current gpio
level can be retrieved.
This doesn't build in a wide range of configurations (none at all
AFAICT):

/build/stage/linux/drivers/base/regmap/regmap-irq.c: In function ‘regmap_add_irq
_chip_fwnode’:
/build/stage/linux/drivers/base/regmap/regmap-irq.c:914:88: error: macro "array_
size" requires 2 arguments, but only 1 given
  914 |                 memcpy(d->prev_status_buf, d->status_buf, array_size(d->
prev_status_buf));
      |                                                                         
               ^
In file included from /build/stage/linux/include/linux/string.h:13,
                 from /build/stage/linux/include/linux/bitmap.h:13,
                 from /build/stage/linux/include/linux/cpumask.h:12,
                 from /build/stage/linux/include/linux/smp.h:13,
                 from /build/stage/linux/include/linux/lockdep.h:14,
                 from /build/stage/linux/include/linux/spinlock.h:63,
                 from /build/stage/linux/include/linux/sched.h:2213,
                 from /build/stage/linux/include/linux/ratelimit.h:6,
                 from /build/stage/linux/include/linux/dev_printk.h:16,
                 from /build/stage/linux/include/linux/device.h:15,
                 from /build/stage/linux/drivers/base/regmap/regmap-irq.c:10:
/build/stage/linux/include/linux/overflow.h:327:9: note: macro "array_size" defined here
  327 | #define array_size(a, b)        size_mul(a, b)
      |         ^~~~~~~~~~
/build/stage/linux/drivers/base/regmap/regmap-irq.c:914:59: error: ‘array_size’ undeclared (first use in this function)
  914 |                 memcpy(d->prev_status_buf, d->status_buf, array_size(d->prev_status_buf));
      |                                                           ^~~~~~~~~~
/build/stage/linux/drivers/base/regmap/regmap-irq.c:914:59: note: each undeclared identifier is reported only once for each function it appears in

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help