提交 f8320f05 编写于 作者: R Rajesh Borundia 提交者: David S. Miller

netxen: fix for kdump

When the crash kernel is loaded after crash, the device is in unknown state.
So reset the device contexts prior to its creation in case of kdump,
depending upon kernel parameter reset_devices.
Signed-off-by: NRajesh Borundia <rajesh.borundia@qlogic.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 bdb0f867
......@@ -254,6 +254,19 @@ nx_fw_cmd_create_rx_ctx(struct netxen_adapter *adapter)
return err;
}
static void
nx_fw_cmd_reset_ctx(struct netxen_adapter *adapter)
{
netxen_issue_cmd(adapter, adapter->ahw.pci_func, NXHAL_VERSION,
adapter->ahw.pci_func, NX_DESTROY_CTX_RESET, 0,
NX_CDRP_CMD_DESTROY_RX_CTX);
netxen_issue_cmd(adapter, adapter->ahw.pci_func, NXHAL_VERSION,
adapter->ahw.pci_func, NX_DESTROY_CTX_RESET, 0,
NX_CDRP_CMD_DESTROY_TX_CTX);
}
static void
nx_fw_cmd_destroy_rx_ctx(struct netxen_adapter *adapter)
{
......@@ -685,7 +698,8 @@ int netxen_alloc_hw_resources(struct netxen_adapter *adapter)
if (!NX_IS_REVISION_P2(adapter->ahw.revision_id)) {
if (test_and_set_bit(__NX_FW_ATTACHED, &adapter->state))
goto done;
if (reset_devices)
nx_fw_cmd_reset_ctx(adapter);
err = nx_fw_cmd_create_rx_ctx(adapter);
if (err)
goto err_out_free;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册
新手
引导
客服 返回
顶部