Hi Prad1,
I'm not the author of that driver but I'll try to help.
[quote user="Prad1"]why is this if condition checking for packets <60 why not 64?[/quote]
I would guess that the driver is checking for a valid length of 60 because it's only counting the frame as:
[Destination Addr (6 bytes)] [Source Addr (6 bytes)] [Type (2 bytes)] [Data (46 - 1500 bytes)]
(NOT counting the 4 byte frame check)
This will yield a minimum size of 6 + 6 + 2 + 46 = 60 bytes.
The value of 64 is most likely including the frame check:
[Destination Addr (6 bytes)] [Source Addr (6 bytes)] [Type (2 bytes)] [Data (46 - 1500 bytes)] [Frame Check (4bytes)]
Which of course yields a minimum value of 64 bytes.
I think the EMAC h/w can be configured to include the 4 byte frame check. Can you see what the setting is for the DM643x you are using?
[quote user="Prad1"]We would like to know if it is ok if we change the size from 64 to 60.[/quote]
You are certainly free to try this and rebuild the driver code. I would be interested to see what happens. Also, is that if statement ever true for you?
Steve