#include #include "bsp/soc.h" struct gps_tracking_regs { uint32_t control; uint32_t prn; uint32_t code_phase; uint32_t abs_sample; uint32_t status; uint32_t doppler; uint32_t nav_data[10]; uint32_t timeout; uint32_t nav_solve_timer; uint64_t rem_code_phase; }; volatile uint32_t gps_mmio_read32_sink; volatile uint64_t gps_mmio_read64_sink; volatile double gps_mmio_double_sink; int main(void) { volatile struct gps_tracking_regs *trck = (volatile struct gps_tracking_regs *)BSP_GPS_TRCK0_BASE; volatile double *double_at_rem_code_phase = (volatile double *)&trck->rem_code_phase; gps_mmio_read32_sink = trck->status; gps_mmio_read64_sink = trck->rem_code_phase; gps_mmio_double_sink = *double_at_rem_code_phase; return 0; }