diff --git a/arch/arm/src/stm32/stm32_eth.c b/arch/arm/src/stm32/stm32_eth.c index 60187bcff1c..cded4edb398 100644 --- a/arch/arm/src/stm32/stm32_eth.c +++ b/arch/arm/src/stm32/stm32_eth.c @@ -56,6 +56,9 @@ #include #include #include +#if defined(CONFIG_NET_PKT) +# include +#endif #include "up_internal.h" @@ -1589,6 +1592,12 @@ static void stm32_receive(FAR struct stm32_ethmac_s *priv) while (stm32_recvframe(priv) == OK) { +#ifdef CONFIG_NET_PKT + /* When packet sockets are enabled, feed the frame into the packet tap */ + + uip_pktinput(&priv->dev); +#endif + /* Check if the packet is a valid size for the uIP buffer configuration * (this should not happen) */