Skip to content

Commit 600099a

Browse files
Cla Mattia Galliardtpambor
authored andcommitted
ethernet: packet triage
1 parent 322da1d commit 600099a

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

drivers/ethernet/eth_stm32_hal.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -659,6 +659,11 @@ static void rx_thread(void *arg1, void *unused1, void *unused2)
659659
if (res == 0) {
660660
/* semaphore taken and receive packets */
661661
while ((pkt = eth_rx(dev)) != NULL) {
662+
if (ntohs(NET_ETH_HDR(pkt)->type) == NET_ETH_PTYPE_PNIO) {
663+
/* NET_PRIORITY_NC = 7 is Network control (highest priority) */
664+
net_pkt_set_priority(pkt, NET_PRIORITY_NC);
665+
}
666+
662667
iface = net_pkt_iface(pkt);
663668
#if defined(CONFIG_NET_DSA_DEPRECATED)
664669
iface = dsa_net_recv(iface, &pkt);

include/zephyr/net/ethernet.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ struct net_eth_addr {
7272
#define NET_ETH_PTYPE_IP 0x0800
7373
#define NET_ETH_PTYPE_IPV6 0x86dd
7474
#define NET_ETH_PTYPE_LLDP 0x88cc
75+
#define NET_ETH_PTYPE_PNIO 0x8892
7576
#define NET_ETH_PTYPE_PTP 0x88f7
7677
#define NET_ETH_PTYPE_TSN 0x22f0 /* TSN (IEEE 1722) packet */
7778
#define NET_ETH_PTYPE_VLAN 0x8100

0 commit comments

Comments
 (0)