This problem is not uncommon and my approach to it was to set at least one side (switch) to fixed values.
Autonegotiation sometimes fails and it might depend on the chipset used in the client.
There is no command sequence to issue to fix this. Might be chipset, might be a driver issue with attached equipment.
Hope this helps.
Martin