Lines Matching full:rtc
17 * small and rtc synchronization process might not handle events on time.
31 uint8_t rtc; member
37 /* Algorithm for establishing RTC offset on the network side.
40 * APP starts first thus its RTC is ahead. Only network will need to adjust its
44 * using just IPC, PPI and RTC.
47 * APP: setup PPI connection from IPC_RECEIVE to RTC CAPTURE, enable interrupt
49 * NET: setup RTC CC for arbitrary offset from now, setup PPI from RTC_COMPARE to IPC_SEND
58 * NET: setup PPI from IPC_RECEIVE to RTC CAPTURE
60 * When NET RTC captures IPC event it takes CC value and knowing CC value previously
62 * to calculate exact offset between RTC counters.
66 * on when NET core is reset and time when RTC system clock is initialized.
77 uint32_t task_addr = z_nrf_rtc_timer_capture_task_address_get(channels.ch.rtc); in ppi_ipc_to_rtc()
95 uint32_t evt_addr = z_nrf_rtc_timer_compare_evt_address_get(channels.ch.rtc); in ppi_rtc_to_ipc()
107 /* Free DPPI and RTC channels */
115 z_nrf_rtc_timer_chan_free(channels.ch.rtc); in free_resources()
164 cc = z_nrf_rtc_timer_compare_read(channels.ch.rtc); in remote_callback()
170 /* Setup new connection from RTC to IPC and set RTC to a new in remote_callback()
175 z_nrf_rtc_timer_set(channels.ch.rtc, cc + cc + RTC_SYNC_ARBITRARY_DELAY, in remote_callback()
188 LOG_INF("Updated timestamp to synchronized RTC by %d ticks (%dus)", in remote_callback()
225 /* Setup RTC synchronization. */
247 channels.ch.rtc = (uint8_t)sync_rtc_ch; in sync_rtc_setup()
266 z_nrf_rtc_timer_set(channels.ch.rtc, sync_cc, rtc_cb, (void *)channels.raw); in sync_rtc_setup()
272 LOG_ERR("Failed synchronized RTC setup (err: %d)", rv); in sync_rtc_setup()
280 "RTC Sync must be initialized after MBOX driver.");