diff options
author | Vasundhara Volam <vasundhara.volam@emulex.com> | 2013-10-17 02:17:14 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-10-18 16:32:31 -0400 |
commit | 0fb88d61bc60779dde88b0fc268da17eb81d0412 (patch) | |
tree | 29b044ab55b693c406ddf68be2647436643350ef | |
parent | 2b13d06c9584b4eb773f1e80bbaedab9a1c344e1 (diff) |
be2net: pass if_id for v1 and V2 versions of TX_CREATE cmd
It is a required field for all TX_CREATE cmd versions > 0.
This fixes a driver initialization failure, caused by recent SH-R Firmwares
(versions > 10.0.639.0) failing the TX_CREATE cmd when if_id field is
not passed.
Signed-off-by: Sathya Perla <sathya.perla@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/emulex/benet/be_cmds.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/emulex/benet/be_cmds.c b/drivers/net/ethernet/emulex/benet/be_cmds.c index bd0e0c0bbcd8..c08fd32bb8e5 100644 --- a/drivers/net/ethernet/emulex/benet/be_cmds.c +++ b/drivers/net/ethernet/emulex/benet/be_cmds.c | |||
@@ -1198,7 +1198,6 @@ int be_cmd_txq_create(struct be_adapter *adapter, struct be_tx_obj *txo) | |||
1198 | 1198 | ||
1199 | if (lancer_chip(adapter)) { | 1199 | if (lancer_chip(adapter)) { |
1200 | req->hdr.version = 1; | 1200 | req->hdr.version = 1; |
1201 | req->if_id = cpu_to_le16(adapter->if_handle); | ||
1202 | } else if (BEx_chip(adapter)) { | 1201 | } else if (BEx_chip(adapter)) { |
1203 | if (adapter->function_caps & BE_FUNCTION_CAPS_SUPER_NIC) | 1202 | if (adapter->function_caps & BE_FUNCTION_CAPS_SUPER_NIC) |
1204 | req->hdr.version = 2; | 1203 | req->hdr.version = 2; |
@@ -1206,6 +1205,8 @@ int be_cmd_txq_create(struct be_adapter *adapter, struct be_tx_obj *txo) | |||
1206 | req->hdr.version = 2; | 1205 | req->hdr.version = 2; |
1207 | } | 1206 | } |
1208 | 1207 | ||
1208 | if (req->hdr.version > 0) | ||
1209 | req->if_id = cpu_to_le16(adapter->if_handle); | ||
1209 | req->num_pages = PAGES_4K_SPANNED(q_mem->va, q_mem->size); | 1210 | req->num_pages = PAGES_4K_SPANNED(q_mem->va, q_mem->size); |
1210 | req->ulp_num = BE_ULP1_NUM; | 1211 | req->ulp_num = BE_ULP1_NUM; |
1211 | req->type = BE_ETH_TX_RING_TYPE_STANDARD; | 1212 | req->type = BE_ETH_TX_RING_TYPE_STANDARD; |