This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAPL138 - NDK - Layer 2 Forwarding

Other Parts Discussed in Thread: OMAPL138
My customer is looking to implement a simple network switch. Is the NDK capable of performing layer 2 forwarding using the ARM926 on the OMAPL138. Are there any limitations due OMAPL138 single MII.
 
"Support for Raw Ethernet sockets (different from Raw IPv4/IPv6 sockets) enables any application using the NDK stack to send/receive Ethernet packets with custom Layer 2 (L2) protocol type, i.e., protocol type in the Ethernet header of the packet other than any of the well known standard protocol types like IP (0x800), IPv6 (0x806), VLAN (0x8100), PPPoE Control (0x8863) or PPPoE Data (0x8864)."
 
Thanks,

 

  • Hi Michael,

    When the stack receives an Ethernet frame from the driver, it reads its 'type' field and then handles it accordingly.  E.g. for IPv4 packet, type 0x800, it will pass the packet up to the IPv4 layer by calling IPRxPacket(<the packet>).  Similar for IPv6, PPPoE  and ARP packets.

    For any other 'type', it is passed to the raw Ethernet handler RawEthRxPacket().

    This is all done via a switch statement of the 'type' field in the file nimu.c.

    If the customer wishes to add their own custom type, they could try that with the raw sockets handling.

    Steve