csiostor:Remove T4 FCoE Support.
[firefly-linux-kernel-4.4.55.git] / drivers / scsi / csiostor / csio_hw.c
index 5c31fa603de43cd1f2359b3494ed8ad698644e9c..35c5f83b08a00915930c648a5fa9610f93eb06f9 100644 (file)
@@ -60,37 +60,10 @@ int csio_msi = 2;
 static int dev_num;
 
 /* FCoE Adapter types & its description */
-static const struct csio_adap_desc csio_t4_fcoe_adapters[] = {
-       {"T440-Dbg 10G", "Chelsio T440-Dbg 10G [FCoE]"},
-       {"T420-CR 10G", "Chelsio T420-CR 10G [FCoE]"},
-       {"T422-CR 10G/1G", "Chelsio T422-CR 10G/1G [FCoE]"},
-       {"T440-CR 10G", "Chelsio T440-CR 10G [FCoE]"},
-       {"T420-BCH 10G", "Chelsio T420-BCH 10G [FCoE]"},
-       {"T440-BCH 10G", "Chelsio T440-BCH 10G [FCoE]"},
-       {"T440-CH 10G", "Chelsio T440-CH 10G [FCoE]"},
-       {"T420-SO 10G", "Chelsio T420-SO 10G [FCoE]"},
-       {"T420-CX4 10G", "Chelsio T420-CX4 10G [FCoE]"},
-       {"T420-BT 10G", "Chelsio T420-BT 10G [FCoE]"},
-       {"T404-BT 1G", "Chelsio T404-BT 1G [FCoE]"},
-       {"B420-SR 10G", "Chelsio B420-SR 10G [FCoE]"},
-       {"B404-BT 1G", "Chelsio B404-BT 1G [FCoE]"},
-       {"T480-CR 10G", "Chelsio T480-CR 10G [FCoE]"},
-       {"T440-LP-CR 10G", "Chelsio T440-LP-CR 10G [FCoE]"},
-       {"AMSTERDAM 10G", "Chelsio AMSTERDAM 10G [FCoE]"},
-       {"HUAWEI T480 10G", "Chelsio HUAWEI T480 10G [FCoE]"},
-       {"HUAWEI T440 10G", "Chelsio HUAWEI T440 10G [FCoE]"},
-       {"HUAWEI STG 10G", "Chelsio HUAWEI STG 10G [FCoE]"},
-       {"ACROMAG XAUI 10G", "Chelsio ACROMAG XAUI 10G [FCoE]"},
-       {"ACROMAG SFP+ 10G", "Chelsio ACROMAG SFP+ 10G [FCoE]"},
-       {"QUANTA SFP+ 10G", "Chelsio QUANTA SFP+ 10G [FCoE]"},
-       {"HUAWEI 10Gbase-T", "Chelsio HUAWEI 10Gbase-T [FCoE]"},
-       {"HUAWEI T4TOE 10G", "Chelsio HUAWEI T4TOE 10G [FCoE]"}
-};
-
 static const struct csio_adap_desc csio_t5_fcoe_adapters[] = {
        {"T580-Dbg 10G", "Chelsio T580-Dbg 10G [FCoE]"},
        {"T520-CR 10G", "Chelsio T520-CR 10G [FCoE]"},
-       {"T522-CR 10G/1G", "Chelsio T452-CR 10G/1G [FCoE]"},
+       {"T522-CR 10G/1G", "Chelsio T522-CR 10G/1G [FCoE]"},
        {"T540-CR 10G", "Chelsio T540-CR 10G [FCoE]"},
        {"T520-BCH 10G", "Chelsio T520-BCH 10G [FCoE]"},
        {"T540-BCH 10G", "Chelsio T540-BCH 10G [FCoE]"},
@@ -107,7 +80,9 @@ static const struct csio_adap_desc csio_t5_fcoe_adapters[] = {
        {"T580-LP-CR 40G", "Chelsio T580-LP-CR 40G [FCoE]"},
        {"T520-LL-CR 10G", "Chelsio T520-LL-CR 10G [FCoE]"},
        {"T560-CR 40G", "Chelsio T560-CR 40G [FCoE]"},
-       {"T580-CR 40G", "Chelsio T580-CR 40G [FCoE]"}
+       {"T580-CR 40G", "Chelsio T580-CR 40G [FCoE]"},
+       {"T580-SO 40G", "Chelsio T580-SO 40G [FCoE]"},
+       {"T502-BT 1G", "Chelsio T502-BT 1G [FCoE]"}
 };
 
 static void csio_mgmtm_cleanup(struct csio_mgmtm *);
@@ -1716,9 +1691,9 @@ csio_hw_flash_config(struct csio_hw *hw, u32 *fw_cfg_param, char *path)
        uint32_t *cfg_data;
        int value_to_add = 0;
 
-       if (request_firmware(&cf, CSIO_CF_FNAME(hw), dev) < 0) {
+       if (request_firmware(&cf, FW_CFG_NAME_T5, dev) < 0) {
                csio_err(hw, "could not find config file %s, err: %d\n",
-                        CSIO_CF_FNAME(hw), ret);
+                        FW_CFG_NAME_T5, ret);
                return -ENOENT;
        }
 
@@ -1758,8 +1733,8 @@ csio_hw_flash_config(struct csio_hw *hw, u32 *fw_cfg_param, char *path)
        }
        if (ret == 0) {
                csio_info(hw, "config file upgraded to %s\n",
-                         CSIO_CF_FNAME(hw));
-               snprintf(path, 64, "%s%s", "/lib/firmware/", CSIO_CF_FNAME(hw));
+                         FW_CFG_NAME_T5);
+               snprintf(path, 64, "%s%s", "/lib/firmware/", FW_CFG_NAME_T5);
        }
 
 leave:
