Lines Matching defs:efx_ptp_data
289 struct efx_ptp_data { struct
290 struct efx_nic *efx;
291 struct efx_channel *channel;
292 bool rx_ts_inline;
293 struct sk_buff_head rxq;
294 struct sk_buff_head txq;
295 struct list_head evt_list;
296 struct list_head evt_free_list;
297 spinlock_t evt_lock;
298 struct efx_ptp_event_rx rx_evts[MAX_RECEIVE_EVENTS];
299 struct workqueue_struct *workwq;
300 struct work_struct work;
301 bool reset_required;
302 u32 rxfilters[PTP_RXFILTERS_LEN];
303 size_t rxfilters_count;
304 struct hwtstamp_config config;
305 bool enabled;
306 unsigned int mode;
307 void (*ns_to_nic_time)(s64 ns, u32 *nic_major, u32 *nic_minor);
308 ktime_t (*nic_to_kernel_time)(u32 nic_major, u32 nic_minor,
310 struct {
315 } nic_time;
316 unsigned int min_synchronisation_ns;
317 unsigned int capabilities;
318 struct {
325 } ts_corrections;
326 efx_qword_t evt_frags[MAX_EVENT_FRAGS];
327 int evt_frag_idx;
328 int evt_code;
329 struct efx_buffer start;
330 struct pps_event_time host_time_pps;
331 unsigned int adjfreq_ppb_shift;
332 s64 current_adjfreq;
333 struct ptp_clock *phc_clock;
334 struct ptp_clock_info phc_clock_info;
335 struct work_struct pps_work;
336 struct workqueue_struct *pps_workwq;
337 bool nic_ts_enabled;
338 efx_dword_t txbuf[MCDI_TX_BUF_LEN(MC_CMD_PTP_IN_TRANSMIT_LENMAX)];
340 unsigned int good_syncs;
341 unsigned int fast_syncs;
342 unsigned int bad_syncs;
343 unsigned int sync_timeouts;
344 unsigned int no_time_syncs;
345 unsigned int invalid_sync_windows;
346 unsigned int undersize_sync_windows;
347 unsigned int oversize_sync_windows;
348 unsigned int rx_no_timestamp;
350 timeset[MC_CMD_PTP_OUT_SYNCHRONIZE_TIMESET_MAXNUM];
351 void (*xmit_skb)(struct efx_nic *efx, struct sk_buff *skb);