Lines Matching full:ds

61 int sja1105_hwtstamp_set(struct dsa_switch *ds, int port, struct ifreq *ifr)  in sja1105_hwtstamp_set()  argument
63 struct sja1105_private *priv = ds->priv; in sja1105_hwtstamp_set()
104 int sja1105_hwtstamp_get(struct dsa_switch *ds, int port, struct ifreq *ifr) in sja1105_hwtstamp_get() argument
106 struct sja1105_private *priv = ds->priv; in sja1105_hwtstamp_get()
123 int sja1105_get_ts_info(struct dsa_switch *ds, int port, in sja1105_get_ts_info() argument
126 struct sja1105_private *priv = ds->priv; in sja1105_get_ts_info()
178 int sja1105_ptp_commit(struct dsa_switch *ds, struct sja1105_ptp_cmd *cmd, in sja1105_ptp_commit() argument
181 const struct sja1105_private *priv = ds->priv; in sja1105_ptp_commit()
212 static u64 sja1105_tstamp_reconstruct(struct dsa_switch *ds, u64 now, in sja1105_tstamp_reconstruct() argument
215 struct sja1105_private *priv = ds->priv; in sja1105_tstamp_reconstruct()
257 static int sja1105_ptpegr_ts_poll(struct dsa_switch *ds, int port, u64 *ts) in sja1105_ptpegr_ts_poll() argument
259 struct sja1105_private *priv = ds->priv; in sja1105_ptpegr_ts_poll()
333 dev_err_ratelimited(priv->ds->dev, in sja1105_extts_poll()
350 struct dsa_switch *ds = priv->ds; in sja1105_rxtstamp_work() local
362 dev_err(ds->dev, "Failed to read PTP clock: %d\n", rc); in sja1105_rxtstamp_work()
370 ts = sja1105_tstamp_reconstruct(ds, ticks, ts); in sja1105_rxtstamp_work()
385 bool sja1105_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) in sja1105_rxtstamp() argument
387 struct sja1105_private *priv = ds->priv; in sja1105_rxtstamp()
401 bool sja1110_rxtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) in sja1110_rxtstamp() argument
415 bool sja1105_port_rxtstamp(struct dsa_switch *ds, int port, in sja1105_port_rxtstamp() argument
418 struct sja1105_private *priv = ds->priv; in sja1105_port_rxtstamp()
420 return priv->info->rxtstamp(ds, port, skb); in sja1105_port_rxtstamp()
423 void sja1110_process_meta_tstamp(struct dsa_switch *ds, int port, u8 ts_id, in sja1110_process_meta_tstamp() argument
426 struct sja1105_private *priv = ds->priv; in sja1110_process_meta_tstamp()
460 void sja1110_txtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) in sja1110_txtstamp() argument
463 struct sja1105_private *priv = ds->priv; in sja1110_txtstamp()
486 void sja1105_port_txtstamp(struct dsa_switch *ds, int port, struct sk_buff *skb) in sja1105_port_txtstamp() argument
488 struct sja1105_private *priv = ds->priv; in sja1105_port_txtstamp()
501 priv->info->txtstamp(ds, port, skb); in sja1105_port_txtstamp()
504 static int sja1105_ptp_reset(struct dsa_switch *ds) in sja1105_ptp_reset() argument
506 struct sja1105_private *priv = ds->priv; in sja1105_ptp_reset()
515 dev_dbg(ds->dev, "Resetting PTP clock\n"); in sja1105_ptp_reset()
516 rc = sja1105_ptp_commit(ds, &cmd, SPI_WRITE); in sja1105_ptp_reset()
518 sja1105_tas_clockstep(priv->ds); in sja1105_ptp_reset()
526 int __sja1105_ptp_gettimex(struct dsa_switch *ds, u64 *ns, in __sja1105_ptp_gettimex() argument
529 struct sja1105_private *priv = ds->priv; in __sja1105_ptp_gettimex()
535 dev_err(ds->dev, "Failed to read PTP clock: %d\n", rc); in __sja1105_ptp_gettimex()
555 rc = __sja1105_ptp_gettimex(priv->ds, &now, ptp_sts); in sja1105_ptp_gettimex()
574 return sja1105_ptp_commit(priv->ds, &ptp_data->cmd, SPI_WRITE); in sja1105_ptp_mode_set()
578 int __sja1105_ptp_settime(struct dsa_switch *ds, u64 ns, in __sja1105_ptp_settime() argument
581 struct sja1105_private *priv = ds->priv; in __sja1105_ptp_settime()
587 dev_err(priv->ds->dev, "Failed to put PTPCLK in set mode\n"); in __sja1105_ptp_settime()
593 sja1105_tas_clockstep(priv->ds); in __sja1105_ptp_settime()
608 rc = __sja1105_ptp_settime(priv->ds, ns, NULL); in sja1105_ptp_settime()
637 sja1105_tas_adjfreq(priv->ds); in sja1105_ptp_adjfine()
645 int __sja1105_ptp_adjtime(struct dsa_switch *ds, s64 delta) in __sja1105_ptp_adjtime() argument
647 struct sja1105_private *priv = ds->priv; in __sja1105_ptp_adjtime()
653 dev_err(priv->ds->dev, "Failed to put PTPCLK in add mode\n"); in __sja1105_ptp_adjtime()
659 sja1105_tas_clockstep(priv->ds); in __sja1105_ptp_adjtime()
672 rc = __sja1105_ptp_adjtime(priv->ds, delta); in sja1105_ptp_adjtime()
781 rc = __sja1105_ptp_gettimex(priv->ds, &now, NULL); in sja1105_per_out_enable()
805 rc = sja1105_ptp_commit(priv->ds, &cmd, SPI_WRITE); in sja1105_per_out_enable()
895 int sja1105_ptp_clock_register(struct dsa_switch *ds) in sja1105_ptp_clock_register() argument
897 struct sja1105_private *priv = ds->priv; in sja1105_ptp_clock_register()
922 ptp_data->clock = ptp_clock_register(&ptp_data->caps, ds->dev); in sja1105_ptp_clock_register()
931 return sja1105_ptp_reset(ds); in sja1105_ptp_clock_register()
934 void sja1105_ptp_clock_unregister(struct dsa_switch *ds) in sja1105_ptp_clock_unregister() argument
936 struct sja1105_private *priv = ds->priv; in sja1105_ptp_clock_unregister()
950 void sja1105_ptp_txtstamp_skb(struct dsa_switch *ds, int port, in sja1105_ptp_txtstamp_skb() argument
953 struct sja1105_private *priv = ds->priv; in sja1105_ptp_txtstamp_skb()
963 rc = sja1105_ptpegr_ts_poll(ds, port, &ts); in sja1105_ptp_txtstamp_skb()
965 dev_err(ds->dev, "timed out polling for tstamp\n"); in sja1105_ptp_txtstamp_skb()
972 dev_err(ds->dev, "Failed to read PTP clock: %d\n", rc); in sja1105_ptp_txtstamp_skb()
977 ts = sja1105_tstamp_reconstruct(ds, ticks, ts); in sja1105_ptp_txtstamp_skb()