qed: Avoid implicit enum conversion in qed_ooo_submit_tx_buffers

Clang warns when one enumerated type is implicitly converted to another.

drivers/net/ethernet/qlogic/qed/qed_ll2.c:799:32: warning: implicit
conversion from enumeration type 'enum core_tx_dest' to different
enumeration type 'enum qed_ll2_tx_dest' [-Wenum-conversion]
                tx_pkt.tx_dest = p_ll2_conn->tx_dest;
                               ~ ~~~~~~~~~~~~^~~~~~~
1 warning generated.

Fix this by using a switch statement to convert between the enumerated
values since they are not 1 to 1, which matches how the rest of the
driver handles this conversion.

Link: https://github.com/ClangBuiltLinux/linux/issues/125
Suggested-by: Tomer Tayar <Tomer.Tayar@cavium.com>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Acked-by: Tomer Tayar <Tomer.Tayar@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Nathan Chancellor 2018-10-04 09:39:20 -07:00 committed by David S. Miller
parent 9e50727f0e
commit 8fa74e3c49
1 changed files with 12 additions and 1 deletions

View File

@ -796,7 +796,18 @@ qed_ooo_submit_tx_buffers(struct qed_hwfn *p_hwfn,
tx_pkt.vlan = p_buffer->vlan;
tx_pkt.bd_flags = bd_flags;
tx_pkt.l4_hdr_offset_w = l4_hdr_offset_w;
tx_pkt.tx_dest = p_ll2_conn->tx_dest;
switch (p_ll2_conn->tx_dest) {
case CORE_TX_DEST_NW:
tx_pkt.tx_dest = QED_LL2_TX_DEST_NW;
break;
case CORE_TX_DEST_LB:
tx_pkt.tx_dest = QED_LL2_TX_DEST_LB;
break;
case CORE_TX_DEST_DROP:
default:
tx_pkt.tx_dest = QED_LL2_TX_DEST_DROP;
break;
}
tx_pkt.first_frag = first_frag;
tx_pkt.first_frag_len = p_buffer->packet_length;
tx_pkt.cookie = p_buffer;