[En-Nut-Discussion] IP Checksum calculation broken. Reenabled old algorithm for the meantime.

Ole Reinhardt ole.reinhardt at embedded-it.de
Fri Jul 6 14:13:01 CEST 2012

Hi Harald,

> If I remember correctly, the EMAC buffers even need 8 byte alignment.
> Or was that on AT91? Anyway, if hardware buffers need specific
> alignments, then the driver should _not_ rely on malloc providing the
> required alignment.

Yes! You are right. On the LPC I just use the internal AHB SRAM, and
don't care about malloc at this point. 

But you are totally true. What would be your suggestion for such a case?
Just alloc at least n bytes more than needed and select the right
starting address?

> Btw. did you ever test the optimized IP checksumming after setting back
> the alignment to 4? I'm just asking because I never experienced IP
> checksum problems on ARM7/ARM9 and would like to re-enable the
> optimized version at least for these platforms. If the optimized
> version is broken only for alignments of 1 or 2, we may still use it on
> 4-byte aligned packets.

Sorry, not yet! I'll do so later today and let you know about the




Thermotemp GmbH, Embedded-IT

Embedded Hard-/ Software and Open Source Development, 
Integration and Consulting


Geschäftsstelle Siegen - Steinstraße 67 - D-57072 Siegen - 
tel +49 (0)271 5513597, +49 (0)271-73681 - fax +49 (0)271 736 97

Hauptsitz - Hademarscher Weg 7 - 13503 Berlin
Tel +49 (0)30 4315205 - Fax +49 (0)30 43665002
Geschäftsführer: Jörg Friedrichs, Ole Reinhardt
Handelsregister Berlin Charlottenburg HRB 45978 UstID DE 156329280 

More information about the En-Nut-Discussion mailing list