EtherK notes

The chip can detect crossover cables automatically (MDI/MDI-X) but only when auto-negotiation is enabled. If the link speed is forced this does not work. It should be possible to force MDI-X mode when the speed is forced (and the *Configure EKLink command accepts an extra undocumented parameter 'MDI-X' to allow you to do this), but it doesn't seem to work. Forcing MDI/MDI-X mode only seems to work when auto-negotiation is enabled, which seems a bit pointless.

When the duplex setting is forced, hubs may not detect the setting correctly(?)
Happens with the Windows driver too. I think the answer is that you need instead to use auto-negotiation, but restrict the advertised duplex setting to the one you want using *Configure EKAdvertise.

The loopback code seems to work, but after running it the link won't go up again unless the module is reinitialised.

Workaround code to support the the 82544 running on PCIX and the 82547EI has been left out to simplify things.
