Commit dc803df8 authored by Ben Hutchings's avatar Ben Hutchings Committed by David S. Miller

sfc: Remove pointless abstraction of memory BAR number

Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8698a6b6
...@@ -818,9 +818,8 @@ static int efx_init_io(struct efx_nic *efx) ...@@ -818,9 +818,8 @@ static int efx_init_io(struct efx_nic *efx)
goto fail2; goto fail2;
} }
efx->membase_phys = pci_resource_start(efx->pci_dev, efx->membase_phys = pci_resource_start(efx->pci_dev, EFX_MEM_BAR);
efx->type->mem_bar); rc = pci_request_region(pci_dev, EFX_MEM_BAR, "sfc");
rc = pci_request_region(pci_dev, efx->type->mem_bar, "sfc");
if (rc) { if (rc) {
EFX_ERR(efx, "request for memory BAR failed\n"); EFX_ERR(efx, "request for memory BAR failed\n");
rc = -EIO; rc = -EIO;
...@@ -829,21 +828,20 @@ static int efx_init_io(struct efx_nic *efx) ...@@ -829,21 +828,20 @@ static int efx_init_io(struct efx_nic *efx)
efx->membase = ioremap_nocache(efx->membase_phys, efx->membase = ioremap_nocache(efx->membase_phys,
efx->type->mem_map_size); efx->type->mem_map_size);
if (!efx->membase) { if (!efx->membase) {
EFX_ERR(efx, "could not map memory BAR %d at %llx+%x\n", EFX_ERR(efx, "could not map memory BAR at %llx+%x\n",
efx->type->mem_bar,
(unsigned long long)efx->membase_phys, (unsigned long long)efx->membase_phys,
efx->type->mem_map_size); efx->type->mem_map_size);
rc = -ENOMEM; rc = -ENOMEM;
goto fail4; goto fail4;
} }
EFX_LOG(efx, "memory BAR %u at %llx+%x (virtual %p)\n", EFX_LOG(efx, "memory BAR at %llx+%x (virtual %p)\n",
efx->type->mem_bar, (unsigned long long)efx->membase_phys, (unsigned long long)efx->membase_phys,
efx->type->mem_map_size, efx->membase); efx->type->mem_map_size, efx->membase);
return 0; return 0;
fail4: fail4:
pci_release_region(efx->pci_dev, efx->type->mem_bar); pci_release_region(efx->pci_dev, EFX_MEM_BAR);
fail3: fail3:
efx->membase_phys = 0; efx->membase_phys = 0;
fail2: fail2:
...@@ -862,7 +860,7 @@ static void efx_fini_io(struct efx_nic *efx) ...@@ -862,7 +860,7 @@ static void efx_fini_io(struct efx_nic *efx)
} }
if (efx->membase_phys) { if (efx->membase_phys) {
pci_release_region(efx->pci_dev, efx->type->mem_bar); pci_release_region(efx->pci_dev, EFX_MEM_BAR);
efx->membase_phys = 0; efx->membase_phys = 0;
} }
......
...@@ -19,6 +19,9 @@ ...@@ -19,6 +19,9 @@
#define FALCON_A_S_DEVID 0x6703 #define FALCON_A_S_DEVID 0x6703
#define FALCON_B_P_DEVID 0x0710 #define FALCON_B_P_DEVID 0x0710
/* Solarstorm controllers use BAR 0 for I/O space and BAR 2(&3) for memory */
#define EFX_MEM_BAR 2
/* TX */ /* TX */
extern netdev_tx_t efx_xmit(struct efx_nic *efx, extern netdev_tx_t efx_xmit(struct efx_nic *efx,
struct efx_tx_queue *tx_queue, struct efx_tx_queue *tx_queue,
......
...@@ -3117,7 +3117,6 @@ void falcon_update_nic_stats(struct efx_nic *efx) ...@@ -3117,7 +3117,6 @@ void falcon_update_nic_stats(struct efx_nic *efx)
*/ */
struct efx_nic_type falcon_a_nic_type = { struct efx_nic_type falcon_a_nic_type = {
.mem_bar = 2,
.mem_map_size = 0x20000, .mem_map_size = 0x20000,
.txd_ptr_tbl_base = FR_AA_TX_DESC_PTR_TBL_KER, .txd_ptr_tbl_base = FR_AA_TX_DESC_PTR_TBL_KER,
.rxd_ptr_tbl_base = FR_AA_RX_DESC_PTR_TBL_KER, .rxd_ptr_tbl_base = FR_AA_RX_DESC_PTR_TBL_KER,
...@@ -3131,7 +3130,6 @@ struct efx_nic_type falcon_a_nic_type = { ...@@ -3131,7 +3130,6 @@ struct efx_nic_type falcon_a_nic_type = {
}; };
struct efx_nic_type falcon_b_nic_type = { struct efx_nic_type falcon_b_nic_type = {
.mem_bar = 2,
/* Map everything up to and including the RSS indirection /* Map everything up to and including the RSS indirection
* table. Don't map MSI-X table, MSI-X PBA since Linux * table. Don't map MSI-X table, MSI-X PBA since Linux
* requires that they not be mapped. */ * requires that they not be mapped. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment