diff options
author | Michael Chan <mchan@broadcom.com> | 2012-07-05 10:21:55 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-09 03:18:04 -0400 |
commit | 054581e6c1eb314d54d4747fba545e9802be29da (patch) | |
tree | 81b36a9e75d31229c55baa0ce00f0597b4243282 /drivers | |
parent | 6fecd35d4cd79fc75e8290abb86734c18500d2a2 (diff) |
cnic: Don't use netdev->base_addr
commit c0357e975afdbbedab5c662d19bef865f02adc17
bnx2: stop using net_device.{base_addr, irq}.
removed netdev->base_addr so we need to update cnic to get the MMIO
base address from pci_resource_start(). Otherwise, mmap of the uio
device will fail.
Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/broadcom/cnic.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/ethernet/broadcom/cnic.c b/drivers/net/ethernet/broadcom/cnic.c index c95e7b5e2b85..3c95065e0def 100644 --- a/drivers/net/ethernet/broadcom/cnic.c +++ b/drivers/net/ethernet/broadcom/cnic.c | |||
@@ -1053,12 +1053,13 @@ static int cnic_init_uio(struct cnic_dev *dev) | |||
1053 | 1053 | ||
1054 | uinfo = &udev->cnic_uinfo; | 1054 | uinfo = &udev->cnic_uinfo; |
1055 | 1055 | ||
1056 | uinfo->mem[0].addr = dev->netdev->base_addr; | 1056 | uinfo->mem[0].addr = pci_resource_start(dev->pcidev, 0); |
1057 | uinfo->mem[0].internal_addr = dev->regview; | 1057 | uinfo->mem[0].internal_addr = dev->regview; |
1058 | uinfo->mem[0].size = dev->netdev->mem_end - dev->netdev->mem_start; | ||
1059 | uinfo->mem[0].memtype = UIO_MEM_PHYS; | 1058 | uinfo->mem[0].memtype = UIO_MEM_PHYS; |
1060 | 1059 | ||
1061 | if (test_bit(CNIC_F_BNX2_CLASS, &dev->flags)) { | 1060 | if (test_bit(CNIC_F_BNX2_CLASS, &dev->flags)) { |
1061 | uinfo->mem[0].size = MB_GET_CID_ADDR(TX_TSS_CID + | ||
1062 | TX_MAX_TSS_RINGS + 1); | ||
1062 | uinfo->mem[1].addr = (unsigned long) cp->status_blk.gen & | 1063 | uinfo->mem[1].addr = (unsigned long) cp->status_blk.gen & |
1063 | PAGE_MASK; | 1064 | PAGE_MASK; |
1064 | if (cp->ethdev->drv_state & CNIC_DRV_STATE_USING_MSIX) | 1065 | if (cp->ethdev->drv_state & CNIC_DRV_STATE_USING_MSIX) |
@@ -1068,6 +1069,8 @@ static int cnic_init_uio(struct cnic_dev *dev) | |||
1068 | 1069 | ||
1069 | uinfo->name = "bnx2_cnic"; | 1070 | uinfo->name = "bnx2_cnic"; |
1070 | } else if (test_bit(CNIC_F_BNX2X_CLASS, &dev->flags)) { | 1071 | } else if (test_bit(CNIC_F_BNX2X_CLASS, &dev->flags)) { |
1072 | uinfo->mem[0].size = pci_resource_len(dev->pcidev, 0); | ||
1073 | |||
1071 | uinfo->mem[1].addr = (unsigned long) cp->bnx2x_def_status_blk & | 1074 | uinfo->mem[1].addr = (unsigned long) cp->bnx2x_def_status_blk & |
1072 | PAGE_MASK; | 1075 | PAGE_MASK; |
1073 | uinfo->mem[1].size = sizeof(*cp->bnx2x_def_status_blk); | 1076 | uinfo->mem[1].size = sizeof(*cp->bnx2x_def_status_blk); |