summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiorgi Tchankvetadze <giorgitchankvetadze1997@gmail.com>2026-04-25 11:16:16 +0400
committerJonathan Cameron <jic23@kernel.org>2026-05-31 10:59:32 +0100
commitc09f950fd87ad6505cc7bdbac4e0a125b6ed313c (patch)
tree7c09fb7213b239b458341ba2693fbed543df3c87
parent74c3923344c6ad4b7199948d54dc947504c39483 (diff)
iio: adc: ad7625: fix type mismatch in clamp() macro
clamp() expects compatible operand types. The period calculation uses nanosecond constants, while the local target variable was narrower than the upper bound expression. Make target unsigned long and use unsigned long bounds, including NSEC_PER_USEC for the upper limit. This keeps the operands naturally aligned without adding casts. Suggested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Giorgi Tchankvetadze <giorgitchankvetadze1997@gmail.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
-rw-r--r--drivers/iio/adc/ad7625.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/iio/adc/ad7625.c b/drivers/iio/adc/ad7625.c
index 0466c0c7eae4..f1ee29f35fa8 100644
--- a/drivers/iio/adc/ad7625.c
+++ b/drivers/iio/adc/ad7625.c
@@ -175,12 +175,12 @@ enum ad7960_mode {
static int ad7625_set_sampling_freq(struct ad7625_state *st, u32 freq)
{
- u32 target;
struct pwm_waveform clk_gate_wf = { }, cnv_wf = { };
+ unsigned long target;
int ret;
target = DIV_ROUND_UP(NSEC_PER_SEC, freq);
- cnv_wf.period_length_ns = clamp(target, 100, 10 * KILO);
+ cnv_wf.period_length_ns = clamp(target, 100UL, 10UL * NSEC_PER_USEC);
/*
* Use the maximum conversion time t_CNVH from the datasheet as