net: netcp_ethss: Use the PHY time stamping interface.
The netcp_ethss driver tests fields of the phy_device in order to determine whether to defer to the PHY's time stamping functionality. This patch replaces the open coded logic with an invocation of the proper methods. Signed-off-by: Richard Cochran <richardcochran@gmail.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7774ee2368
commit
bfd57b5900
|
@ -2533,8 +2533,6 @@ static int gbe_del_vid(void *intf_priv, int vid)
|
|||
}
|
||||
|
||||
#if IS_ENABLED(CONFIG_TI_CPTS)
|
||||
#define HAS_PHY_TXTSTAMP(p) ((p)->drv && (p)->drv->txtstamp)
|
||||
#define HAS_PHY_RXTSTAMP(p) ((p)->drv && (p)->drv->rxtstamp)
|
||||
|
||||
static void gbe_txtstamp(void *context, struct sk_buff *skb)
|
||||
{
|
||||
|
@ -2566,7 +2564,7 @@ static int gbe_txtstamp_mark_pkt(struct gbe_intf *gbe_intf,
|
|||
* We mark it here because skb_tx_timestamp() is called
|
||||
* after all the txhooks are called.
|
||||
*/
|
||||
if (phydev && HAS_PHY_TXTSTAMP(phydev)) {
|
||||
if (phy_has_txtstamp(phydev)) {
|
||||
skb_shinfo(p_info->skb)->tx_flags |= SKBTX_IN_PROGRESS;
|
||||
return 0;
|
||||
}
|
||||
|
@ -2588,7 +2586,7 @@ static int gbe_rxtstamp(struct gbe_intf *gbe_intf, struct netcp_packet *p_info)
|
|||
if (p_info->rxtstamp_complete)
|
||||
return 0;
|
||||
|
||||
if (phydev && HAS_PHY_RXTSTAMP(phydev)) {
|
||||
if (phy_has_rxtstamp(phydev)) {
|
||||
p_info->rxtstamp_complete = true;
|
||||
return 0;
|
||||
}
|
||||
|
@ -2830,7 +2828,7 @@ static int gbe_ioctl(void *intf_priv, struct ifreq *req, int cmd)
|
|||
struct gbe_intf *gbe_intf = intf_priv;
|
||||
struct phy_device *phy = gbe_intf->slave->phy;
|
||||
|
||||
if (!phy || !phy->drv->hwtstamp) {
|
||||
if (!phy_has_hwtstamp(phy)) {
|
||||
switch (cmd) {
|
||||
case SIOCGHWTSTAMP:
|
||||
return gbe_hwtstamp_get(gbe_intf, req);
|
||||
|
|
Loading…
Reference in New Issue
Block a user