summaryrefslogtreecommitdiff
path: root/drivers/staging
diff options
context:
space:
mode:
authorJoshua Crofts <joshua.crofts1@gmail.com>2026-04-19 20:36:23 +0200
committerJonathan Cameron <jic23@kernel.org>2026-05-31 10:59:33 +0100
commit5b382bf01a377ea96612089b1d68d9547882359f (patch)
tree93b7482ff2a76d49c6fe054d08c2d16efbe194d5 /drivers/staging
parentc0536d61f30417b0aeac7ea8734525ab7a01a93b (diff)
iio: frequency: ad9832: simplify bitwise math
Refactor the ad9832_calc_freqreg by removing the redundant u64 casts and 1L bitwise left shift and replacing the multiplication by a bit shift, as multiplying integers by a power of two is identical to a bitwise left shift. Signed-off-by: Joshua Crofts <joshua.crofts1@gmail.com> Reviewed-by: Nuno Sá <nuno.sa@analog.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/staging')
-rw-r--r--drivers/staging/iio/frequency/ad9832.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/staging/iio/frequency/ad9832.c b/drivers/staging/iio/frequency/ad9832.c
index c0b7852f1c84..659821a1e2cb 100644
--- a/drivers/staging/iio/frequency/ad9832.c
+++ b/drivers/staging/iio/frequency/ad9832.c
@@ -117,8 +117,8 @@ struct ad9832_state {
static unsigned long ad9832_calc_freqreg(unsigned long mclk, unsigned long fout)
{
- unsigned long long freqreg = (u64)fout *
- (u64)((u64)1L << AD9832_FREQ_BITS);
+ u64 freqreg = (u64)fout << AD9832_FREQ_BITS;
+
do_div(freqreg, mclk);
return freqreg;
}