altos: Make sure pa to altitude conversion is done with 32 bits
[fw/altos] / src / core / ao_freq.c
index 67b0b037bdcc9defd2b2bd44f38fe7e6aea4a0a0..12496f6fdf785a2d94f5fac84c239092ede0e004 100644 (file)
  * frequency, and updating the radio setting along the way
  */
 
-int32_t ao_freq_to_set(int32_t freq, int32_t cal) {
-       __pdata int32_t set = 0;
-       uint8_t neg = 0;
-       __pdata int32_t error = -434550 / 2;
+int32_t ao_freq_to_set(int32_t freq, int32_t cal) __reentrant
+{
+       static __pdata int32_t  set;
+       static __pdata uint8_t  neg;
+       static __pdata int32_t  error;
+
+       set = 0;
+       neg = 0;
+       error = -434550 / 2;
 
        if ((freq -= 434550) < 0) {
                neg = 1;