users@... <users@...>
users@...
[Zephyr-users] STM32: Ethernet Driver not working on F7 and H7 with 2.4.0 #driver #ethernet #stm32 #networking
*** Booting Zephyr OS build zephyr-v2.4.0-41-gcc0244bdd7d6 ***
[00:00:03.736,000] <inf> net_pkt_sock_sample: Packet socket sample is running
[00:00:03.736,000] <inf> net_pkt_sock_sample: Waiting for packets ...
[00:00:03.737,000] <dbg> net_pkt_sock_sample.send_packet_socket: Sent 100 bytes
[00:00:03.737,000] <wrn> net_if: iface 0x20010b04 is down
[00:00:04.001,000] <err> eth_stm32_hal: Failed to enqueue frame into RX queue: -62
[00:00:04.196,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 62 bytes
[00:00:04.197,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 110 bytes
[00:00:04.232,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 91 bytes
[00:00:04.232,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 89 bytes
[00:00:04.232,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 95 bytes
[00:00:04.232,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 71 bytes
[00:00:04.233,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 75 bytes
[00:00:04.233,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 69 bytes
[00:00:04.697,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 60 bytes
[00:00:04.715,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 82 bytes
[00:00:04.715,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 102 bytes
[00:00:04.716,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 82 bytes
[00:00:04.716,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 102 bytes
[00:00:05.001,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 60 bytes
[00:00:05.696,000] <dbg> net_pkt_sock_sample.recv_packet_socket: Received 60 bytes
[00:00:08.112,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:08.112,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:08.112,000] <err> eth_stm32_hal: Failed to obtain RX buffer
.
.
.
[00:00:09.615,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:09.625,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:09.626,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:09.627,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:09.629,000] <err> eth_stm32_hal: Failed to obtain RX buffer
[00:00:09.737,000] <err> net_pkt_sock_sample: Failed to send, errno 55
[00:00:09.737,000] <inf> net_pkt_sock_sample: Stopping...
[00:00:09.737,000] <err> os: ***** USAGE FAULT *****
[00:00:09.737,000] <err> os: Illegal use of the EPSR
[00:00:09.737,000] <err> os: r0/a1: 0x20011ce4 r1/a2: 0x20014a4c r2/a3: 0x20011788
[00:00:09.737,000] <err> os: r3/a4: 0x00000000 r12/ip: 0x00000000 r14/lr: 0x0800c293
[00:00:09.737,000] <err> os: xpsr: 0x60000000
[00:00:09.737,000] <err> os: Faulting instruction address (r15/pc): 0x00000000
[00:00:09.737,000] <err> os: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
[00:00:09.737,000] <err> os: Current thread: 0x200110d8 (main)
[00:00:09.850,000] <err> os: Halting system
Has anyone encountered this behavior with the Ethernet driver on the STM32? It seems like the ethernet driver (eth_stm_32_hal.c) is not able to pass on the received packets to the buffer using net_pkt_rx_alloc_with_buffer().
Regards,
Andreas