From 32870ad48681337e7e73a85e932a4935d9efd7e2 Mon Sep 17 00:00:00 2001 From: mndza Date: Tue, 8 Jul 2025 16:37:35 +0200 Subject: [PATCH] firmware: no division when calculating n_lo in RFFC5071 synth --- firmware/common/rffc5071.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/firmware/common/rffc5071.c b/firmware/common/rffc5071.c index ccd17b4b..f3f25c5d 100644 --- a/firmware/common/rffc5071.c +++ b/firmware/common/rffc5071.c @@ -231,10 +231,10 @@ uint64_t rffc5071_config_synth_int(rffc5071_driver_t* const drv, uint16_t lo) uint16_t p1nmsb; uint8_t p1nlsb; - /* Calculate n_lo */ + /* Calculate n_lo (no division) */ uint8_t n_lo = 0; - uint16_t x = LO_MAX / lo; - while ((x > 1) && (n_lo < 5)) { + uint16_t x = LO_MAX >> 1; + while ((x >= lo) && (n_lo < 5)) { n_lo++; x >>= 1; }