Lines Matching refs:ts

139 static uint32 dhd_timesync_send_D2H_clk_correction(dhd_ts_t *ts);
140 static uint32 dhd_timesync_send_host_clk_info(dhd_ts_t *ts);
141 static uint32 dhd_timesync_send_host_clock_selection(dhd_ts_t *ts);
142 static uint32 dhd_timesync_send_host_timestamping_config(dhd_ts_t *ts, bool inject_err);
199 static int dhd_ts_fw_clksrc_dump(dhd_ts_t *ts, char *buf, int buflen);
216 dhd_ts_t *ts; in dhd_read_proc_ts_fw_clk_dump() local
220 ts = g_dhd_ts; in dhd_read_proc_ts_fw_clk_dump()
221 if (ts == NULL) { in dhd_read_proc_ts_fw_clk_dump()
224 if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(ts->dhdp)) { in dhd_read_proc_ts_fw_clk_dump()
228 if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(ts->dhdp)) { in dhd_read_proc_ts_fw_clk_dump()
237 ret = dhd_ts_fw_clksrc_dump(ts, buf, count); in dhd_read_proc_ts_fw_clk_dump()
252 dhd_ts_t *ts; in dhd_read_proc_ts_tx_dump() local
257 ts = g_dhd_ts; in dhd_read_proc_ts_tx_dump()
258 if (ts == NULL) { in dhd_read_proc_ts_tx_dump()
261 if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(ts->dhdp)) { in dhd_read_proc_ts_tx_dump()
265 if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(ts->dhdp)) { in dhd_read_proc_ts_tx_dump()
276 dhd_timesync_ts_log_dump_item(&ts->tx_timestamps, &strbuf); in dhd_read_proc_ts_tx_dump()
290 dhd_ts_t *ts; in dhd_read_proc_ts_rx_dump() local
295 ts = g_dhd_ts; in dhd_read_proc_ts_rx_dump()
296 if (ts == NULL) { in dhd_read_proc_ts_rx_dump()
299 if (DHD_BUS_CHECK_SUSPEND_OR_SUSPEND_IN_PROGRESS(ts->dhdp)) { in dhd_read_proc_ts_rx_dump()
303 if (DHD_BUS_CHECK_DOWN_OR_DOWN_IN_PROGRESS(ts->dhdp)) { in dhd_read_proc_ts_rx_dump()
314 dhd_timesync_ts_log_dump_item(&ts->rx_timestamps, &strbuf); in dhd_read_proc_ts_rx_dump()
340 dhd_ts_t *ts; in dhd_timesync_detach() local
347 ts = dhdp->ts; in dhd_timesync_detach()
354 MFREE(dhdp->osh, ts, sizeof(dhd_ts_t)); in dhd_timesync_detach()
357 dhdp->ts = NULL; in dhd_timesync_detach()
364 dhd_ts_t *ts; in dhd_timesync_attach() local
368 if (!(ts = (dhd_ts_t *)DHD_OS_PREALLOC(dhdp, DHD_PREALLOC_PROT, in dhd_timesync_attach()
373 memset(ts, 0, sizeof(*ts)); in dhd_timesync_attach()
375 g_dhd_ts = ts; in dhd_timesync_attach()
376 ts->osh = dhdp->osh; in dhd_timesync_attach()
377 dhdp->ts = ts; in dhd_timesync_attach()
378 ts->dhdp = dhdp; in dhd_timesync_attach()
380 ts->correction_m.low = 1; in dhd_timesync_attach()
381 ts->correction_m.high = 1; in dhd_timesync_attach()
383 ts->correction_b.low = 0; in dhd_timesync_attach()
384 ts->correction_m.high = 0; in dhd_timesync_attach()
386 ts->fwts2hsts_delay = DHD_DEFAULT_TIMESYNC_TIMER_VALUE; in dhd_timesync_attach()
387 ts->fwts2hsts_delay_wdcount = 0; in dhd_timesync_attach()
389 ts->tx_timestamps.max_idx = MAX_TS_LOG_SAMPLES_DATA; in dhd_timesync_attach()
390 ts->rx_timestamps.max_idx = MAX_TS_LOG_SAMPLES_DATA; in dhd_timesync_attach()
392 ts->xt_id = 1; in dhd_timesync_attach()
411 if (dhdp->ts != NULL) { in dhd_timesync_attach()
434 dhd_timesync_ts_log_dump(dhd_ts_t *ts, char *buf, int buflen, bool tx) in dhd_timesync_ts_log_dump() argument
443 dhd_timesync_ts_log_dump_item(&ts->tx_timestamps, strbuf); in dhd_timesync_ts_log_dump()
447 dhd_timesync_ts_log_dump_item(&ts->rx_timestamps, strbuf); in dhd_timesync_ts_log_dump()
453 dhd_timesync_clear_logs(dhd_ts_t *ts) in dhd_timesync_clear_logs() argument
457 tsl = &ts->rx_timestamps; in dhd_timesync_clear_logs()
462 tsl = &ts->tx_timestamps; in dhd_timesync_clear_logs()
473 dhd_ts_t *ts = dhdp->ts; in dhd_timesync_debug_info_print() local
476 if (!ts) { in dhd_timesync_debug_info_print()
481 DHD_ERROR(("\nts info dump: active_ipc_version %d\n", ts->active_ipc_version)); in dhd_timesync_debug_info_print()
484 GET_SEC_USEC(current_time), GET_SEC_USEC(ts->last_ts_watchdog_time))); in dhd_timesync_debug_info_print()
485 DHD_ERROR(("timesync disabled %d\n", ts->timesync_disabled)); in dhd_timesync_debug_info_print()
487 ts->host_ts_capture_cnt, ts->fw_ts_capture_cnt, ts->fw_ts_disc_cnt)); in dhd_timesync_debug_info_print()
489 ts->ts_watchdog_calls, ts->host_reset_cnt)); in dhd_timesync_debug_info_print()
491 BCMMSGBUF_HOST_TIMESTAMPING_CONFIG_TAG, ts->xt_ids.host_timestamping_config, in dhd_timesync_debug_info_print()
492 BCMMSGBUF_HOST_CLOCK_SELECT_TAG, ts->xt_ids.host_clock_selection, in dhd_timesync_debug_info_print()
493 BCMMSGBUF_HOST_CLOCK_INFO_TAG, ts->xt_ids.host_clk_info, in dhd_timesync_debug_info_print()
494 BCMMSGBUF_D2H_CLOCK_CORRECTION_TAG, ts->xt_ids.d2h_clk_correction)); in dhd_timesync_debug_info_print()
496 ts->pending_requests, ts->suspend_req, ts->resume_req)); in dhd_timesync_debug_info_print()
501 dhd_timesync_dump(dhd_ts_t *ts, char *buf, int buflen) in dhd_timesync_dump() argument
508 bcm_bprintf(strbuf, "ts info dump: active_ipc_version %d\n", ts->active_ipc_version); in dhd_timesync_dump()
509 bcm_bprintf(strbuf, "timesync disabled %d\n", ts->timesync_disabled); in dhd_timesync_dump()
511 ts->host_ts_capture_cnt, ts->fw_ts_capture_cnt, ts->fw_ts_disc_cnt); in dhd_timesync_dump()
513 ts->ts_watchdog_calls, ts->host_reset_cnt); in dhd_timesync_dump()
515 BCMMSGBUF_HOST_TIMESTAMPING_CONFIG_TAG, ts->xt_ids.host_timestamping_config, in dhd_timesync_dump()
516 BCMMSGBUF_HOST_CLOCK_SELECT_TAG, ts->xt_ids.host_clock_selection, in dhd_timesync_dump()
517 BCMMSGBUF_HOST_CLOCK_INFO_TAG, ts->xt_ids.host_clk_info, in dhd_timesync_dump()
518 BCMMSGBUF_D2H_CLOCK_CORRECTION_TAG, ts->xt_ids.d2h_clk_correction); in dhd_timesync_dump()
520 ts->pending_requests, ts->suspend_req, ts->resume_req); in dhd_timesync_dump()
526 dhd_timesync_doiovar(dhd_ts_t *ts, const bcm_iovar_t *vi, uint32 actionid, const char *name, in dhd_timesync_doiovar() argument
543 dhd_timesync_dump(ts, arg, len); in dhd_timesync_doiovar()
546 dhd_timesync_ts_log_dump(ts, arg, len, TRUE); in dhd_timesync_doiovar()
549 dhd_timesync_ts_log_dump(ts, arg, len, FALSE); in dhd_timesync_doiovar()
552 dhd_ts_fw_clksrc_dump(ts, arg, len); in dhd_timesync_doiovar()
555 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
559 bcmerror = dhd_timesync_send_host_timestamping_config(ts, FALSE); in dhd_timesync_doiovar()
562 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
566 bcmerror = dhd_timesync_send_host_clock_selection(ts); in dhd_timesync_doiovar()
569 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
573 bcmerror = dhd_timesync_send_host_clk_info(ts); in dhd_timesync_doiovar()
576 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
580 bcmerror = dhd_timesync_send_D2H_clk_correction(ts); in dhd_timesync_doiovar()
583 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
587 bcmerror = dhd_timesync_send_host_timestamping_config(ts, TRUE); in dhd_timesync_doiovar()
592 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
596 old_xt_id = ts->xt_id; in dhd_timesync_doiovar()
597 ts->xt_id += 10; /* will cause the error now */ in dhd_timesync_doiovar()
599 old_xt_id, ts->xt_id)); in dhd_timesync_doiovar()
600 bcmerror = dhd_timesync_send_host_timestamping_config(ts, FALSE); in dhd_timesync_doiovar()
601 ts->xt_id = old_xt_id; in dhd_timesync_doiovar()
605 bcopy(&ts->fwts2hsts_delay, arg, val_size); in dhd_timesync_doiovar()
608 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
620 ts->fwts2hsts_delay = int_val; in dhd_timesync_doiovar()
623 bcopy(&ts->nodrop_config, arg, val_size); in dhd_timesync_doiovar()
626 ts->nodrop_config = int_val; in dhd_timesync_doiovar()
629 int_val = dhd_prot_pkt_noretry(ts->dhdp, 0, FALSE); in dhd_timesync_doiovar()
633 dhd_prot_pkt_noretry(ts->dhdp, int_val, TRUE); in dhd_timesync_doiovar()
636 int_val = dhd_prot_pkt_noaggr(ts->dhdp, 0, FALSE); in dhd_timesync_doiovar()
640 dhd_prot_pkt_noaggr(ts->dhdp, int_val, TRUE); in dhd_timesync_doiovar()
643 int_val = dhd_prot_pkt_fixed_rate(ts->dhdp, 0, FALSE); in dhd_timesync_doiovar()
647 dhd_prot_pkt_fixed_rate(ts->dhdp, int_val, TRUE); in dhd_timesync_doiovar()
650 dhd_timesync_clear_logs(ts); in dhd_timesync_doiovar()
653 int_val = dhd_prot_data_path_tx_timestamp_logging(ts->dhdp, 0, FALSE); in dhd_timesync_doiovar()
657 dhd_prot_data_path_tx_timestamp_logging(ts->dhdp, int_val, TRUE); in dhd_timesync_doiovar()
660 int_val = dhd_prot_data_path_rx_timestamp_logging(ts->dhdp, 0, FALSE); in dhd_timesync_doiovar()
664 dhd_prot_data_path_rx_timestamp_logging(ts->dhdp, int_val, TRUE); in dhd_timesync_doiovar()
667 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
671 ts->h_tsconf_period = int_val; in dhd_timesync_doiovar()
674 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
678 bcopy(&ts->h_tsconf_period, arg, val_size); in dhd_timesync_doiovar()
681 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
685 ts->h_clkid_max = int_val; in dhd_timesync_doiovar()
688 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
692 bcopy(&ts->h_clkid_max, arg, val_size); in dhd_timesync_doiovar()
696 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
700 ts->h_clkid_min = int_val; in dhd_timesync_doiovar()
703 if (ts->active_ipc_version < 7) { in dhd_timesync_doiovar()
707 bcopy(&ts->h_clkid_min, arg, val_size); in dhd_timesync_doiovar()
719 dhd_timesync_iovar_op(dhd_ts_t *ts, const char *name, in dhd_timesync_iovar_op() argument
765 bcmerror = dhd_timesync_doiovar(ts, vi, actionid, name, params, plen, arg, len, val_size); in dhd_timesync_iovar_op()
772 dhd_timesync_handle_host_ts_complete(dhd_ts_t *ts, uint16 xt_id, uint16 status) in dhd_timesync_handle_host_ts_complete() argument
774 if (ts == NULL) { in dhd_timesync_handle_host_ts_complete()
779 if (xt_id == ts->xt_ids.host_clk_info) { in dhd_timesync_handle_host_ts_complete()
780 if (ts->host_ts_host_clk_info_buffer_in_use != TRUE) { in dhd_timesync_handle_host_ts_complete()
782 ts->xt_ids.host_clk_info)); in dhd_timesync_handle_host_ts_complete()
785 ts->host_ts_host_clk_info_buffer_in_use = FALSE; in dhd_timesync_handle_host_ts_complete()
787 ts->pending_requests--; in dhd_timesync_handle_host_ts_complete()
791 dhd_timesync_notify_ipc_rev(dhd_ts_t *ts, uint32 ipc_rev) in dhd_timesync_notify_ipc_rev() argument
793 if (ts != NULL) in dhd_timesync_notify_ipc_rev()
794 ts->active_ipc_version = ipc_rev; in dhd_timesync_notify_ipc_rev()
798 dhd_ts_fw_clksrc_dump(dhd_ts_t *ts, char *buf, int buflen) in dhd_ts_fw_clksrc_dump() argument
806 fw_ts_log = &ts->fw_ts_log; in dhd_ts_fw_clksrc_dump()
832 dhd_ts_fw_clksrc_log(dhd_ts_t *ts, uchar *tlvs, uint32 tlv_len, uint32 seqnum) in dhd_ts_fw_clksrc_log() argument
838 fw_ts_log = &ts->fw_ts_log; in dhd_ts_fw_clksrc_log()
843 clk_src = &fw_ts_log->ts_log[(fw_clock_info->ts.ts_high >> 28) & 0xF]; in dhd_ts_fw_clksrc_log()
848 clk_src->log[fw_ts_log->cur_idx].ts_low = fw_clock_info->ts.ts_low; in dhd_ts_fw_clksrc_log()
849 clk_src->log[fw_ts_log->cur_idx].ts_high = fw_clock_info->ts.ts_high; in dhd_ts_fw_clksrc_log()
860 dhd_timesync_handle_fw_timestamp(dhd_ts_t *ts, uchar *tlvs, uint32 tlv_len, uint32 seqnum) in dhd_timesync_handle_fw_timestamp() argument
870 if (ts == NULL) { in dhd_timesync_handle_fw_timestamp()
910 if (seqnum != (ts->fw_ts_capture_cnt + 1)) { in dhd_timesync_handle_fw_timestamp()
912 ts->fw_ts_capture_cnt + 1, seqnum, seqnum)); in dhd_timesync_handle_fw_timestamp()
913 ts->fw_ts_disc_cnt++; in dhd_timesync_handle_fw_timestamp()
915 ts->fw_ts_capture_cnt = seqnum; in dhd_timesync_handle_fw_timestamp()
918 bcopy(tlvs, &ts->fw_tlv[0], tlv_len); in dhd_timesync_handle_fw_timestamp()
919 ts->fw_tlv_len = tlv_len; in dhd_timesync_handle_fw_timestamp()
921 dhd_ts_fw_clksrc_log(ts, tlvs, tlv_len, seqnum); in dhd_timesync_handle_fw_timestamp()
923 if (ts->fwts2hsts_delay_wdcount != 0) { in dhd_timesync_handle_fw_timestamp()
932 ts->fwts2hsts_delay_wdcount = ts->fwts2hsts_delay / dhd_watchdog_ms; in dhd_timesync_handle_fw_timestamp()
933 if (ts->fwts2hsts_delay_wdcount == 0) in dhd_timesync_handle_fw_timestamp()
934 ts->fwts2hsts_delay_wdcount = 1; in dhd_timesync_handle_fw_timestamp()
938 dhd_timesync_send_host_timestamping_config(dhd_ts_t *ts, bool inject_err) in dhd_timesync_send_host_timestamping_config() argument
943 if (ts->timesync_disabled) { in dhd_timesync_send_host_timestamping_config()
954 ts_config.period_ms = ts->h_tsconf_period; in dhd_timesync_send_host_timestamping_config()
958 ts_config.reset_cnt = ts->host_reset_cnt + 1; in dhd_timesync_send_host_timestamping_config()
961 if (ts->nodrop_config) { in dhd_timesync_send_host_timestamping_config()
970 ts->host_ts_capture_cnt)); in dhd_timesync_send_host_timestamping_config()
971 ret_val = dhd_prot_send_host_timestamp(ts->dhdp, (uchar *)&ts_config, sizeof(ts_config), in dhd_timesync_send_host_timestamping_config()
972 ts->host_ts_capture_cnt, ts->xt_id); in dhd_timesync_send_host_timestamping_config()
979 ts->host_reset_cnt++; in dhd_timesync_send_host_timestamping_config()
982 ts->pending_requests++; in dhd_timesync_send_host_timestamping_config()
983 ts->xt_ids.host_timestamping_config = ts->xt_id; in dhd_timesync_send_host_timestamping_config()
984 ts->xt_id++; in dhd_timesync_send_host_timestamping_config()
989 dhd_timesync_send_host_clock_selection(dhd_ts_t *ts) in dhd_timesync_send_host_clock_selection() argument
994 if (ts->timesync_disabled) { in dhd_timesync_send_host_clock_selection()
1003 ts_clk_sel.min_clk_idx = ts->h_clkid_min; in dhd_timesync_send_host_clock_selection()
1004 ts_clk_sel.max_clk_idx = ts->h_clkid_max; in dhd_timesync_send_host_clock_selection()
1008 ts->host_ts_capture_cnt)); in dhd_timesync_send_host_clock_selection()
1009 ret_val = dhd_prot_send_host_timestamp(ts->dhdp, (uchar *)&ts_clk_sel, sizeof(ts_clk_sel), in dhd_timesync_send_host_clock_selection()
1010 ts->host_ts_capture_cnt, ts->xt_id); in dhd_timesync_send_host_clock_selection()
1015 ts->xt_ids.host_clock_selection = ts->xt_id; in dhd_timesync_send_host_clock_selection()
1016 ts->xt_id++; in dhd_timesync_send_host_clock_selection()
1017 ts->pending_requests++; in dhd_timesync_send_host_clock_selection()
1022 dhd_timesync_send_host_clk_info(dhd_ts_t *ts) in dhd_timesync_send_host_clk_info() argument
1029 if (ts->timesync_disabled) { in dhd_timesync_send_host_clk_info()
1033 if (ts->host_ts_host_clk_info_buffer_in_use == TRUE) { in dhd_timesync_send_host_clk_info()
1037 clk_info_buffer = &ts->host_ts_host_clk_info_buffer[0]; in dhd_timesync_send_host_clk_info()
1038 clk_info_bufsize = sizeof(ts->host_ts_host_clk_info_buffer); in dhd_timesync_send_host_clk_info()
1041 clk_info_bufsize, ts->fw_tlv_len, (uint32)sizeof(*host_clock_info))); in dhd_timesync_send_host_clk_info()
1062 if (clk_info_bufsize < ts->fw_tlv_len) { in dhd_timesync_send_host_clk_info()
1064 clk_info_bufsize, ts->fw_tlv_len)); in dhd_timesync_send_host_clk_info()
1067 bcopy(ts->fw_tlv, clk_info_buffer, ts->fw_tlv_len); in dhd_timesync_send_host_clk_info()
1068 clk_info_bufsize -= ts->fw_tlv_len; in dhd_timesync_send_host_clk_info()
1071 (uint32)(sizeof(ts->host_ts_host_clk_info_buffer) - clk_info_bufsize), in dhd_timesync_send_host_clk_info()
1072 ts->xt_id, ts->host_ts_capture_cnt)); in dhd_timesync_send_host_clk_info()
1074 bcm_print_bytes("host ts", (uchar *)ts->host_ts_host_clk_info_buffer, in dhd_timesync_send_host_clk_info()
1075 sizeof(ts->host_ts_host_clk_info_buffer) - clk_info_bufsize); in dhd_timesync_send_host_clk_info()
1077 ret_val = dhd_prot_send_host_timestamp(ts->dhdp, (uchar *)ts->host_ts_host_clk_info_buffer, in dhd_timesync_send_host_clk_info()
1078 sizeof(ts->host_ts_host_clk_info_buffer) - clk_info_bufsize, in dhd_timesync_send_host_clk_info()
1079 ts->host_ts_capture_cnt, ts->xt_id); in dhd_timesync_send_host_clk_info()
1084 ts->host_ts_host_clk_info_buffer_in_use = TRUE; in dhd_timesync_send_host_clk_info()
1085 ts->xt_ids.host_clk_info = ts->xt_id; in dhd_timesync_send_host_clk_info()
1086 ts->xt_id++; in dhd_timesync_send_host_clk_info()
1087 ts->pending_requests++; in dhd_timesync_send_host_clk_info()
1092 dhd_timesync_send_D2H_clk_correction(dhd_ts_t *ts) in dhd_timesync_send_D2H_clk_correction() argument
1097 if (ts->timesync_disabled) { in dhd_timesync_send_D2H_clk_correction()
1108 ts_clk_crtion.clk_id = ts->h_clkid_max; in dhd_timesync_send_D2H_clk_correction()
1109 ts_clk_crtion.m.low = ts->correction_m.low; in dhd_timesync_send_D2H_clk_correction()
1110 ts_clk_crtion.m.high = ts->correction_m.high; in dhd_timesync_send_D2H_clk_correction()
1111 ts_clk_crtion.b.low = ts->correction_b.low; in dhd_timesync_send_D2H_clk_correction()
1112 ts_clk_crtion.b.high = ts->correction_b.high; in dhd_timesync_send_D2H_clk_correction()
1120 ts->host_ts_capture_cnt)); in dhd_timesync_send_D2H_clk_correction()
1122 ret_val = dhd_prot_send_host_timestamp(ts->dhdp, (uchar *)&ts_clk_crtion, in dhd_timesync_send_D2H_clk_correction()
1123 sizeof(ts_clk_crtion), ts->host_ts_capture_cnt, ts->xt_id); in dhd_timesync_send_D2H_clk_correction()
1128 ts->xt_ids.d2h_clk_correction = ts->xt_id; in dhd_timesync_send_D2H_clk_correction()
1129 ts->xt_id++; in dhd_timesync_send_D2H_clk_correction()
1130 ts->pending_requests++; in dhd_timesync_send_D2H_clk_correction()
1137 return (dhdp->ts->fwts2hsts_delay != 0); in dhd_timesync_delay_post_bufs()
1143 dhd_ts_t *ts = dhdp->ts; in dhd_timesync_watchdog() local
1145 if (ts == NULL) in dhd_timesync_watchdog()
1148 ts->last_ts_watchdog_time = OSL_LOCALTIME_NS(); in dhd_timesync_watchdog()
1149 ts->ts_watchdog_calls++; in dhd_timesync_watchdog()
1152 if (ts->fwts2hsts_delay_wdcount) { in dhd_timesync_watchdog()
1153 ts->fwts2hsts_delay_wdcount--; in dhd_timesync_watchdog()
1154 if (ts->fwts2hsts_delay != 0 && dhdp->busstate == DHD_BUS_DATA && in dhd_timesync_watchdog()
1155 (ts->fwts2hsts_delay_wdcount == 0)) { in dhd_timesync_watchdog()
1157 dhd_timesync_send_host_clk_info(ts); in dhd_timesync_watchdog()
1180 dhd_timesync_log_tx_timestamp(dhd_ts_t *ts, uint16 flowid, uint8 intf, in dhd_timesync_log_tx_timestamp() argument
1183 if (ts != NULL) { in dhd_timesync_log_tx_timestamp()
1184 dhd_timesync_log_timestamp_item(&ts->tx_timestamps, flowid, intf, in dhd_timesync_log_tx_timestamp()
1190 dhd_timesync_log_rx_timestamp(dhd_ts_t *ts, uint8 intf, uint32 ts_low, uint32 ts_high, in dhd_timesync_log_rx_timestamp() argument
1193 if (ts != NULL) { in dhd_timesync_log_rx_timestamp()
1194 dhd_timesync_log_timestamp_item(&ts->rx_timestamps, 0, intf, in dhd_timesync_log_rx_timestamp()
1202 dhd_ts_t *ts; in dhd_timesync_control() local
1206 ts = dhdp->ts; in dhd_timesync_control()
1207 if (ts != NULL) { in dhd_timesync_control()
1210 ts->fw_ts_capture_cnt)); in dhd_timesync_control()
1212 ts->fw_ts_capture_cnt = 0; in dhd_timesync_control()
1215 if ((ts->active_ipc_version >= 7) && (ts->h_tsconf_period != 0)) { in dhd_timesync_control()
1218 tsconf_period = ts->h_tsconf_period; in dhd_timesync_control()
1219 ts->h_tsconf_period = 0; in dhd_timesync_control()
1221 dhd_timesync_send_host_timestamping_config(ts, FALSE); in dhd_timesync_control()
1222 ts->h_tsconf_period = tsconf_period; in dhd_timesync_control()
1224 ts->timesync_disabled = TRUE; in dhd_timesync_control()
1225 ts->suspend_req++; in dhd_timesync_control()
1229 ts->fw_ts_capture_cnt)); in dhd_timesync_control()
1231 ts->timesync_disabled = FALSE; in dhd_timesync_control()
1232 ts->resume_req++; in dhd_timesync_control()
1234 if ((ts->active_ipc_version >= 7) && (ts->h_tsconf_period != 0)) in dhd_timesync_control()
1235 dhd_timesync_send_host_timestamping_config(ts, FALSE); in dhd_timesync_control()