Home
last modified time | relevance | path

Searched refs:mii_ts (Results 1 – 13 of 13) sorted by relevance

/Linux-v5.15/net/core/
Dtimestamping.c16 skb->dev->phydev->mii_ts)) in classify()
24 struct mii_timestamper *mii_ts; in skb_clone_tx_timestamp() local
35 mii_ts = skb->dev->phydev->mii_ts; in skb_clone_tx_timestamp()
36 if (likely(mii_ts->txtstamp)) { in skb_clone_tx_timestamp()
40 mii_ts->txtstamp(mii_ts, clone, type); in skb_clone_tx_timestamp()
47 struct mii_timestamper *mii_ts; in skb_defer_rx_timestamp() local
50 if (!skb->dev || !skb->dev->phydev || !skb->dev->phydev->mii_ts) in skb_defer_rx_timestamp()
65 mii_ts = skb->dev->phydev->mii_ts; in skb_defer_rx_timestamp()
66 if (likely(mii_ts->rxtstamp)) in skb_defer_rx_timestamp()
67 return mii_ts->rxtstamp(mii_ts, skb, type); in skb_defer_rx_timestamp()
/Linux-v5.15/drivers/net/phy/
Dmii_timestamper.c81 struct mii_timestamper *mii_ts = NULL; in register_mii_timestamper() local
89 mii_ts = desc->ctrl->probe_channel(desc->device, port); in register_mii_timestamper()
90 if (!IS_ERR(mii_ts)) { in register_mii_timestamper()
91 mii_ts->device = desc->device; in register_mii_timestamper()
99 return mii_ts ? mii_ts : ERR_PTR(-EPROBE_DEFER); in register_mii_timestamper()
109 void unregister_mii_timestamper(struct mii_timestamper *mii_ts) in unregister_mii_timestamper() argument
114 if (!mii_ts) in unregister_mii_timestamper()
121 if (!mii_ts->device) in unregister_mii_timestamper()
127 if (desc->device == mii_ts->device) { in unregister_mii_timestamper()
128 desc->ctrl->release_channel(desc->device, mii_ts); in unregister_mii_timestamper()
Dnxp-c45-tja11xx.c191 struct mii_timestamper mii_ts; member
470 static void nxp_c45_txtstamp(struct mii_timestamper *mii_ts, in nxp_c45_txtstamp() argument
473 struct nxp_c45_phy *priv = container_of(mii_ts, struct nxp_c45_phy, in nxp_c45_txtstamp()
474 mii_ts); in nxp_c45_txtstamp()
492 static bool nxp_c45_rxtstamp(struct mii_timestamper *mii_ts, in nxp_c45_rxtstamp() argument
495 struct nxp_c45_phy *priv = container_of(mii_ts, struct nxp_c45_phy, in nxp_c45_rxtstamp()
496 mii_ts); in nxp_c45_rxtstamp()
512 static int nxp_c45_hwtstamp(struct mii_timestamper *mii_ts, in nxp_c45_hwtstamp() argument
515 struct nxp_c45_phy *priv = container_of(mii_ts, struct nxp_c45_phy, in nxp_c45_hwtstamp()
516 mii_ts); in nxp_c45_hwtstamp()
[all …]
Ddp83640.c109 struct mii_timestamper mii_ts; member
1228 static int dp83640_hwtstamp(struct mii_timestamper *mii_ts, struct ifreq *ifr) in dp83640_hwtstamp() argument
1231 container_of(mii_ts, struct dp83640_private, mii_ts); in dp83640_hwtstamp()
1342 static bool dp83640_rxtstamp(struct mii_timestamper *mii_ts, in dp83640_rxtstamp() argument
1346 container_of(mii_ts, struct dp83640_private, mii_ts); in dp83640_rxtstamp()
1392 static void dp83640_txtstamp(struct mii_timestamper *mii_ts, in dp83640_txtstamp() argument
1397 container_of(mii_ts, struct dp83640_private, mii_ts); in dp83640_txtstamp()
1420 static int dp83640_ts_info(struct mii_timestamper *mii_ts, in dp83640_ts_info() argument
1424 container_of(mii_ts, struct dp83640_private, mii_ts); in dp83640_ts_info()
1462 dp83640->mii_ts.rxtstamp = dp83640_rxtstamp; in dp83640_probe()
[all …]
Dphy.c367 if (phydev->mii_ts && phydev->mii_ts->hwtstamp) in phy_mii_ioctl()
368 return phydev->mii_ts->hwtstamp(phydev->mii_ts, ifr); in phy_mii_ioctl()
Dphy_device.c960 unregister_mii_timestamper(phydev->mii_ts); in phy_device_remove()
1012 if (phydev->mii_ts && phydev->mii_ts->link_state) in phy_link_change()
1013 phydev->mii_ts->link_state(phydev->mii_ts, phydev); in phy_link_change()
/Linux-v5.15/include/linux/
Dmii_timestamper.h47 bool (*rxtstamp)(struct mii_timestamper *mii_ts,
50 void (*txtstamp)(struct mii_timestamper *mii_ts,
53 int (*hwtstamp)(struct mii_timestamper *mii_ts,
56 void (*link_state)(struct mii_timestamper *mii_ts,
59 int (*ts_info)(struct mii_timestamper *mii_ts,
80 struct mii_timestamper *mii_ts);
93 void unregister_mii_timestamper(struct mii_timestamper *mii_ts);
115 static inline void unregister_mii_timestamper(struct mii_timestamper *mii_ts) in unregister_mii_timestamper() argument
Dphy.h661 struct mii_timestamper *mii_ts; member
1253 return phydev && phydev->mii_ts && phydev->mii_ts->hwtstamp; in phy_has_hwtstamp()
1262 return phydev && phydev->mii_ts && phydev->mii_ts->rxtstamp; in phy_has_rxtstamp()
1272 return phydev && phydev->mii_ts && phydev->mii_ts->ts_info; in phy_has_tsinfo()
1281 return phydev && phydev->mii_ts && phydev->mii_ts->txtstamp; in phy_has_txtstamp()
1286 return phydev->mii_ts->hwtstamp(phydev->mii_ts, ifr); in phy_hwtstamp()
1292 return phydev->mii_ts->rxtstamp(phydev->mii_ts, skb, type); in phy_rxtstamp()
1298 return phydev->mii_ts->ts_info(phydev->mii_ts, tsinfo); in phy_ts_info()
1304 phydev->mii_ts->txtstamp(phydev->mii_ts, skb, type); in phy_txtstamp()
/Linux-v5.15/drivers/net/mdio/
Dfwnode_mdio.c88 struct mii_timestamper *mii_ts = NULL; in fwnode_mdiobus_register_phy() local
94 mii_ts = fwnode_find_mii_timestamper(child); in fwnode_mdiobus_register_phy()
95 if (IS_ERR(mii_ts)) in fwnode_mdiobus_register_phy()
96 return PTR_ERR(mii_ts); in fwnode_mdiobus_register_phy()
108 unregister_mii_timestamper(mii_ts); in fwnode_mdiobus_register_phy()
130 unregister_mii_timestamper(mii_ts); in fwnode_mdiobus_register_phy()
140 if (mii_ts) in fwnode_mdiobus_register_phy()
141 phy->mii_ts = mii_ts; in fwnode_mdiobus_register_phy()
/Linux-v5.15/drivers/ptp/
Dptp_ines.c147 struct mii_timestamper mii_ts; member
331 static int ines_hwtstamp(struct mii_timestamper *mii_ts, struct ifreq *ifr) in ines_hwtstamp() argument
333 struct ines_port *port = container_of(mii_ts, struct ines_port, mii_ts); in ines_hwtstamp()
403 static void ines_link_state(struct mii_timestamper *mii_ts, in ines_link_state() argument
406 struct ines_port *port = container_of(mii_ts, struct ines_port, mii_ts); in ines_link_state()
479 static bool ines_rxtstamp(struct mii_timestamper *mii_ts, in ines_rxtstamp() argument
482 struct ines_port *port = container_of(mii_ts, struct ines_port, mii_ts); in ines_rxtstamp()
564 static int ines_ts_info(struct mii_timestamper *mii_ts, in ines_ts_info() argument
621 static void ines_txtstamp(struct mii_timestamper *mii_ts, in ines_txtstamp() argument
624 struct ines_port *port = container_of(mii_ts, struct ines_port, mii_ts); in ines_txtstamp()
[all …]
/Linux-v5.15/drivers/net/phy/mscc/
Dmscc_ptp.c1048 static int vsc85xx_hwtstamp(struct mii_timestamper *mii_ts, struct ifreq *ifr) in vsc85xx_hwtstamp() argument
1051 container_of(mii_ts, struct vsc8531_private, mii_ts); in vsc85xx_hwtstamp()
1141 static int vsc85xx_ts_info(struct mii_timestamper *mii_ts, in vsc85xx_ts_info() argument
1145 container_of(mii_ts, struct vsc8531_private, mii_ts); in vsc85xx_ts_info()
1164 static void vsc85xx_txtstamp(struct mii_timestamper *mii_ts, in vsc85xx_txtstamp() argument
1168 container_of(mii_ts, struct vsc8531_private, mii_ts); in vsc85xx_txtstamp()
1185 static bool vsc85xx_rxtstamp(struct mii_timestamper *mii_ts, in vsc85xx_rxtstamp() argument
1189 container_of(mii_ts, struct vsc8531_private, mii_ts); in vsc85xx_rxtstamp()
1487 vsc8531->mii_ts.rxtstamp = vsc85xx_rxtstamp; in __vsc8584_init_ptp()
1488 vsc8531->mii_ts.txtstamp = vsc85xx_txtstamp; in __vsc8584_init_ptp()
[all …]
Dmscc.h390 struct mii_timestamper mii_ts; member
/Linux-v5.15/Documentation/networking/
Dtimestamping.rst683 mii_timestamper`` and add a pointer to it in ``phydev->mii_ts``. The presence
700 enabled, and ``skb->dev->phydev->mii_ts`` exists, its ``.rxtstamp()`` hook
712 function that calls the ``mii_ts->txtstamp()`` hook is named
727 for the rest, they use the same mii_ts infrastructure as those. See