/linux-6.12.1/include/linux/ |
D | ptp_clock_kernel.h | 200 struct ptp_clock; 316 extern struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, 325 extern int ptp_clock_unregister(struct ptp_clock *ptp); 334 extern void ptp_clock_event(struct ptp_clock *ptp, 343 extern int ptp_clock_index(struct ptp_clock *ptp); 361 int ptp_find_pin(struct ptp_clock *ptp, 379 int ptp_find_pin_unlocked(struct ptp_clock *ptp, 390 int ptp_schedule_worker(struct ptp_clock *ptp, unsigned long delay); 397 void ptp_cancel_worker_sync(struct ptp_clock *ptp); 400 static inline struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, in ptp_clock_register() [all …]
|
/linux-6.12.1/drivers/ptp/ |
D | ptp_private.h | 38 struct ptp_clock { struct 72 struct ptp_clock *pclock; argument 74 struct ptp_clock *clock; 99 static inline bool ptp_vclock_in_use(struct ptp_clock *ptp) in ptp_vclock_in_use() 115 static inline bool ptp_clock_freerun(struct ptp_clock *ptp) in ptp_clock_freerun() 130 int ptp_set_pinfunc(struct ptp_clock *ptp, unsigned int pin, 152 int ptp_populate_pin_groups(struct ptp_clock *ptp); 153 void ptp_cleanup_pin_groups(struct ptp_clock *ptp); 155 struct ptp_vclock *ptp_vclock_register(struct ptp_clock *pclock);
|
D | ptp_clock.c | 96 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); in ptp_clock_settime() 108 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); in ptp_clock_gettime() 120 struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock); in ptp_clock_adjtime() 190 struct ptp_clock *ptp = container_of(dev, struct ptp_clock, dev); in ptp_clock_release() 221 struct ptp_clock *ptp = container_of(work, struct ptp_clock, in ptp_aux_kworker() 234 struct ptp_clock *ptp_clock_register(struct ptp_clock_info *info, in ptp_clock_register() 237 struct ptp_clock *ptp; in ptp_clock_register() 247 ptp = kzalloc(sizeof(struct ptp_clock), GFP_KERNEL); in ptp_clock_register() 398 struct ptp_clock *ptp = dev_get_drvdata(dev); in unregister_vclock() 404 int ptp_clock_unregister(struct ptp_clock *ptp) in ptp_clock_unregister() [all …]
|
D | ptp_sysfs.c | 16 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 …]
|
D | ptp_kvm_common.c | 21 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()
|
D | ptp_pch.c | 113 struct ptp_clock *ptp_clock; member 310 ptp_clock_event(pch_dev->ptp_clock, &event); in isr() 321 ptp_clock_event(pch_dev->ptp_clock, &event); in isr() 444 ptp_clock_unregister(chip->ptp_clock); in pch_remove() 474 chip->ptp_clock = ptp_clock_register(&chip->caps, &pdev->dev); in pch_probe() 475 if (IS_ERR(chip->ptp_clock)) in pch_probe() 476 return PTR_ERR(chip->ptp_clock); in pch_probe() 513 ptp_clock_unregister(chip->ptp_clock); in pch_probe()
|
D | ptp_chardev.c | 49 int ptp_set_pinfunc(struct ptp_clock *ptp, unsigned int pin, in ptp_set_pinfunc() 108 struct ptp_clock *ptp = in ptp_open() 109 container_of(pccontext->clk, struct ptp_clock, clock); in ptp_open() 146 struct ptp_clock *ptp = in ptp_release() 147 container_of(pccontext->clk, struct ptp_clock, clock); in ptp_release() 162 struct ptp_clock *ptp = in ptp_ioctl() 163 container_of(pccontext->clk, struct ptp_clock, clock); in ptp_ioctl() 513 struct ptp_clock *ptp = in ptp_poll() 514 container_of(pccontext->clk, struct ptp_clock, clock); in ptp_poll() 531 struct ptp_clock *ptp = in ptp_read() [all …]
|
D | ptp_dfl_tod.c | 65 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()
|
D | ptp_fc3.h | 22 struct ptp_clock *ptp_clock; member
|
D | ptp_vclock.c | 92 struct ptp_clock *pptp = vclock->pclock; in ptp_vclock_gettimex() 129 struct ptp_clock *pptp = vclock->pclock; in ptp_vclock_getcrosststamp() 170 struct ptp_clock *ptp = vclock->pclock; in ptp_vclock_read() 185 struct ptp_vclock *ptp_vclock_register(struct ptp_clock *pclock) in ptp_vclock_register() 236 struct ptp_clock *ptp; in ptp_get_vclocks_index()
|
/linux-6.12.1/drivers/net/ethernet/xscale/ |
D | ptp_ixp46x.c | 27 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() 236 *phc_index = ptp_clock_index(ixp_clock.ptp_clock); in ixp46x_ptp_find() 238 if (!ixp_clock.ptp_clock) in ixp46x_ptp_find() 248 struct ptp_clock *ptp_clock = d; in ptp_ixp_unregister_action() local 250 ptp_clock_unregister(ptp_clock); in ptp_ixp_unregister_action() 251 ixp_clock.ptp_clock = NULL; in ptp_ixp_unregister_action() 268 ixp_clock.ptp_clock = ptp_clock_register(&ixp_clock.caps, NULL); in ptp_ixp_probe() 270 if (IS_ERR(ixp_clock.ptp_clock)) in ptp_ixp_probe() [all …]
|
/linux-6.12.1/drivers/net/wireless/intel/iwlwifi/mvm/ |
D | ptp.c | 165 if (!mvm->ptp_data.ptp_clock) { in iwl_mvm_phc_get_crosstimestamp() 274 if (WARN_ON(mvm->ptp_data.ptp_clock)) in iwl_mvm_ptp_init() 293 mvm->ptp_data.ptp_clock = in iwl_mvm_ptp_init() 296 if (IS_ERR(mvm->ptp_data.ptp_clock)) { in iwl_mvm_ptp_init() 298 PTR_ERR(mvm->ptp_data.ptp_clock)); in iwl_mvm_ptp_init() 299 mvm->ptp_data.ptp_clock = NULL; in iwl_mvm_ptp_init() 300 } else if (mvm->ptp_data.ptp_clock) { in iwl_mvm_ptp_init() 303 ptp_clock_index(mvm->ptp_data.ptp_clock)); in iwl_mvm_ptp_init() 314 if (mvm->ptp_data.ptp_clock) { in iwl_mvm_ptp_remove() 317 ptp_clock_index(mvm->ptp_data.ptp_clock)); in iwl_mvm_ptp_remove() [all …]
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx4/ |
D | en_clock.c | 90 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-6.12.1/drivers/net/ethernet/marvell/mvpp2/ |
D | mvpp2_tai.c | 58 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-6.12.1/drivers/net/ethernet/intel/e1000e/ |
D | ptp.c | 271 adapter->ptp_clock = NULL; in e1000e_ptp_init() 328 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info, in e1000e_ptp_init() 330 if (IS_ERR(adapter->ptp_clock)) { in e1000e_ptp_init() 331 adapter->ptp_clock = NULL; in e1000e_ptp_init() 333 } else if (adapter->ptp_clock) { in e1000e_ptp_init() 351 if (adapter->ptp_clock) { in e1000e_ptp_remove() 352 ptp_clock_unregister(adapter->ptp_clock); in e1000e_ptp_remove() 353 adapter->ptp_clock = NULL; in e1000e_ptp_remove()
|
/linux-6.12.1/drivers/net/ethernet/engleder/ |
D | tsnep_ptp.c | 226 adapter->ptp_clock = ptp_clock_register(&adapter->ptp_clock_info, in tsnep_ptp_init() 228 if (IS_ERR(adapter->ptp_clock)) { in tsnep_ptp_init() 231 retval = PTR_ERR(adapter->ptp_clock); in tsnep_ptp_init() 232 adapter->ptp_clock = NULL; in tsnep_ptp_init() 233 } else if (adapter->ptp_clock) { in tsnep_ptp_init() 242 if (adapter->ptp_clock) { in tsnep_ptp_cleanup() 243 ptp_clock_unregister(adapter->ptp_clock); in tsnep_ptp_cleanup()
|
/linux-6.12.1/drivers/net/ethernet/chelsio/cxgb4/ |
D | cxgb4_ptp.c | 427 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-6.12.1/drivers/net/ethernet/cavium/common/ |
D | cavium_ptp.h | 24 struct ptp_clock *ptp_clock; member 46 return ptp_clock_index(clock->ptp_clock); in cavium_ptp_clock_index()
|
/linux-6.12.1/drivers/net/ethernet/stmicro/stmmac/ |
D | stmmac_ptp.c | 316 priv->ptp_clock = ptp_clock_register(&priv->ptp_clock_ops, in stmmac_ptp_register() 318 if (IS_ERR(priv->ptp_clock)) { in stmmac_ptp_register() 320 priv->ptp_clock = NULL; in stmmac_ptp_register() 321 } else if (priv->ptp_clock) in stmmac_ptp_register() 333 if (priv->ptp_clock) { in stmmac_ptp_unregister() 334 ptp_clock_unregister(priv->ptp_clock); in stmmac_ptp_unregister() 335 priv->ptp_clock = NULL; in stmmac_ptp_unregister()
|
/linux-6.12.1/drivers/net/dsa/hirschmann/ |
D | hellcreek_ptp.c | 422 hellcreek->ptp_clock = ptp_clock_register(&hellcreek->ptp_clock_info, in hellcreek_ptp_setup() 424 if (IS_ERR(hellcreek->ptp_clock)) in hellcreek_ptp_setup() 425 return PTR_ERR(hellcreek->ptp_clock); in hellcreek_ptp_setup() 443 if (hellcreek->ptp_clock) in hellcreek_ptp_setup() 444 ptp_clock_unregister(hellcreek->ptp_clock); in hellcreek_ptp_setup() 459 if (hellcreek->ptp_clock) in hellcreek_ptp_free() 460 ptp_clock_unregister(hellcreek->ptp_clock); in hellcreek_ptp_free() 461 hellcreek->ptp_clock = NULL; in hellcreek_ptp_free()
|
/linux-6.12.1/drivers/net/ethernet/amd/xgbe/ |
D | xgbe-ptp.c | 218 struct ptp_clock *clock; in xgbe_ptp_register() 238 pdata->ptp_clock = clock; in xgbe_ptp_register() 265 if (pdata->ptp_clock) in xgbe_ptp_unregister() 266 ptp_clock_unregister(pdata->ptp_clock); in xgbe_ptp_unregister()
|
/linux-6.12.1/drivers/net/ethernet/mscc/ |
D | ocelot_ptp.c | 217 pin = ptp_find_pin(ocelot->ptp_clock, PTP_PF_PEROUT, in ocelot_ptp_enable() 585 if (ocelot->ptp_clock) { in ocelot_get_ts_info() 586 info->phc_index = ptp_clock_index(ocelot->ptp_clock); in ocelot_get_ts_info() 814 struct ptp_clock *ptp_clock; in ocelot_init_timestamp() local 829 ptp_clock = ptp_clock_register(&ocelot->ptp_info, ocelot->dev); in ocelot_init_timestamp() 830 if (IS_ERR(ptp_clock)) in ocelot_init_timestamp() 831 return PTR_ERR(ptp_clock); in ocelot_init_timestamp() 833 if (!ptp_clock) in ocelot_init_timestamp() 836 ocelot->ptp_clock = ptp_clock; in ocelot_init_timestamp() 850 if (ocelot->ptp_clock) in ocelot_deinit_timestamp() [all …]
|
/linux-6.12.1/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt_ptp.c | 281 ptp_clock_event(bp->ptp_cfg->ptp_clock, &event); in bnxt_ptp_pps_event() 468 pin_id = ptp_find_pin(ptp->ptp_clock, PTP_PF_EXTTS, in bnxt_ptp_enable() 483 pin_id = ptp_find_pin(ptp->ptp_clock, PTP_PF_PEROUT, in bnxt_ptp_enable() 805 ptp_schedule_worker(ptp->ptp_clock, 0); in bnxt_get_tx_ts_p5() 959 if (!ptp->ptp_clock) { in bnxt_ptp_timecounter_init() 1019 if (ptp->ptp_clock) { in bnxt_ptp_free() 1020 ptp_clock_unregister(ptp->ptp_clock); in bnxt_ptp_free() 1021 ptp->ptp_clock = NULL; in bnxt_ptp_free() 1039 if (ptp->ptp_clock && bnxt_pps_config_ok(bp)) in bnxt_ptp_init() 1064 ptp->ptp_clock = ptp_clock_register(&ptp->ptp_info, &bp->pdev->dev); in bnxt_ptp_init() [all …]
|
/linux-6.12.1/drivers/net/ethernet/marvell/octeontx2/nic/ |
D | otx2_ptp.c | 309 ptp_clock_event(ptp->ptp_clock, &event); in otx2_ptp_extts_check() 352 pin = ptp_find_pin(ptp->ptp_clock, PTP_PF_EXTTS, in otx2_ptp_enable() 462 ptp_ptr->ptp_clock = ptp_clock_register(&ptp_ptr->ptp_info, pfvf->dev); in otx2_ptp_init() 463 if (IS_ERR_OR_NULL(ptp_ptr->ptp_clock)) { in otx2_ptp_init() 464 err = ptp_ptr->ptp_clock ? in otx2_ptp_init() 465 PTR_ERR(ptp_ptr->ptp_clock) : -ENODEV; in otx2_ptp_init() 496 ptp_clock_unregister(ptp->ptp_clock); in otx2_ptp_destroy() 507 return ptp_clock_index(pfvf->ptp->ptp_clock); in otx2_ptp_clock_index()
|
/linux-6.12.1/drivers/net/ethernet/cadence/ |
D | macb_ptp.c | 335 bp->ptp_clock = ptp_clock_register(&bp->ptp_clock_info, &dev->dev); in gem_ptp_init() 336 if (IS_ERR(bp->ptp_clock)) { in gem_ptp_init() 338 PTR_ERR(bp->ptp_clock)); in gem_ptp_init() 339 bp->ptp_clock = NULL; in gem_ptp_init() 341 } else if (bp->ptp_clock == NULL) { in gem_ptp_init() 358 if (bp->ptp_clock) in gem_ptp_remove() 359 ptp_clock_unregister(bp->ptp_clock); in gem_ptp_remove()
|