[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260209-upstream-20260219-v1-2-2b4d74e309d1@gmail.com>
Date: Mon, 09 Feb 2026 11:37:03 +0800
From: Yasin Lee <yasin.lee.x@...il.com>
To: Jonathan Cameron <jic23@...nel.org>,
David Lechner <dlechner@...libre.com>,
Nuno Sá <nuno.sa@...log.com>,
Andy Shevchenko <andy@...nel.org>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, yasin.lee.x@...look.com
Cc: linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, Yasin Lee <yasin.lee.x@...il.com>
Subject: [PATCH 2/5] iio: proximity: hx9023s: Protect against division by
zero in set_samp_freq
Avoid division by zero when sampling frequency is unspecified by
falling back to a default 100ms sampling period.
Signed-off-by: Yasin Lee <yasin.lee.x@...il.com>
---
drivers/iio/proximity/hx9023s.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/iio/proximity/hx9023s.c b/drivers/iio/proximity/hx9023s.c
index ad839db6b326..eb4902d18d74 100644
--- a/drivers/iio/proximity/hx9023s.c
+++ b/drivers/iio/proximity/hx9023s.c
@@ -719,7 +719,11 @@ static int hx9023s_set_samp_freq(struct hx9023s_data *data, int val, int val2)
struct device *dev = regmap_get_device(data->regmap);
unsigned int i, period_ms;
- period_ms = div_u64(NANO, (val * MEGA + val2));
+ if (!val && !val2)
+ /* Fallback to a safe default sampling period */
+ period_ms = 100;
+ else
+ period_ms = div_u64(NANO, (val * MEGA + val2));
for (i = 0; i < ARRAY_SIZE(hx9023s_samp_freq_table); i++) {
if (period_ms == hx9023s_samp_freq_table[i])
--
2.43.0
Powered by blists - more mailing lists