Lines Matching defs:adapter
29 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter,
31 struct e1000_hw *hw = &adapter->hw;
38 ret_val = e1000e_get_base_timinca(adapter, &timinca);
42 spin_lock_irqsave(&adapter->systim_lock, flags);
52 adapter->ptp_delta = delta;
54 spin_unlock_irqrestore(&adapter->systim_lock, flags);
68 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter,
72 spin_lock_irqsave(&adapter->systim_lock, flags);
73 timecounter_adjtime(&adapter->tc, delta);
74 spin_unlock_irqrestore(&adapter->systim_lock, flags);
95 struct e1000_adapter *adapter = (struct e1000_adapter *)ctx;
96 struct e1000_hw *hw = &adapter->hw;
120 spin_lock_irqsave(&adapter->systim_lock, flags);
121 *device = ns_to_ktime(timecounter_cyc2time(&adapter->tc, dev_cycles));
122 spin_unlock_irqrestore(&adapter->systim_lock, flags);
143 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter,
147 adapter, NULL, xtstamp);
165 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter,
170 spin_lock_irqsave(&adapter->systim_lock, flags);
173 cycles = e1000e_read_systim(adapter, sts);
174 ns = timecounter_cyc2time(&adapter->tc, cycles);
176 spin_unlock_irqrestore(&adapter->systim_lock, flags);
194 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter,
202 spin_lock_irqsave(&adapter->systim_lock, flags);
203 timecounter_init(&adapter->tc, &adapter->cc, ns);
204 spin_unlock_irqrestore(&adapter->systim_lock, flags);
227 struct e1000_adapter *adapter = container_of(work, struct e1000_adapter,
229 struct e1000_hw *hw = &adapter->hw;
234 ns = timecounter_read(&adapter->tc);
240 schedule_delayed_work(&adapter->systim_overflow_work,
260 * @adapter: board private structure
266 void e1000e_ptp_init(struct e1000_adapter *adapter)
268 struct e1000_hw *hw = &adapter->hw;
270 adapter->ptp_clock = NULL;
272 if (!(adapter->flags & FLAG_HAS_HW_TIMESTAMP))
275 adapter->ptp_clock_info = e1000e_ptp_clock_info;
277 snprintf(adapter->ptp_clock_info.name,
278 sizeof(adapter->ptp_clock_info.name), "%pm",
279 adapter->netdev->perm_addr);
283 adapter->ptp_clock_info.max_adj = MAX_PPB_96MHZ;
287 adapter->ptp_clock_info.max_adj = MAX_PPB_96MHZ;
289 adapter->ptp_clock_info.max_adj = MAX_PPB_25MHZ;
292 adapter->ptp_clock_info.max_adj = MAX_PPB_24MHZ;
302 adapter->ptp_clock_info.max_adj = MAX_PPB_24MHZ;
304 adapter->ptp_clock_info.max_adj = MAX_PPB_38400KHZ;
308 adapter->ptp_clock_info.max_adj = MAX_PPB_25MHZ;
317 adapter->ptp_clock_info.getcrosststamp =
321 INIT_DELAYED_WORK(&adapter->systim_overflow_work,
324 schedule_delayed_work(&adapter->systim_overflow_work,
327 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info,
328 &adapter->pdev->dev);
329 if (IS_ERR(adapter->ptp_clock)) {
330 adapter->ptp_clock = NULL;
332 } else if (adapter->ptp_clock) {
339 * @adapter: board private structure
343 void e1000e_ptp_remove(struct e1000_adapter *adapter)
345 if (!(adapter->flags & FLAG_HAS_HW_TIMESTAMP))
348 cancel_delayed_work_sync(&adapter->systim_overflow_work);
350 if (adapter->ptp_clock) {
351 ptp_clock_unregister(adapter->ptp_clock);
352 adapter->ptp_clock = NULL;