@@ -2123,9 +2098,9 @@ csio_hw_flash_fw(struct csio_hw *hw, int *reset)
                return -EINVAL;
        }
 
-       if (request_firmware(&fw, CSIO_FW_FNAME(hw), dev) < 0) {
+       if (request_firmware(&fw, FW_FNAME_T5, dev) < 0) {
                csio_err(hw, "could not find firmware image %s, err: %d\n",
-                        CSIO_FW_FNAME(hw), ret);
+                        FW_FNAME_T5, ret);
                return -EINVAL;
        }
 
@@ -3207,7 +3182,7 @@ static void csio_ncsi_intr_handler(struct csio_hw *hw)
  */
 static void csio_xgmac_intr_handler(struct csio_hw *hw, int port)
 {
-       uint32_t v = csio_rd_reg32(hw, CSIO_MAC_INT_CAUSE_REG(hw, port));
+       uint32_t v = csio_rd_reg32(hw, T5_PORT_REG(port, MAC_PORT_INT_CAUSE_A));
 
        v &= TXFIFO_PRTY_ERR_F | RXFIFO_PRTY_ERR_F;
        if (!v)
@@ -3217,7 +3192,7 @@ static void csio_xgmac_intr_handler(struct csio_hw *hw, int port)
                csio_fatal(hw, "XGMAC %d Tx FIFO parity error\n", port);
        if (v & RXFIFO_PRTY_ERR_F)
                csio_fatal(hw, "XGMAC %d Rx FIFO parity error\n", port);
-       csio_wr_reg32(hw, v, CSIO_MAC_INT_CAUSE_REG(hw, port));
+       csio_wr_reg32(hw, v, T5_PORT_REG(port, MAC_PORT_INT_CAUSE_A));
        csio_hw_fatal_err(hw);
 }
 
@@ -3966,13 +3941,7 @@ csio_hw_set_description(struct csio_hw *hw, uint16_t ven_id, uint16_t dev_id)
                prot_type = (dev_id & CSIO_ASIC_DEVID_PROTO_MASK);
                adap_type = (dev_id & CSIO_ASIC_DEVID_TYPE_MASK);
 
-               if (prot_type == CSIO_T4_FCOE_ASIC) {
-                       memcpy(hw->hw_ver,
-                              csio_t4_fcoe_adapters[adap_type].model_no, 16);
-                       memcpy(hw->model_desc,
-                              csio_t4_fcoe_adapters[adap_type].description,
-                              32);
-               } else if (prot_type == CSIO_T5_FCOE_ASIC) {
+               if (prot_type == CSIO_T5_FCOE_ASIC) {
                        memcpy(hw->hw_ver,
                               csio_t5_fcoe_adapters[adap_type].model_no, 16);
                        memcpy(hw->model_desc,
@@ -4009,8 +3978,8 @@ csio_hw_init(struct csio_hw *hw)
 
        strcpy(hw->name, CSIO_HW_NAME);
 
-       /* Initialize the HW chip ops with T4/T5 specific ops */
-       hw->chip_ops = csio_is_t4(hw->chip_id) ? &t4_ops : &t5_ops;
+       /* Initialize the HW chip ops T5 specific ops */
+       hw->chip_ops = &t5_ops;
 
        /* Set the model & its description */