• D
    netxen: firmware hang detection · 6a581e93
    Dhananjay Phadke 提交于
    Implement state machine to detect firmware hung state
    and recover. Since firmware will be shared by all PCI
    functions that have different class drivers (NIC or
    FCOE or iSCSI), explicit hardware based serialization
    is required for initializing firmware.
    
    o Used global scratchpad register to maintain device
      reference count. Every probed pci function adds to
      ref count.
    
    o Implement timer (delayed work) for each pci func
      that checks firmware heartbit every 5 sec and detaches
      itself if firmware is dead. Last detaching function
      reloads firmware. Other functions wait for firmware
      init, and re-attach themselves.
    
    Heartbit is not supported by NX2031 firmware.
    Signed-off-by: NAmit Kumar Salecha <amit@netxen.com>
    Signed-off-by: NDhananjay Phadke <dhananjay@netxen.com>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    6a581e93
netxen_nic_hdr.h 40.3 KB