Skip to content

Commit

Permalink
[arbel] Add missing iounmap()
Browse files Browse the repository at this point in the history
Signed-off-by: Michael Brown <mcb30@ipxe.org>
  • Loading branch information
mcb30 committed Mar 20, 2016
1 parent e2cdbd5 commit 6923249
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions src/drivers/infiniband/arbel.c
Expand Up @@ -3000,6 +3000,16 @@ static int arbel_probe ( struct pci_device *pci ) {
pci_set_drvdata ( pci, arbel );
arbel->pci = pci;

/* Fix up PCI device */
adjust_pci_device ( pci );

/* Map PCI BARs */
arbel->config = ioremap ( pci_bar_start ( pci, ARBEL_PCI_CONFIG_BAR ),
ARBEL_PCI_CONFIG_BAR_SIZE );
arbel->uar = ioremap ( ( pci_bar_start ( pci, ARBEL_PCI_UAR_BAR ) +
ARBEL_PCI_UAR_IDX * ARBEL_PCI_UAR_SIZE ),
ARBEL_PCI_UAR_SIZE );

/* Allocate Infiniband devices */
for ( i = 0 ; i < ARBEL_NUM_PORTS ; i++ ) {
ibdev = alloc_ibdev ( 0 );
Expand All @@ -3014,16 +3024,6 @@ static int arbel_probe ( struct pci_device *pci ) {
ib_set_drvdata ( ibdev, arbel );
}

/* Fix up PCI device */
adjust_pci_device ( pci );

/* Get PCI BARs */
arbel->config = ioremap ( pci_bar_start ( pci, ARBEL_PCI_CONFIG_BAR ),
ARBEL_PCI_CONFIG_BAR_SIZE );
arbel->uar = ioremap ( ( pci_bar_start ( pci, ARBEL_PCI_UAR_BAR ) +
ARBEL_PCI_UAR_IDX * ARBEL_PCI_UAR_SIZE ),
ARBEL_PCI_UAR_SIZE );

/* Reset device */
arbel_reset ( arbel );

Expand Down Expand Up @@ -3072,6 +3072,8 @@ static int arbel_probe ( struct pci_device *pci ) {
err_alloc_ibdev:
for ( i-- ; i >= 0 ; i-- )
ibdev_put ( arbel->ibdev[i] );
iounmap ( arbel->uar );
iounmap ( arbel->config );
arbel_free ( arbel );
err_alloc:
return rc;
Expand All @@ -3090,6 +3092,8 @@ static void arbel_remove ( struct pci_device *pci ) {
unregister_ibdev ( arbel->ibdev[i] );
for ( i = ( ARBEL_NUM_PORTS - 1 ) ; i >= 0 ; i-- )
ibdev_put ( arbel->ibdev[i] );
iounmap ( arbel->uar );
iounmap ( arbel->config );
arbel_free ( arbel );
}

Expand Down

0 comments on commit 6923249

Please sign in to comment.