Counter updates for 6.16

An update to allow for larger count values in interrupt-cnt.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQSNN83d4NIlKPjon7a1SFbKvhIjKwUCaCBJQgAKCRC1SFbKvhIj
 K//PAQC/De1TRyz47rMwHg3agdFZOiSKO7X0QqHBdX1lLpMgRQEAgcaxB+cYap9b
 8OfCqmvhbgO7YBZSRLslirC5fwlApA4=
 =N5JS
 -----END PGP SIGNATURE-----

Merge tag 'counter-updates-for-6.16' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/wbg/counter into char-misc-next

William writes:

Counter updates for 6.16

An update to allow for larger count values in interrupt-cnt.

* tag 'counter-updates-for-6.16' of ssh://gitolite.kernel.org/pub/scm/linux/kernel/git/wbg/counter:
  counter: interrupt-cnt: Convert atomic_t -> atomic_long_t
This commit is contained in:
Greg Kroah-Hartman 2025-05-21 14:07:53 +02:00
commit 893579d9e3

View File

@ -17,7 +17,7 @@
#define INTERRUPT_CNT_NAME "interrupt-cnt"
struct interrupt_cnt_priv {
atomic_t count;
atomic_long_t count;
struct gpio_desc *gpio;
int irq;
bool enabled;
@ -32,7 +32,7 @@ static irqreturn_t interrupt_cnt_isr(int irq, void *dev_id)
struct counter_device *counter = dev_id;
struct interrupt_cnt_priv *priv = counter_priv(counter);
atomic_inc(&priv->count);
atomic_long_inc(&priv->count);
counter_push_event(counter, COUNTER_EVENT_CHANGE_OF_STATE, 0);
@ -96,7 +96,7 @@ static int interrupt_cnt_read(struct counter_device *counter,
{
struct interrupt_cnt_priv *priv = counter_priv(counter);
*val = atomic_read(&priv->count);
*val = atomic_long_read(&priv->count);
return 0;
}
@ -109,7 +109,7 @@ static int interrupt_cnt_write(struct counter_device *counter,
if (val != (typeof(priv->count.counter))val)
return -ERANGE;
atomic_set(&priv->count, val);
atomic_long_set(&priv->count, val);
return 0;
}