Lines Matching refs:adapter
39 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter, in e1000e_phc_adjfreq() local
41 struct e1000_hw *hw = &adapter->hw; in e1000e_phc_adjfreq()
57 ret_val = e1000e_get_base_timinca(adapter, &timinca); in e1000e_phc_adjfreq()
61 spin_lock_irqsave(&adapter->systim_lock, flags); in e1000e_phc_adjfreq()
76 spin_unlock_irqrestore(&adapter->systim_lock, flags); in e1000e_phc_adjfreq()
90 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter, in e1000e_phc_adjtime() local
94 spin_lock_irqsave(&adapter->systim_lock, flags); in e1000e_phc_adjtime()
95 timecounter_adjtime(&adapter->tc, delta); in e1000e_phc_adjtime()
96 spin_unlock_irqrestore(&adapter->systim_lock, flags); in e1000e_phc_adjtime()
111 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter, in e1000e_phc_gettime() local
116 spin_lock_irqsave(&adapter->systim_lock, flags); in e1000e_phc_gettime()
117 ns = timecounter_read(&adapter->tc); in e1000e_phc_gettime()
118 spin_unlock_irqrestore(&adapter->systim_lock, flags); in e1000e_phc_gettime()
136 struct e1000_adapter *adapter = container_of(ptp, struct e1000_adapter, in e1000e_phc_settime() local
144 spin_lock_irqsave(&adapter->systim_lock, flags); in e1000e_phc_settime()
145 timecounter_init(&adapter->tc, &adapter->cc, ns); in e1000e_phc_settime()
146 spin_unlock_irqrestore(&adapter->systim_lock, flags); in e1000e_phc_settime()
169 struct e1000_adapter *adapter = container_of(work, struct e1000_adapter, in e1000e_systim_overflow_work() local
171 struct e1000_hw *hw = &adapter->hw; in e1000e_systim_overflow_work()
174 adapter->ptp_clock_info.gettime64(&adapter->ptp_clock_info, &ts); in e1000e_systim_overflow_work()
179 schedule_delayed_work(&adapter->systim_overflow_work, in e1000e_systim_overflow_work()
205 void e1000e_ptp_init(struct e1000_adapter *adapter) in e1000e_ptp_init() argument
207 struct e1000_hw *hw = &adapter->hw; in e1000e_ptp_init()
209 adapter->ptp_clock = NULL; in e1000e_ptp_init()
211 if (!(adapter->flags & FLAG_HAS_HW_TIMESTAMP)) in e1000e_ptp_init()
214 adapter->ptp_clock_info = e1000e_ptp_clock_info; in e1000e_ptp_init()
216 snprintf(adapter->ptp_clock_info.name, in e1000e_ptp_init()
217 sizeof(adapter->ptp_clock_info.name), "%pm", in e1000e_ptp_init()
218 adapter->netdev->perm_addr); in e1000e_ptp_init()
227 adapter->ptp_clock_info.max_adj = 24000000 - 1; in e1000e_ptp_init()
233 adapter->ptp_clock_info.max_adj = 600000000 - 1; in e1000e_ptp_init()
239 INIT_DELAYED_WORK(&adapter->systim_overflow_work, in e1000e_ptp_init()
242 schedule_delayed_work(&adapter->systim_overflow_work, in e1000e_ptp_init()
245 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info, in e1000e_ptp_init()
246 &adapter->pdev->dev); in e1000e_ptp_init()
247 if (IS_ERR(adapter->ptp_clock)) { in e1000e_ptp_init()
248 adapter->ptp_clock = NULL; in e1000e_ptp_init()
261 void e1000e_ptp_remove(struct e1000_adapter *adapter) in e1000e_ptp_remove() argument
263 if (!(adapter->flags & FLAG_HAS_HW_TIMESTAMP)) in e1000e_ptp_remove()
266 cancel_delayed_work_sync(&adapter->systim_overflow_work); in e1000e_ptp_remove()
268 if (adapter->ptp_clock) { in e1000e_ptp_remove()
269 ptp_clock_unregister(adapter->ptp_clock); in e1000e_ptp_remove()
270 adapter->ptp_clock = NULL; in e1000e_ptp_remove()