qemu/hw/net
Gabriel L. Somlo 6a2acedb19 e1000: emulate auto-negotiation during external link status change
This patch emulates auto-negotiation when the network link status
is modified externally (i.e. via "set_link <id> off/on").

Also, a couple of cleanup items:
  - unset PHY status reg. AUTONEG_COMPLETE during link_down()
  - set PHY status reg. AUTONEG_COMPLETE during autoneg_timer() only
    if we actually brought the link up.
  - group all checks for "can we, and should we autonegotiate?"
    together for more clarity.

Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
Reviewed-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
2014-06-23 17:38:00 +03:00
..
fsl_etsec Fix typo in eTSEC Ethernet controller 2014-06-16 13:24:26 +02:00
allwinner_emac.c allwinner-emac: update irq status after writes to interrupt registers 2014-04-17 21:34:06 +01:00
cadence_gem.c net: cadence_gem: Remove &desc[0] usages 2014-06-10 19:39:34 +04:00
dp8393x.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
e1000_regs.h e1000: allow command-line selection of card model 2014-06-09 15:38:58 +02:00
e1000.c e1000: emulate auto-negotiation during external link status change 2014-06-23 17:38:00 +03:00
eepro100.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
etraxfs_eth.c hw: cannot_instantiate_with_device_add_yet due to pointer props 2013-12-24 17:27:17 +01:00
lan9118.c Fix lan9118 buffer length handling 2014-01-27 15:44:06 +01:00
lance.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
Makefile.objs Add Enhanced Three-Speed Ethernet Controller (eTSEC) 2014-03-05 03:06:45 +01:00
mcf_fec.c memory: add owner argument to initialization functions 2013-07-04 17:42:44 +02:00
milkymist-minimac2.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
mipsnet.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
ne2000-isa.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
ne2000.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
ne2000.h ne2000: pass device to ne2000_setup_io, use it as owner 2013-07-04 17:42:46 +02:00
opencores_eth.c opencores_eth: flush queue whenever can_receive can go from false to true 2014-02-25 11:50:16 +01:00
pcnet-pci.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
pcnet.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
pcnet.h
rtl8139.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
smc91c111.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
spapr_llan.c savevm: Remove all the unneeded version_minimum_id_old (ppc) 2014-06-16 04:55:26 +02:00
stellaris_enet.c hw/net/stellaris_enet: Convert to vmstate 2014-05-13 16:09:38 +01:00
vhost_net.c Add the vhost-user netdev backend to the command line 2014-06-19 18:44:18 +03:00
virtio-net.c Refactor virtio-net to use generic get_vhost_net 2014-06-19 16:41:55 +03:00
vmware_utils.h exec: Make stb_phys input an AddressSpace 2014-02-11 22:57:38 +10:00
vmxnet3.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
vmxnet3.h vmxnet3: Eliminate __packed redefined warning 2013-09-06 17:25:55 +02:00
vmxnet_debug.h
vmxnet_rx_pkt.c
vmxnet_rx_pkt.h
vmxnet_tx_pkt.c misc: Use g_assert_not_reached for code which is expected to be unreachable 2013-07-27 11:22:54 +04:00
vmxnet_tx_pkt.h
xen_nic.c
xgmac.c savevm: Remove all the unneeded version_minimum_id_old (arm) 2014-05-13 16:09:35 +01:00
xilinx_axienet.c hw: Consistently name Error * objects err, and not errp 2014-05-05 19:08:49 +02:00
xilinx_ethlite.c net: xilinx_ethlite: Fix Rx-pong interrupt 2014-06-09 15:38:58 +02:00