[SCSI] csiostor: Retain default adapter configuration in absence of config file.

- Retain firmware defined configuration settings in the absence of
user-provided configuration by eliminating the global RSS and the
PF/VF capabilities mailbox commands.
- Remove S_IRUGO from sysfs parameters that don't have 'show'
functionality.

Signed-off-by: Naresh Kumar Inna <naresh@chelsio.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
Naresh Kumar Inna
2013-05-17 15:50:03 +05:30
committed by James Bottomley
parent 07cdc0464f
commit 49c1241384
5 changed files with 2 additions and 192 deletions

View File

@@ -1597,87 +1597,6 @@ out:
return rv;
}
static int
csio_config_global_rss(struct csio_hw *hw)
{
struct csio_mb *mbp;
enum fw_retval retval;
mbp = mempool_alloc(hw->mb_mempool, GFP_ATOMIC);
if (!mbp) {
CSIO_INC_STATS(hw, n_err_nomem);
return -ENOMEM;
}
csio_rss_glb_config(hw, mbp, CSIO_MB_DEFAULT_TMO,
FW_RSS_GLB_CONFIG_CMD_MODE_BASICVIRTUAL,
FW_RSS_GLB_CONFIG_CMD_TNLMAPEN |
FW_RSS_GLB_CONFIG_CMD_HASHTOEPLITZ |
FW_RSS_GLB_CONFIG_CMD_TNLALLLKP,
NULL);
if (csio_mb_issue(hw, mbp)) {
csio_err(hw, "Issue of FW_RSS_GLB_CONFIG_CMD failed!\n");
mempool_free(mbp, hw->mb_mempool);
return -EINVAL;
}
retval = csio_mb_fw_retval(mbp);
if (retval != FW_SUCCESS) {
csio_err(hw, "FW_RSS_GLB_CONFIG_CMD returned 0x%x!\n", retval);
mempool_free(mbp, hw->mb_mempool);
return -EINVAL;
}
mempool_free(mbp, hw->mb_mempool);
return 0;
}
/*
* csio_config_pfvf - Configure Physical/Virtual functions settings.
* @hw: HW module
*
*/
static int
csio_config_pfvf(struct csio_hw *hw)
{
struct csio_mb *mbp;
enum fw_retval retval;
mbp = mempool_alloc(hw->mb_mempool, GFP_ATOMIC);
if (!mbp) {
CSIO_INC_STATS(hw, n_err_nomem);
return -ENOMEM;
}
/*
* For now, allow all PFs to access to all ports using a pmask
* value of 0xF (M_FW_PFVF_CMD_PMASK). Once we have VFs, we will
* need to provide access based on some rule.
*/
csio_mb_pfvf(hw, mbp, CSIO_MB_DEFAULT_TMO, hw->pfn, 0, CSIO_NEQ,
CSIO_NETH_CTRL, CSIO_NIQ_FLINT, 0, 0, CSIO_NVI, CSIO_CMASK,
CSIO_PMASK, CSIO_NEXACTF, CSIO_R_CAPS, CSIO_WX_CAPS, NULL);
if (csio_mb_issue(hw, mbp)) {
csio_err(hw, "Issue of FW_PFVF_CMD failed!\n");
mempool_free(mbp, hw->mb_mempool);
return -EINVAL;
}
retval = csio_mb_fw_retval(mbp);
if (retval != FW_SUCCESS) {
csio_err(hw, "FW_PFVF_CMD returned 0x%x!\n", retval);
mempool_free(mbp, hw->mb_mempool);
return -EINVAL;
}
mempool_free(mbp, hw->mb_mempool);
return 0;
}
/*
* csio_enable_ports - Bring up all available ports.
* @hw: HW module.
@@ -2056,16 +1975,6 @@ csio_hw_no_fwconfig(struct csio_hw *hw, int reset)
if (rv != 0)
goto out;
/* Config Global RSS command */
rv = csio_config_global_rss(hw);
if (rv != 0)
goto out;
/* Configure PF/VF capabilities of device */
rv = csio_config_pfvf(hw);
if (rv != 0)
goto out;
/* device parameters */
rv = csio_get_device_params(hw);
if (rv != 0)