aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/bnx2.c8
-rw-r--r--drivers/net/tg3.c13
2 files changed, 11 insertions, 10 deletions
diff --git a/drivers/net/bnx2.c b/drivers/net/bnx2.c
index d3f739a295df..bb403887b549 100644
--- a/drivers/net/bnx2.c
+++ b/drivers/net/bnx2.c
@@ -7773,15 +7773,17 @@ bnx2_read_vpd_fw_ver(struct bnx2 *bp)
7773 unsigned int block_end; 7773 unsigned int block_end;
7774 7774
7775 if (val == 0x82 || val == 0x91) { 7775 if (val == 0x82 || val == 0x91) {
7776 i = (i + 3 + (data[i + 1] + (data[i + 2] << 8))); 7776 i += PCI_VPD_LRDT_TAG_SIZE +
7777 pci_vpd_lrdt_size(&data[i]);
7777 continue; 7778 continue;
7778 } 7779 }
7779 7780
7780 if (val != 0x90) 7781 if (val != 0x90)
7781 goto vpd_done; 7782 goto vpd_done;
7782 7783
7783 block_end = (i + 3 + (data[i + 1] + (data[i + 2] << 8))); 7784 block_end = (i + PCI_VPD_LRDT_TAG_SIZE +
7784 i += 3; 7785 pci_vpd_lrdt_size(&data[i]));
7786 i += PCI_VPD_LRDT_TAG_SIZE;
7785 7787
7786 if (block_end > BNX2_VPD_LEN) 7788 if (block_end > BNX2_VPD_LEN)
7787 goto vpd_done; 7789 goto vpd_done;
diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c
index 0d06e4007f44..5fccbe459949 100644
--- a/drivers/net/tg3.c
+++ b/drivers/net/tg3.c
@@ -12590,19 +12590,18 @@ static void __devinit tg3_read_partno(struct tg3 *tp)
12590 unsigned int block_end; 12590 unsigned int block_end;
12591 12591
12592 if (val == 0x82 || val == 0x91) { 12592 if (val == 0x82 || val == 0x91) {
12593 i = (i + 3 + 12593 i += PCI_VPD_LRDT_TAG_SIZE +
12594 (vpd_data[i + 1] + 12594 pci_vpd_lrdt_size(&vpd_data[i]);
12595 (vpd_data[i + 2] << 8)));
12596 continue; 12595 continue;
12597 } 12596 }
12598 12597
12599 if (val != 0x90) 12598 if (val != 0x90)
12600 goto out_not_found; 12599 goto out_not_found;
12601 12600
12602 block_end = (i + 3 + 12601 block_end = i + PCI_VPD_LRDT_TAG_SIZE +
12603 (vpd_data[i + 1] + 12602 pci_vpd_lrdt_size(&vpd_data[i]);
12604 (vpd_data[i + 2] << 8))); 12603
12605 i += 3; 12604 i += PCI_VPD_LRDT_TAG_SIZE;
12606 12605
12607 if (block_end > TG3_NVM_VPD_LEN) 12606 if (block_end > TG3_NVM_VPD_LEN)
12608 goto out_not_found; 12607 goto out_not_found;