Home
last modified time | relevance | path

Searched refs:ptp_clock (Results 1 – 25 of 164) sorted by relevance

1234567

/linux/include/linux/
H A Dptp_clock_kernel.h228 struct ptp_clock;
344 extern struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info,
353 extern int ptp_clock_unregister(struct ptp_clock *ptp);
362 extern void ptp_clock_event(struct ptp_clock *ptp,
371 extern int ptp_clock_index(struct ptp_clock *ptp);
407 int ptp_find_pin(struct ptp_clock *ptp,
425 int ptp_find_pin_unlocked(struct ptp_clock *ptp,
436 int ptp_schedule_worker(struct ptp_clock *ptp, unsigned long delay);
443 void ptp_cancel_worker_sync(struct ptp_clock *ptp);
446 static inline struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, in ptp_clock_register()
[all …]
/linux/drivers/ptp/
H A Dptp_private.h44 struct ptp_clock { struct
78 struct ptp_clock *pclock; argument
80 struct ptp_clock *clock;
105 static inline bool ptp_vclock_in_use(struct ptp_clock *ptp) in ptp_vclock_in_use()
131 static inline bool ptp_clock_freerun(struct ptp_clock *ptp) in ptp_clock_freerun()
145 void ptp_disable_all_events(struct ptp_clock *ptp);
148 int ptp_set_pinfunc(struct ptp_clock *ptp, unsigned int pin,
170 int ptp_populate_pin_groups(struct ptp_clock *ptp);
171 void ptp_cleanup_pin_groups(struct ptp_clock *ptp);
173 struct ptp_vclock *ptp_vclock_register(struct ptp_clock *pclock);
H A Dptp_clock.c97 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); in ptp_clock_settime()
112 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); in ptp_clock_gettime()
124 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); in ptp_clock_adjtime()
204 struct ptp_clock *ptp = container_of(dev, struct ptp_clock, dev); in ptp_clock_release()
240 struct ptp_clock *ptp = container_of(work, struct ptp_clock, in ptp_aux_kworker()
255 struct ptp_clock *ptp = filep->private_data; in ptp_n_perout_loopback_read()
273 struct ptp_clock *ptp = filep->private_data; in ptp_perout_loopback_write()
316 struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, in ptp_clock_register()
319 struct ptp_clock *ptp; in ptp_clock_register()
331 ptp = kzalloc_obj(struct ptp_clock); in ptp_clock_register()
[all …]
H A Dptp_sysfs.c16 struct ptp_clock *ptp = dev_get_drvdata(dev); in clock_name_show()
25 struct ptp_clock *ptp = dev_get_drvdata(dev); in max_phase_adjustment_show()
35 struct ptp_clock *ptp = dev_get_drvdata(dev); \
51 struct ptp_clock *ptp = dev_get_drvdata(dev); in extts_enable_store()
76 struct ptp_clock *ptp = dev_get_drvdata(dev); in extts_fifo_show()
115 struct ptp_clock *ptp = dev_get_drvdata(dev); in period_store()
143 struct ptp_clock *ptp = dev_get_drvdata(dev); in pps_enable_store()
168 struct ptp_clock *ptp = dev_get_drvdata(dev); in unregister_vclock()
190 struct ptp_clock *ptp = dev_get_drvdata(dev); in n_vclocks_show()
207 struct ptp_clock *ptp = dev_get_drvdata(dev); in n_vclocks_store()
[all …]
H A Dptp_chardev.c50 void ptp_disable_all_events(struct ptp_clock *ptp) in ptp_disable_all_events()
70 int ptp_set_pinfunc(struct ptp_clock *ptp, unsigned int pin, in ptp_set_pinfunc()
135 struct ptp_clock *ptp = container_of(pccontext->clk, struct ptp_clock, clock); in ptp_open()
169 struct ptp_clock *ptp = in ptp_release()
170 container_of(pccontext->clk, struct ptp_clock, clock); in ptp_release()
181 static long ptp_clock_getcaps(struct ptp_clock *ptp, void __user *arg) in ptp_clock_getcaps()
201 static long ptp_extts_request(struct ptp_clock *ptp, unsigned int cmd, void __user *arg) in ptp_extts_request()
247 static long ptp_perout_request(struct ptp_clock *ptp, unsigned int cmd, void __user *arg) in ptp_perout_request()
302 static long ptp_enable_pps(struct ptp_clock *ptp, bool enable) in ptp_enable_pps()
317 static long ptp_sys_offset_precise(struct ptp_clock *ptp, void __user *arg, in ptp_sys_offset_precise()
[all …]
H A Dptp_kvm_common.c21 struct ptp_clock *ptp_clock; member
132 ptp_clock_unregister(kvm_ptp_clock.ptp_clock); in ptp_kvm_exit()
149 kvm_ptp_clock.ptp_clock = ptp_clock_register(&kvm_ptp_clock.caps, NULL); in ptp_kvm_init()
151 return PTR_ERR_OR_ZERO(kvm_ptp_clock.ptp_clock); in ptp_kvm_init()
H A Dptp_vmclock.c50 struct ptp_clock *ptp_clock; member
337 static struct ptp_clock *vmclock_ptp_register(struct device *dev, in vmclock_ptp_register()
645 if (st->ptp_clock) in vmclock_remove()
646 ptp_clock_unregister(st->ptp_clock); in vmclock_remove()
748 st->ptp_clock = vmclock_ptp_register(dev, st); in vmclock_probe()
749 if (IS_ERR(st->ptp_clock)) { in vmclock_probe()
750 ret = PTR_ERR(st->ptp_clock); in vmclock_probe()
751 st->ptp_clock = NULL; in vmclock_probe()
756 if (!st->miscdev.minor && !st->ptp_clock) { in vmclock_probe()
764 (st->miscdev.minor && st->ptp_clock) ? ", " : "", in vmclock_probe()
[all …]
H A Dptp_pch.c114 struct ptp_clock *ptp_clock; member
311 ptp_clock_event(pch_dev->ptp_clock, &event); in isr()
322 ptp_clock_event(pch_dev->ptp_clock, &event); in isr()
445 ptp_clock_unregister(chip->ptp_clock); in pch_remove()
475 chip->ptp_clock = ptp_clock_register(&chip->caps, &pdev->dev); in pch_probe()
476 if (IS_ERR(chip->ptp_clock)) in pch_probe()
477 return PTR_ERR(chip->ptp_clock); in pch_probe()
514 ptp_clock_unregister(chip->ptp_clock); in pch_probe()
H A Dptp_vclock.c92 struct ptp_clock *pptp = vclock->pclock; in ptp_vclock_gettimex()
129 struct ptp_clock *pptp = vclock->pclock; in ptp_vclock_getcrosststamp()
157 static void ptp_vclock_set_subclass(struct ptp_clock *ptp) in ptp_vclock_set_subclass()
175 struct ptp_clock *ptp = vclock->pclock; in ptp_vclock_read()
190 struct ptp_vclock *ptp_vclock_register(struct ptp_clock *pclock) in ptp_vclock_register()
243 struct ptp_clock *ptp; in ptp_get_vclocks_index()
H A Dptp_dfl_tod.c65 struct ptp_clock *ptp_clock; member
299 dt->ptp_clock = ptp_clock_register(&dt->ptp_clock_ops, dev); in dfl_tod_probe()
300 if (IS_ERR(dt->ptp_clock)) in dfl_tod_probe()
301 return dev_err_probe(dt->dev, PTR_ERR(dt->ptp_clock), in dfl_tod_probe()
311 ptp_clock_unregister(dt->ptp_clock); in dfl_tod_remove()
/linux/drivers/net/ethernet/xscale/
H A Dptp_ixp46x.c27 struct ptp_clock *ptp_clock; member
91 ptp_clock_event(ixp_clock->ptp_clock, &event); in isr()
105 ptp_clock_event(ixp_clock->ptp_clock, &event); in isr()
239 *phc_index = ptp_clock_index(ixp_clock.ptp_clock); in ixp46x_ptp_find()
241 if (!ixp_clock.ptp_clock) in ixp46x_ptp_find()
251 struct ptp_clock *ptp_clock = d; in ptp_ixp_unregister_action() local
253 ptp_clock_unregister(ptp_clock); in ptp_ixp_unregister_action()
254 ixp_clock.ptp_clock = NULL; in ptp_ixp_unregister_action()
271 ixp_clock.ptp_clock = ptp_clock_register(&ixp_clock.caps, NULL); in ptp_ixp_probe()
273 if (IS_ERR(ixp_clock.ptp_clock)) in ptp_ixp_probe()
[all …]
/linux/drivers/virtio/
H A Dvirtio_rtc_ptp.c31 struct ptp_clock *ptp_clock; member
251 int ret = ptp_clock_unregister(vio_ptp->ptp_clock); in viortc_ptp_unregister()
308 struct ptp_clock *ptp_clock; in viortc_ptp_register() local
333 ptp_clock = ptp_clock_register(&vio_ptp->ptp_info, parent_dev); in viortc_ptp_register()
334 if (IS_ERR(ptp_clock)) in viortc_ptp_register()
337 vio_ptp->ptp_clock = ptp_clock; in viortc_ptp_register()
342 ret = PTR_ERR(ptp_clock); in viortc_ptp_register()
/linux/drivers/net/wireless/intel/iwlwifi/mvm/
H A Dptp.c165 if (!mvm->ptp_data.ptp_clock) { in iwl_mvm_phc_get_crosstimestamp()
280 if (WARN_ON(mvm->ptp_data.ptp_clock)) in iwl_mvm_ptp_init()
300 mvm->ptp_data.ptp_clock = in iwl_mvm_ptp_init()
303 if (IS_ERR(mvm->ptp_data.ptp_clock)) { in iwl_mvm_ptp_init()
305 PTR_ERR(mvm->ptp_data.ptp_clock)); in iwl_mvm_ptp_init()
306 mvm->ptp_data.ptp_clock = NULL; in iwl_mvm_ptp_init()
307 } else if (mvm->ptp_data.ptp_clock) { in iwl_mvm_ptp_init()
310 ptp_clock_index(mvm->ptp_data.ptp_clock)); in iwl_mvm_ptp_init()
321 if (mvm->ptp_data.ptp_clock) { in iwl_mvm_ptp_remove()
324 ptp_clock_index(mvm->ptp_data.ptp_clock)); in iwl_mvm_ptp_remove()
[all …]
/linux/drivers/net/wireless/intel/iwlwifi/mld/
H A Dptp.c280 if (WARN_ON(mld->ptp_data.ptp_clock)) in iwl_mld_ptp_init()
301 mld->ptp_data.ptp_clock = in iwl_mld_ptp_init()
304 if (IS_ERR_OR_NULL(mld->ptp_data.ptp_clock)) { in iwl_mld_ptp_init()
306 PTR_ERR(mld->ptp_data.ptp_clock)); in iwl_mld_ptp_init()
307 mld->ptp_data.ptp_clock = NULL; in iwl_mld_ptp_init()
311 ptp_clock_index(mld->ptp_data.ptp_clock)); in iwl_mld_ptp_init()
317 if (mld->ptp_data.ptp_clock) { in iwl_mld_ptp_remove()
320 ptp_clock_index(mld->ptp_data.ptp_clock)); in iwl_mld_ptp_remove()
322 ptp_clock_unregister(mld->ptp_data.ptp_clock); in iwl_mld_ptp_remove()
323 mld->ptp_data.ptp_clock = NULL; in iwl_mld_ptp_remove()
/linux/drivers/net/ethernet/marvell/mvpp2/
H A Dmvpp2_tai.c58 struct ptp_clock *ptp_clock; member
342 return ptp_clock_index(tai->ptp_clock); in mvpp22_tai_ptp_clock_index()
377 ptp_schedule_worker(tai->ptp_clock, delay); in mvpp22_tai_start()
382 ptp_cancel_worker_sync(tai->ptp_clock); in mvpp22_tai_stop()
389 if (!IS_ERR(tai->ptp_clock)) in mvpp22_tai_remove()
390 ptp_clock_unregister(tai->ptp_clock); in mvpp22_tai_remove()
450 tai->ptp_clock = ptp_clock_register(&tai->caps, dev); in mvpp22_tai_probe()
451 if (IS_ERR(tai->ptp_clock)) in mvpp22_tai_probe()
452 return PTR_ERR(tai->ptp_clock); in mvpp22_tai_probe()
/linux/drivers/net/ethernet/mellanox/mlx4/
H A Den_clock.c90 if (mdev->ptp_clock) { in mlx4_en_remove_timestamp()
91 ptp_clock_unregister(mdev->ptp_clock); in mlx4_en_remove_timestamp()
92 mdev->ptp_clock = NULL; in mlx4_en_remove_timestamp()
270 if (mdev->ptp_clock) in mlx4_en_init_timestamp()
292 mdev->ptp_clock = ptp_clock_register(&mdev->ptp_clock_info, in mlx4_en_init_timestamp()
294 if (IS_ERR(mdev->ptp_clock)) { in mlx4_en_init_timestamp()
295 mdev->ptp_clock = NULL; in mlx4_en_init_timestamp()
297 } else if (mdev->ptp_clock) { in mlx4_en_init_timestamp()
/linux/drivers/net/ethernet/intel/e1000e/
H A Dptp.c268 adapter->ptp_clock = NULL; in e1000e_ptp_init()
327 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info, in e1000e_ptp_init()
329 if (IS_ERR(adapter->ptp_clock)) { in e1000e_ptp_init()
330 adapter->ptp_clock = NULL; in e1000e_ptp_init()
332 } else if (adapter->ptp_clock) { in e1000e_ptp_init()
350 if (adapter->ptp_clock) { in e1000e_ptp_remove()
351 ptp_clock_unregister(adapter->ptp_clock); in e1000e_ptp_remove()
352 adapter->ptp_clock = NULL; in e1000e_ptp_remove()
/linux/drivers/net/ethernet/engleder/
H A Dtsnep_ptp.c222 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info, in tsnep_ptp_init()
224 if (IS_ERR(adapter->ptp_clock)) { in tsnep_ptp_init()
227 retval = PTR_ERR(adapter->ptp_clock); in tsnep_ptp_init()
228 adapter->ptp_clock = NULL; in tsnep_ptp_init()
229 } else if (adapter->ptp_clock) { in tsnep_ptp_init()
238 if (adapter->ptp_clock) { in tsnep_ptp_cleanup()
239 ptp_clock_unregister(adapter->ptp_clock); in tsnep_ptp_cleanup()
/linux/drivers/net/ethernet/chelsio/cxgb4/
H A Dcxgb4_ptp.c427 if (!IS_ERR_OR_NULL(adapter->ptp_clock)) in cxgb4_ptp_init()
434 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info, in cxgb4_ptp_init()
436 if (IS_ERR_OR_NULL(adapter->ptp_clock)) { in cxgb4_ptp_init()
437 adapter->ptp_clock = NULL; in cxgb4_ptp_init()
446 ptp_clock_unregister(adapter->ptp_clock); in cxgb4_ptp_init()
447 adapter->ptp_clock = NULL; in cxgb4_ptp_init()
464 if (adapter->ptp_clock) { in cxgb4_ptp_stop()
465 ptp_clock_unregister(adapter->ptp_clock); in cxgb4_ptp_stop()
466 adapter->ptp_clock = NULL; in cxgb4_ptp_stop()
/linux/drivers/net/ethernet/cavium/common/
H A Dcavium_ptp.h24 struct ptp_clock *ptp_clock; member
46 return ptp_clock_index(clock->ptp_clock); in cavium_ptp_clock_index()
/linux/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt_ptp.c305 ptp_clock_event(bp->ptp_cfg->ptp_clock, &event); in bnxt_ptp_pps_event()
488 pin_id = ptp_find_pin(ptp->ptp_clock, PTP_PF_EXTTS, in bnxt_ptp_enable()
503 pin_id = ptp_find_pin(ptp->ptp_clock, PTP_PF_PEROUT, in bnxt_ptp_enable()
802 ptp_cancel_worker_sync(ptp->ptp_clock); in bnxt_ptp_free_txts_skbs()
812 ptp_schedule_worker(ptp->ptp_clock, 0); in bnxt_ptp_free_txts_skbs()
840 ptp_schedule_worker(ptp->ptp_clock, 0); in bnxt_get_tx_ts_p5()
1033 if (!ptp->ptp_clock) { in bnxt_ptp_timecounter_init()
1096 if (ptp->ptp_clock) { in bnxt_ptp_free()
1097 ptp_clock_unregister(ptp->ptp_clock); in bnxt_ptp_free()
1098 ptp->ptp_clock = NULL; in bnxt_ptp_free()
[all …]
/linux/drivers/net/ethernet/stmicro/stmmac/
H A Dstmmac_ptp.c368 priv->ptp_clock = ptp_clock_register(&priv->ptp_clock_ops, in stmmac_ptp_register()
370 if (IS_ERR(priv->ptp_clock)) { in stmmac_ptp_register()
372 priv->ptp_clock = NULL; in stmmac_ptp_register()
375 if (priv->ptp_clock) in stmmac_ptp_register()
389 if (priv->ptp_clock) { in stmmac_ptp_unregister()
390 ptp_clock_unregister(priv->ptp_clock); in stmmac_ptp_unregister()
391 priv->ptp_clock = NULL; in stmmac_ptp_unregister()
/linux/drivers/net/dsa/hirschmann/
H A Dhellcreek_ptp.c432 hellcreek->ptp_clock = ptp_clock_register(&hellcreek->ptp_clock_info, in hellcreek_ptp_setup()
434 if (IS_ERR(hellcreek->ptp_clock)) in hellcreek_ptp_setup()
435 return PTR_ERR(hellcreek->ptp_clock); in hellcreek_ptp_setup()
453 if (hellcreek->ptp_clock) in hellcreek_ptp_setup()
454 ptp_clock_unregister(hellcreek->ptp_clock); in hellcreek_ptp_setup()
469 if (hellcreek->ptp_clock) in hellcreek_ptp_free()
470 ptp_clock_unregister(hellcreek->ptp_clock); in hellcreek_ptp_free()
471 hellcreek->ptp_clock = NULL; in hellcreek_ptp_free()
/linux/drivers/net/ethernet/cadence/
H A Dmacb_ptp.c337 bp->ptp_clock = ptp_clock_register(&bp->ptp_clock_info, &dev->dev); in gem_ptp_init()
338 if (IS_ERR(bp->ptp_clock)) { in gem_ptp_init()
340 PTR_ERR(bp->ptp_clock)); in gem_ptp_init()
341 bp->ptp_clock = NULL; in gem_ptp_init()
343 } else if (bp->ptp_clock == NULL) { in gem_ptp_init()
360 if (bp->ptp_clock) { in gem_ptp_remove()
361 ptp_clock_unregister(bp->ptp_clock); in gem_ptp_remove()
362 bp->ptp_clock = NULL; in gem_ptp_remove()
/linux/drivers/net/ethernet/mscc/
H A Docelot_ptp.c214 pin = ptp_find_pin(ocelot->ptp_clock, PTP_PF_PEROUT, in ocelot_ptp_enable()
590 if (ocelot->ptp_clock) { in ocelot_get_ts_info()
591 info->phc_index = ptp_clock_index(ocelot->ptp_clock); in ocelot_get_ts_info()
872 struct ptp_clock *ptp_clock; in ocelot_init_timestamp() local
887 ptp_clock = ptp_clock_register(&ocelot->ptp_info, ocelot->dev); in ocelot_init_timestamp()
888 if (IS_ERR(ptp_clock)) in ocelot_init_timestamp()
889 return PTR_ERR(ptp_clock); in ocelot_init_timestamp()
891 if (!ptp_clock) in ocelot_init_timestamp()
894 ocelot->ptp_clock = ptp_clock; in ocelot_init_timestamp()
908 if (ocelot->ptp_clock) in ocelot_deinit_timestamp()
[all …]

1234567