Bladeren bron

qla3xxx: bugfix: Fix VLAN rx completion handling.

Fix 4032 chip undocumented "feature" where bit-8 is set
if the inbound completion is for a VLAN.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Ron Mercer 17 jaren geleden
bovenliggende
commit
50626297b1
1 gewijzigde bestanden met toevoegingen van 6 en 0 verwijderingen
  1. 6 0
      drivers/net/qla3xxx.c

+ 6 - 0
drivers/net/qla3xxx.c

@@ -2249,6 +2249,12 @@ static int ql_tx_rx_clean(struct ql3_adapter *qdev,
 
 		net_rsp = qdev->rsp_current;
 		rmb();
+		/*
+		 * Fix 4032 chipe undocumented "feature" where bit-8 is set if the
+		 * inbound completion is for a VLAN.
+		 */
+		if (qdev->device_id == QL3032_DEVICE_ID)
+			net_rsp->opcode &= 0x7f;
 		switch (net_rsp->opcode) {
 
 		case OPCODE_OB_MAC_IOCB_FN0: