From e026e2018601f3471448151f97df34880e0688eb Mon Sep 17 00:00:00 2001
From: Roberto Louro Magueta <rmagueta@allbesmart.pt>
Date: Fri, 26 Aug 2022 11:41:23 +0100
Subject: [PATCH] Avoid division by 0 for low noise scenario

---
 openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c b/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
index 2ba020f7ccd..c59ef12cc53 100644
--- a/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
+++ b/openair1/PHY/NR_ESTIMATION/nr_ul_channel_estimation.c
@@ -1174,8 +1174,8 @@ int nr_srs_channel_estimation(const PHY_VARS_gNB *gNB,
     }
   }
 
-  *noise_power = calc_power(noise_real,frame_parms->nb_antennas_rx*nr_srs_info->sc_list_length)
-                  + calc_power(noise_imag,frame_parms->nb_antennas_rx*nr_srs_info->sc_list_length);
+  *noise_power = max(calc_power(noise_real,frame_parms->nb_antennas_rx*nr_srs_info->sc_list_length)
+                     + calc_power(noise_imag,frame_parms->nb_antennas_rx*nr_srs_info->sc_list_length), 1);
 
   *snr = dB_fixed((int32_t)((*signal_power<<factor_bits)/(*noise_power))) - factor_dB;
 
-- 
GitLab