Hi Thomas and Chuck,

Thanks for the feedback. Regarding comments from Thomas:

You are mixing different issues here: your own driver design and known current limitations in net stack.

Currently, all net interface are up and running as soon as they are initialized. This was done like that because it was just easier to move on with more important things.
Work is being done to modify this behavior (up/down iface state, etc...). Drivers will always be initialized before the network stack
Just to make sure I'm not misunderstood I was not implying that initializing Ethernet driver before networking stack is a bad idea, only that it does not play well with the current design. If the architecture is being worked on, some things will be changed there is no issue.

Where can I find the list of known current limitations of the networking stack? Is it documented?

  1. Modern Ethernet modules in most of the SoC devices have ability to generate IP, TCP and UDP checksums in hardware. Is it possible to tell networking stack not to compute these checksums in software?

For now, no. There is no generic CRC API that could - depending on configuration and hardware - either call a software routine or run it on hardware directly.
Shall I create a Jira issue so this is not forgotten?