ao_gps, ao_log: Make conversions to 16-bit time log values explicit
authorKeith Packard <keithp@keithp.com>
Fri, 28 Jan 2022 23:00:38 +0000 (15:00 -0800)
committerKeith Packard <keithp@keithp.com>
Thu, 17 Feb 2022 01:26:49 +0000 (17:26 -0800)
All log formats record only the low 16-bits of the time value, make
conversions to those explicit to silence -Wconversion warnings.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/kernel/ao_gps_report_mega.c
src/kernel/ao_gps_report_metrum.c
src/kernel/ao_log_gps.c
src/kernel/ao_log_mega.c
src/kernel/ao_log_metrum.c
src/kernel/ao_log_mini.c
src/kernel/ao_log_motor.c

index 0cba972be07ce35bb353e97eba0a3e7b9a8c174b..5724d11bd9fa108b923e00d87233128ac7848484 100644 (file)
@@ -85,7 +85,7 @@ ao_gps_report_mega(void)
 #endif
                if ((new & AO_GPS_NEW_DATA) && (gps_data.flags & AO_GPS_VALID)) {
 
-                       gps_log.tick = ao_gps_tick;
+                       gps_log.tick = (uint16_t) ao_gps_tick;
                        gps_log.type = AO_LOG_GPS_TIME;
                        gps_log.u.gps.latitude = gps_data.latitude;
                        gps_log.u.gps.longitude = gps_data.longitude;
@@ -108,7 +108,7 @@ ao_gps_report_mega(void)
                        ao_log_write(&gps_log);
                }
                if ((new & AO_GPS_NEW_TRACKING) && (n = gps_tracking_data.channels) != 0) {
-                       gps_log.tick = ao_gps_tick;
+                       gps_log.tick = (uint16_t) ao_gps_tick;
                        gps_log.type = AO_LOG_GPS_SAT;
                        i = 0;
                        for (c = 0; c < n; c++)
index b5f58893b78184679adbd9d126c8d5ba3532d871..e7529ee2a84740ed69d0e38208452dcc83c74390 100644 (file)
@@ -41,7 +41,7 @@ ao_gps_report_metrum(void)
                ao_mutex_put(&ao_gps_mutex);
 
                if ((new & AO_GPS_NEW_DATA) && (gps_data.flags & AO_GPS_VALID)) {
-                       gps_log.tick = ao_gps_tick;
+                       gps_log.tick = (uint16_t) ao_gps_tick;
                        gps_log.type = AO_LOG_GPS_POS;
                        gps_log.u.gps.latitude = gps_data.latitude;
                        gps_log.u.gps.longitude = gps_data.longitude;
@@ -63,7 +63,7 @@ ao_gps_report_metrum(void)
 
                if ((new & AO_GPS_NEW_TRACKING) && (n = gps_tracking_data.channels)) {
                        gps_log.type = AO_LOG_GPS_SAT;
-                       gps_log.tick = ao_gps_tick;
+                       gps_log.tick = (uint16_t) ao_gps_tick;
                        i = 0;
                        for (c = 0; c < n; c++) {
                                svid = gps_tracking_data.sats[c].svid;
index 211707e58221e5789de8d5fb6b00c79c7777735c..96f8140fdf04a171107eaef814599aed6e918611 100644 (file)
@@ -28,7 +28,7 @@ void
 ao_log_gps_flight(void)
 {
        ao_log_data.type = AO_LOG_FLIGHT;
-       ao_log_data.tick = ao_time();
+       ao_log_data.tick = (uint16_t) ao_time();
        ao_log_data.u.flight.flight = ao_flight_number;
        ao_log_write(&ao_log_data);
 }
@@ -36,7 +36,7 @@ ao_log_gps_flight(void)
 void
 ao_log_gps_data(AO_TICK_TYPE tick, struct ao_telemetry_location *gps_data)
 {
-       ao_log_data.tick = tick;
+       ao_log_data.tick = (uint16_t) tick;
        ao_log_data.type = AO_LOG_GPS_TIME;
        ao_log_data.u.gps.latitude = gps_data->latitude;
        ao_log_data.u.gps.longitude = gps_data->longitude;
@@ -65,7 +65,7 @@ ao_log_gps_tracking(AO_TICK_TYPE tick, struct ao_telemetry_satellite *gps_tracki
 {
        uint8_t c, n, i;
 
-       ao_log_data.tick = tick;
+       ao_log_data.tick = (uint16_t) tick;
        ao_log_data.type = AO_LOG_GPS_SAT;
        i = 0;
        n = gps_tracking_data->channels;
index 78dbd980d527288bbedb1797f9b7401c91872396..432f1b851c7918c00180db1cb4748acc1ab473df 100644 (file)
@@ -48,7 +48,7 @@ ao_log(void)
 
 #if HAS_FLIGHT
        ao_log_data.type = AO_LOG_FLIGHT;
-       ao_log_data.tick = ao_sample_tick;
+       ao_log_data.tick = (uint16_t) ao_sample_tick;
 #if HAS_ACCEL
        ao_log_data.u.flight.ground_accel = ao_ground_accel;
 #endif
@@ -75,7 +75,7 @@ ao_log(void)
                /* Write samples to EEPROM */
                while (ao_log_data_pos != ao_data_head) {
                        AO_TICK_TYPE tick = ao_data_ring[ao_log_data_pos].tick;
-                       ao_log_data.tick = tick;
+                       ao_log_data.tick = (uint16_t) tick;
                        volatile struct ao_data *d = &ao_data_ring[ao_log_data_pos];
                        if ((AO_TICK_SIGNED) (tick - next_sensor) >= 0) {
                                ao_log_data.type = AO_LOG_SENSOR;
@@ -157,7 +157,7 @@ ao_log(void)
                if (ao_flight_state != ao_log_state) {
                        ao_log_state = ao_flight_state;
                        ao_log_data.type = AO_LOG_STATE;
-                       ao_log_data.tick = ao_time();
+                       ao_log_data.tick = (uint16_t) ao_time();
                        ao_log_data.u.state.state = ao_log_state;
                        ao_log_data.u.state.reason = 0;
                        ao_log_write(&ao_log_data);
index 8091e6c63ccd5b9a504f77f2ad7a4ce646d695b1..ae96bd6387c5b243be76923c69cd42bad7982438 100644 (file)
@@ -47,7 +47,7 @@ ao_log(void)
 
 #if HAS_FLIGHT
        ao_log_data.type = AO_LOG_FLIGHT;
-       ao_log_data.tick = ao_sample_tick;
+       ao_log_data.tick = (uint16_t) ao_sample_tick;
 #if HAS_ACCEL
        ao_log_data.u.flight.ground_accel = ao_ground_accel;
 #endif
@@ -66,7 +66,7 @@ ao_log(void)
                /* Write samples to EEPROM */
                while (ao_log_data_pos != ao_data_head) {
                        AO_TICK_TYPE tick = ao_data_ring[ao_log_data_pos].tick;
-                       ao_log_data.tick = tick;
+                       ao_log_data.tick = (uint16_t) tick;
                        if ((AO_TICK_SIGNED) (tick - next_sensor) >= 0) {
                                ao_log_data.type = AO_LOG_SENSOR;
 #if HAS_MS5607
@@ -97,7 +97,7 @@ ao_log(void)
                if (ao_flight_state != ao_log_state) {
                        ao_log_state = ao_flight_state;
                        ao_log_data.type = AO_LOG_STATE;
-                       ao_log_data.tick = ao_time();
+                       ao_log_data.tick = (uint16_t) ao_time();
                        ao_log_data.u.state.state = ao_log_state;
                        ao_log_data.u.state.reason = 0;
                        ao_log_write(&ao_log_data);
index 3c46153eef832026cbc11e224602c1e443497a2d..02de1f8ae4d81de2953c3fa26cd4cad7f62d188e 100644 (file)
@@ -45,7 +45,7 @@ ao_log(void)
 
 #if HAS_FLIGHT
        ao_log_data.type = AO_LOG_FLIGHT;
-       ao_log_data.tick = ao_sample_tick;
+       ao_log_data.tick = (uint16_t) ao_sample_tick;
        ao_log_data.u.flight.flight = ao_flight_number;
        ao_log_data.u.flight.ground_pres = ao_ground_pres;
        ao_log_write(&ao_log_data);
@@ -61,7 +61,7 @@ ao_log(void)
                /* Write samples to EEPROM */
                while (ao_log_data_pos != ao_data_head) {
                        AO_TICK_TYPE tick = ao_data_ring[ao_log_data_pos].tick;
-                       ao_log_data.tick = tick;
+                       ao_log_data.tick = (uint16_t) tick;
                        if ((AO_TICK_SIGNED) (tick - next_sensor) >= 0) {
                                ao_log_data.type = AO_LOG_SENSOR;
                                ao_log_pack24(ao_log_data.u.sensor.pres,
@@ -86,7 +86,7 @@ ao_log(void)
                if (ao_flight_state != ao_log_state) {
                        ao_log_state = ao_flight_state;
                        ao_log_data.type = AO_LOG_STATE;
-                       ao_log_data.tick = ao_time();
+                       ao_log_data.tick = (uint16_t) ao_time();
                        ao_log_data.u.state.state = ao_log_state;
                        ao_log_data.u.state.reason = 0;
                        ao_log_write(&ao_log_data);
index 4af8bd7818579ead1287f53f8d1f057487a1e28e..7c866d7e2c8662dfcbc4adaa25fe58451e4f7777 100644 (file)
@@ -46,7 +46,7 @@ ao_log(void)
                ao_sleep(&ao_log_running);
 
        ao_log_data.type = AO_LOG_FLIGHT;
-       ao_log_data.tick = ao_sample_tick;
+       ao_log_data.tick = (uint16_t) ao_sample_tick;
        ao_log_data.u.flight.ground_accel = ao_ground_accel;
        ao_log_data.u.flight.ground_accel_along = ao_ground_accel_along;
        ao_log_data.u.flight.ground_accel_through = ao_ground_accel_through;
@@ -64,7 +64,7 @@ ao_log(void)
                /* Write samples to EEPROM */
                while (ao_log_data_pos != ao_data_head) {
                        AO_TICK_TYPE tick = ao_data_ring[ao_log_data_pos].tick;
-                       ao_log_data.tick = tick;
+                       ao_log_data.tick = (uint16_t) tick;
                        if ((AO_TICK_SIGNED) (tick - next_sensor) >= 0) {
                                ao_log_data.type = AO_LOG_SENSOR;
                                ao_log_data.u.sensor.pressure = ao_data_motor_pressure(&ao_data_ring[ao_log_data_pos]);
@@ -86,7 +86,7 @@ ao_log(void)
                if (ao_flight_state != ao_log_state) {
                        ao_log_state = ao_flight_state;
                        ao_log_data.type = AO_LOG_STATE;
-                       ao_log_data.tick = ao_time();
+                       ao_log_data.tick = (uint16_t) ao_time();
                        ao_log_data.u.state.state = ao_log_state;
                        ao_log_data.u.state.reason = 0;
                        ao_log_write(&ao_log_data);