linux/drivers/net/igb
Jesse Brandeburg 945a51517c intel drivers: repair missing flush operations
after review of all intel drivers, found several instances where
drivers had the incorrect pattern of:
memory mapped write();
delay();

which should always be:
memory mapped write();
write flush(); /* aka memory mapped read */
delay();

explanation:
The reason for including the flush is that writes can be held
(posted) in PCI/PCIe bridges, but the read always has to complete
synchronously and therefore has to flush all pending writes to a
device.  If a write is held and followed by a delay, the delay
means nothing because the write may not have reached hardware
(maybe even not until the next read)

Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by:  Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2011-08-04 04:59:07 -07:00
..
e1000_82575.c igb: Add support of SerDes Forced mode for certain hardware 2011-07-11 18:43:00 -07:00
e1000_82575.h igb: Add support of SerDes Forced mode for certain hardware 2011-07-11 18:43:00 -07:00
e1000_defines.h igb: Fix for DH89xxCC near end loopback test 2011-07-21 22:54:00 -07:00
e1000_hw.h igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_mac.c igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_mac.h igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_mbx.c igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_mbx.h igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_nvm.c intel drivers: repair missing flush operations 2011-08-04 04:59:07 -07:00
e1000_nvm.h igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_phy.c igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_phy.h igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
e1000_regs.h igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00
igb.h igb: do vlan cleanup 2011-07-21 13:47:57 -07:00
igb_ethtool.c intel drivers: repair missing flush operations 2011-08-04 04:59:07 -07:00
igb_main.c intel drivers: repair missing flush operations 2011-08-04 04:59:07 -07:00
Makefile igb: Update copyright on all igb driver files. 2011-07-11 18:42:41 -07:00