qed: Add iWARP support in ll2 connections
Add a new connection type for iWARP ll2 connections for setting correct ll2 filters and connection type to FW. Signed-off-by: Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
526d1d05e4
commit
cc4ad324e7
@@ -896,7 +896,8 @@ static int qed_sp_ll2_rx_queue_start(struct qed_hwfn *p_hwfn,
|
|||||||
p_ramrod->main_func_queue = (conn_type == QED_LL2_TYPE_OOO) ? 0 : 1;
|
p_ramrod->main_func_queue = (conn_type == QED_LL2_TYPE_OOO) ? 0 : 1;
|
||||||
|
|
||||||
if ((IS_MF_DEFAULT(p_hwfn) || IS_MF_SI(p_hwfn)) &&
|
if ((IS_MF_DEFAULT(p_hwfn) || IS_MF_SI(p_hwfn)) &&
|
||||||
p_ramrod->main_func_queue && (conn_type != QED_LL2_TYPE_ROCE)) {
|
p_ramrod->main_func_queue && (conn_type != QED_LL2_TYPE_ROCE) &&
|
||||||
|
(conn_type != QED_LL2_TYPE_IWARP)) {
|
||||||
p_ramrod->mf_si_bcast_accept_all = 1;
|
p_ramrod->mf_si_bcast_accept_all = 1;
|
||||||
p_ramrod->mf_si_mcast_accept_all = 1;
|
p_ramrod->mf_si_mcast_accept_all = 1;
|
||||||
} else {
|
} else {
|
||||||
@@ -972,12 +973,20 @@ static int qed_sp_ll2_tx_queue_start(struct qed_hwfn *p_hwfn,
|
|||||||
p_ramrod->conn_type = PROTOCOLID_FCOE;
|
p_ramrod->conn_type = PROTOCOLID_FCOE;
|
||||||
break;
|
break;
|
||||||
case QED_LL2_TYPE_ISCSI:
|
case QED_LL2_TYPE_ISCSI:
|
||||||
case QED_LL2_TYPE_OOO:
|
|
||||||
p_ramrod->conn_type = PROTOCOLID_ISCSI;
|
p_ramrod->conn_type = PROTOCOLID_ISCSI;
|
||||||
break;
|
break;
|
||||||
case QED_LL2_TYPE_ROCE:
|
case QED_LL2_TYPE_ROCE:
|
||||||
p_ramrod->conn_type = PROTOCOLID_ROCE;
|
p_ramrod->conn_type = PROTOCOLID_ROCE;
|
||||||
break;
|
break;
|
||||||
|
case QED_LL2_TYPE_IWARP:
|
||||||
|
p_ramrod->conn_type = PROTOCOLID_IWARP;
|
||||||
|
break;
|
||||||
|
case QED_LL2_TYPE_OOO:
|
||||||
|
if (p_hwfn->hw_info.personality == QED_PCI_ISCSI)
|
||||||
|
p_ramrod->conn_type = PROTOCOLID_ISCSI;
|
||||||
|
else
|
||||||
|
p_ramrod->conn_type = PROTOCOLID_IWARP;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
p_ramrod->conn_type = PROTOCOLID_ETH;
|
p_ramrod->conn_type = PROTOCOLID_ETH;
|
||||||
DP_NOTICE(p_hwfn, "Unknown connection type: %d\n", conn_type);
|
DP_NOTICE(p_hwfn, "Unknown connection type: %d\n", conn_type);
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ enum qed_ll2_conn_type {
|
|||||||
QED_LL2_TYPE_OOO,
|
QED_LL2_TYPE_OOO,
|
||||||
QED_LL2_TYPE_RESERVED2,
|
QED_LL2_TYPE_RESERVED2,
|
||||||
QED_LL2_TYPE_ROCE,
|
QED_LL2_TYPE_ROCE,
|
||||||
|
QED_LL2_TYPE_IWARP,
|
||||||
QED_LL2_TYPE_RESERVED3,
|
QED_LL2_TYPE_RESERVED3,
|
||||||
MAX_QED_LL2_RX_CONN_TYPE
|
MAX_QED_LL2_RX_CONN_TYPE
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user