summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/microchip
diff options
context:
space:
mode:
authorHoratiu Vultur <horatiu.vultur@microchip.com>2022-03-07 12:46:32 +0300
committerPaolo Abeni <pabeni@redhat.com>2022-03-08 12:44:33 +0300
commit328c621b95cdee01c50ec6d025b871b7c591f424 (patch)
tree40ba8245c04ab4eec81c73327567d87c207f758f /drivers/net/ethernet/microchip
parent1416ea0ddc1463fb8c9cf12b48f3df82a327e356 (diff)
downloadlinux-328c621b95cdee01c50ec6d025b871b7c591f424.tar.xz
net: lan966x: allow offloading timestamp operations to the PHY
In case the MAC is using 'netif_rx()' to deliver the skb up the network stack, it needs to check whether 'skb_defer_rx_timestmap()' is necessary or not. In case is needed then don't call 'netif_rx()' Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com> Link: https://lore.kernel.org/r/20220307094632.3764266-1-horatiu.vultur@microchip.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'drivers/net/ethernet/microchip')
-rw-r--r--drivers/net/ethernet/microchip/lan966x/lan966x_main.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/microchip/lan966x/lan966x_main.c b/drivers/net/ethernet/microchip/lan966x/lan966x_main.c
index ad310c95bf5c..750f2cc2f695 100644
--- a/drivers/net/ethernet/microchip/lan966x/lan966x_main.c
+++ b/drivers/net/ethernet/microchip/lan966x/lan966x_main.c
@@ -600,7 +600,9 @@ static irqreturn_t lan966x_xtr_irq_handler(int irq, void *args)
skb->offload_fwd_mark = 0;
}
- netif_rx(skb);
+ if (!skb_defer_rx_timestamp(skb))
+ netif_rx(skb);
+
dev->stats.rx_bytes += len;
dev->stats.rx_packets++;