From: Vipul Pandya Date: Fri, 19 Oct 2012 12:34:12 +0000 (-0700) Subject: cxgb4: Remove unnecessary #ifdef condition X-Git-Tag: vofed-3.5-x~29 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=f59782b5b0cf4320b15f5daefb290456876c1475;p=~emulex%2Fcompat-rdma.git cxgb4: Remove unnecessary #ifdef condition This patch also fixes the build failure caused due to removal of #ifdef CONFIG_CHELSIO_T4_OFFLOAD condition Signed-off-by: Vipul Pandya --- diff --git a/linux-next-pending/0005-cxgb4-Remove-unnecessary-ifdef-condition.patch b/linux-next-pending/0005-cxgb4-Remove-unnecessary-ifdef-condition.patch new file mode 100644 index 0000000..ba37f95 --- /dev/null +++ b/linux-next-pending/0005-cxgb4-Remove-unnecessary-ifdef-condition.patch @@ -0,0 +1,149 @@ +From f680d9130e4a37f410dd8e96d7fd96a6ef7a208f Mon Sep 17 00:00:00 2001 +From: Vipul Pandya +Date: Thu, 18 Oct 2012 18:11:12 +0530 +Subject: [PATCH] cxgb4: Remove unnecessary #ifdef condition + +This patch also fixes the build failure caused due to removal of #ifdef +CONFIG_CHELSIO_T4_OFFLOAD condition + +Signed-off-by: Vipul Pandya +--- + drivers/net/ethernet/chelsio/cxgb4/cxgb4.h | 19 +++++++++++++++ + drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | 29 ++++------------------- + drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h | 3 ++ + 3 files changed, 27 insertions(+), 24 deletions(-) + +diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h b/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h +index a4da893..378988b 100644 +--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h ++++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h +@@ -251,6 +251,8 @@ struct adapter_params { + unsigned char rev; /* chip revision */ + unsigned char offload; + ++ unsigned char bypass; ++ + unsigned int ofldq_wr_cred; + }; + +@@ -642,6 +644,23 @@ extern int dbfifo_int_thresh; + #define for_each_port(adapter, iter) \ + for (iter = 0; iter < (adapter)->params.nports; ++iter) + ++static inline int is_bypass(struct adapter *adap) ++{ ++ return adap->params.bypass; ++} ++ ++static inline int is_bypass_device(int device) ++{ ++ /* this should be set based upon device capabilities */ ++ switch (device) { ++ case 0x440b: ++ case 0x440c: ++ return 1; ++ default: ++ return 0; ++ } ++} ++ + static inline unsigned int core_ticks_per_usec(const struct adapter *adap) + { + return adap->params.vpd.cclk / 1000; +diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +index 604f4f8..c1cde11 100644 +--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c ++++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +@@ -3513,18 +3513,6 @@ static int adap_init0_no_config(struct adapter *adapter, int reset) + if (ret < 0) + goto bye; + +-#ifndef CONFIG_CHELSIO_T4_OFFLOAD +- /* +- * If we're a pure NIC driver then disable all offloading facilities. +- * This will allow the firmware to optimize aspects of the hardware +- * configuration which will result in improved performance. +- */ +- caps_cmd.ofldcaps = 0; +- caps_cmd.iscsicaps = 0; +- caps_cmd.rdmacaps = 0; +- caps_cmd.fcoecaps = 0; +-#endif +- + if (caps_cmd.niccaps & htons(FW_CAPS_CONFIG_NIC_VM)) { + if (!vf_acls) + caps_cmd.niccaps ^= htons(FW_CAPS_CONFIG_NIC_VM); +@@ -3745,6 +3733,7 @@ static int adap_init0(struct adapter *adap) + u32 v, port_vec; + enum dev_state state; + u32 params[7], val[7]; ++ struct fw_caps_config_cmd caps_cmd; + int reset = 1, j; + + /* +@@ -3898,6 +3887,9 @@ static int adap_init0(struct adapter *adap) + goto bye; + } + ++ if (is_bypass_device(adap->pdev->device)) ++ adap->params.bypass = 1; ++ + /* + * Grab some of our basic fundamental operating parameters. + */ +@@ -3940,13 +3932,12 @@ static int adap_init0(struct adapter *adap) + adap->tids.aftid_end = val[1]; + } + +-#ifdef CONFIG_CHELSIO_T4_OFFLOAD + /* + * Get device capabilities so we can determine what resources we need + * to manage. + */ + memset(&caps_cmd, 0, sizeof(caps_cmd)); +- caps_cmd.op_to_write = htonl(V_FW_CMD_OP(FW_CAPS_CONFIG_CMD) | ++ caps_cmd.op_to_write = htonl(FW_CMD_OP(FW_CAPS_CONFIG_CMD) | + FW_CMD_REQUEST | FW_CMD_READ); + caps_cmd.retval_len16 = htonl(FW_LEN16(caps_cmd)); + ret = t4_wr_mbox(adap, adap->mbox, &caps_cmd, sizeof(caps_cmd), +@@ -3991,15 +3982,6 @@ static int adap_init0(struct adapter *adap) + adap->vres.ddp.size = val[4] - val[3] + 1; + adap->params.ofldq_wr_cred = val[5]; + +- params[0] = FW_PARAM_PFVF(ETHOFLD_START); +- params[1] = FW_PARAM_PFVF(ETHOFLD_END); +- ret = t4_query_params(adap, adap->mbox, adap->fn, 0, 2, +- params, val); +- if ((val[0] != val[1]) && (ret >= 0)) { +- adap->tids.uotid_base = val[0]; +- adap->tids.nuotids = val[1] - val[0] + 1; +- } +- + adap->params.offload = 1; + } + if (caps_cmd.rdmacaps) { +@@ -4048,7 +4030,6 @@ static int adap_init0(struct adapter *adap) + } + #undef FW_PARAM_PFVF + #undef FW_PARAM_DEV +-#endif /* CONFIG_CHELSIO_T4_OFFLOAD */ + + /* + * These are finalized by FW initialization, load their values now. +diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h +index 1b899fe..39bec73 100644 +--- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h ++++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.h +@@ -102,6 +102,9 @@ struct tid_info { + unsigned int ftid_base; + unsigned int aftid_base; + unsigned int aftid_end; ++ /* Server filter region */ ++ unsigned int sftid_base; ++ unsigned int nsftids; + + spinlock_t atid_lock ____cacheline_aligned_in_smp; + union aopen_entry *afree; +-- +1.7.1 +