On Mon, Jan 28, 2019 at 04:54:12PM +0100, nicolas lantz wrote:
I am working on a demo using Ethernet Over USB on the nrf52840.
I saw a misalignement probleme between the :
.wMaxSegmentSize = sys_cpu_to_le16(1514),
declared in function_ecm.c
and the :
#define NETUSB_MTU 1500
declared in netusb.h
As rx_buf & tx_buf are defined with a NETUSB_MTU size, this cause that the
frames over 1500 bytes can not be received and are discarded.
Secondly, as fragmentation is not supported (for UDP and TCP datagram), I
suggest to increase the NETUSB_MTU to the maximum of the possible
ethernet frame size :1522
These modifications give :
in netusb.h : #define NETUSB_MTU 1522
in function_ecm.c : .wMaxSegmentSize = sys_cpu_to_le16(NETUSB_MTU),
Attached a patch.
Could you make a proper commit and send Pull Request on github?