remarkable-linux/drivers/net/ethernet/broadcom
Ariel Elior 24f06716cd bnx2x: bug fix when loading after SAN boot
This is a bug fix for an "interface fails to load" issue.
The issue occurs when bnx2x driver loads after UNDI driver was previously
loaded over the chip. In such a scenario the UNDI driver is loaded and operates
in the pre-boot kernel, within its own specific host memory address range.
When the pre-boot stage is complete, the real kernel is loaded, in a new and
distinct host memory address range. The transition from pre-boot stage to boot
is asynchronous from UNDI point of view.

A race condition occurs when UNDI driver triggers a DMAE transaction to valid
host addresses in the pre-boot stage, when control is diverted to the real
kernel. This results in access to illegal addresses by our HW as the addresses
which were valid in the preboot stage are no longer considered valid.
Specifically, the 'was_error' bit in the pci glue of our device is set. This
causes all following pci transactions from chip to host to timeout (in
accordance to the pci spec).

Signed-off-by: Ariel Elior <ariele@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-05-06 13:10:38 -04:00
..
bnx2x bnx2x: bug fix when loading after SAN boot 2012-05-06 13:10:38 -04:00
b44.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2012-02-26 21:55:51 -05:00
b44.h
bcm63xx_enet.c bcm63xx-enet: fix PHY name to match MDIO bus name 2012-02-13 16:04:08 -05:00
bcm63xx_enet.h
bnx2.c ethernet: unify return value of .ndo_set_mac_address if address is invalid 2012-02-23 17:03:20 -05:00
bnx2.h bnx2: Add support for ethtool --show-channels|--set-channels 2012-02-05 22:42:00 -05:00
bnx2_fw.h
cnic.c cnic: Fix parity error code conflict 2012-03-21 21:57:36 -04:00
cnic.h cnic: Add timeout for ramrod replies. 2011-08-28 17:08:27 -04:00
cnic_defs.h cnic: Fix parity error code conflict 2012-03-21 21:57:36 -04:00
cnic_if.h cnic: Fix parity error code conflict 2012-03-21 21:57:36 -04:00
Kconfig MII: fix Kconfig dependencies for MII 2011-09-15 15:49:08 -04:00
Makefile
sb1250-mac.c drivers/net: Remove alloc_etherdev error messages 2012-01-31 16:20:48 -05:00
tg3.c tg3: Avoid panic from reserved statblk field access 2012-04-25 14:41:41 -04:00
tg3.h tg3: Fix RSS ring refill race condition 2012-03-21 21:57:36 -04:00