Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

sfc: Remove pointless abstraction of memory BAR number

parent 8698a6b6
Loading
Loading
Loading
Loading
+7 −9
Original line number Original line Diff line number Diff line
@@ -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)
	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)
	}
	}


	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;
	}
	}


+3 −0
Original line number Original line Diff line number Diff line
@@ -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,
+0 −2
Original line number Original line Diff line number Diff line
@@ -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 = {
};
};


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.  */