Re: [PATCH 06/12] qlcnic: 83xx data path and HW interfaces routines
flat view
From: Ben Hutchings <hidden>
Date: 2012-09-06 17:33:24
On Thu, 2012-09-06 at 02:22 -0400, Sony Chacko wrote:
From: Sony Chacko <redacted> Modify 82xx driver to support new adapter - Qlogic 83XX CNA Create 83xx adapter data path and hardware interface routines
[...]
quoted hunk ↗ jump to hunk
--- /dev/null +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c
[...]
quoted hunk ↗ jump to hunk
+int qlcnic_83xx_set_settings(struct qlcnic_adapter *adapter, + struct ethtool_cmd *ecmd) +{ + int status = 0; + u32 config = adapter->ahw->port_config; + + if (ecmd->autoneg) + adapter->ahw->port_config |= BIT_15; + + switch (ethtool_cmd_speed(ecmd)) { + case SPEED_10: + adapter->ahw->port_config |= BIT_8; + break; + case SPEED_100: + adapter->ahw->port_config |= BIT_9; + break; + case SPEED_1000: + adapter->ahw->port_config |= BIT_10; + break; + case SPEED_10000: + adapter->ahw->port_config |= BIT_11; + break; + default: + return -EIO;
Should be -EINVAL.
quoted hunk ↗ jump to hunk
+ } + + status = qlcnic_83xx_set_port_config(adapter); + if (status) { + dev_info(&adapter->pdev->dev, + "Faild to Set Link Speed and autoneg.\n"); + adapter->ahw->port_config = config; + } + return status; +}
[...]
quoted hunk ↗ jump to hunk
+static u64* +qlcnic_83xx_fill_stats(struct qlcnic_adapter *adapter, + struct qlcnic_cmd_args *cmd, u64 *data, int type, + int *ret) +{ + int err, k, total_regs; + + *ret = 0; + err = qlcnic_issue_cmd(adapter, cmd); + if (err != QLCNIC_RCODE_SUCCESS) { + dev_info(&adapter->pdev->dev, + "Error in get statistics mailbox command\n"); + *ret = -EIO; + return data; + } + total_regs = cmd->rsp.num; + switch (type) {
[...]
+ default: + dev_info(&adapter->pdev->dev, "Unknown get statistics mode\n");
It seems like this default case can only be reached in case of a driver bug, so WARN would be more appropriate.
quoted hunk ↗ jump to hunk
+ *ret = -EIO; + } + return data; +}
[...] -- Ben Hutchings, Staff Engineer, Solarflare Not speaking for my employer; that's the marketing department's job. They asked us to note that Solarflare product names are trademarked.