aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/wangxun/libwx/wx_hw.c
diff options
context:
space:
mode:
authorIngo Molnar <[email protected]>2025-05-21 06:42:51 +0000
committerIngo Molnar <[email protected]>2025-05-21 06:45:03 +0000
commit412751aa6991501d7defeadecfede59043d1b5e8 (patch)
treeee5026e79128dd4eacb935f76564d7dcc105b24f /drivers/net/ethernet/wangxun/libwx/wx_hw.c
parentx86/xen/msr: Fix uninitialized variable 'err' (diff)
parentLinux 6.15-rc7 (diff)
downloadkernel-412751aa6991501d7defeadecfede59043d1b5e8.tar.gz
kernel-412751aa6991501d7defeadecfede59043d1b5e8.zip
Merge tag 'v6.15-rc7' into x86/core, to pick up fixes
Pick up build fixes from upstream to make this tree more testable. Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'drivers/net/ethernet/wangxun/libwx/wx_hw.c')
-rw-r--r--drivers/net/ethernet/wangxun/libwx/wx_hw.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/ethernet/wangxun/libwx/wx_hw.c b/drivers/net/ethernet/wangxun/libwx/wx_hw.c
index aed45abafb1b..490d34233d38 100644
--- a/drivers/net/ethernet/wangxun/libwx/wx_hw.c
+++ b/drivers/net/ethernet/wangxun/libwx/wx_hw.c
@@ -434,14 +434,20 @@ static int wx_host_interface_command_r(struct wx *wx, u32 *buffer,
wr32m(wx, WX_SW2FW_MBOX_CMD, WX_SW2FW_MBOX_CMD_VLD, WX_SW2FW_MBOX_CMD_VLD);
/* polling reply from FW */
- err = read_poll_timeout(wx_poll_fw_reply, reply, reply, 1000, 50000,
- true, wx, buffer, send_cmd);
+ err = read_poll_timeout(wx_poll_fw_reply, reply, reply, 2000,
+ timeout * 1000, true, wx, buffer, send_cmd);
if (err) {
wx_err(wx, "Polling from FW messages timeout, cmd: 0x%x, index: %d\n",
send_cmd, wx->swfw_index);
goto rel_out;
}
+ if (hdr->cmd_or_resp.ret_status == 0x80) {
+ wx_err(wx, "Unknown FW command: 0x%x\n", send_cmd);
+ err = -EINVAL;
+ goto rel_out;
+ }
+
/* expect no reply from FW then return */
if (!return_data)
goto rel_out;