Skip to content

Commit

Permalink
[golan] Do not assume all devices are identical
Browse files Browse the repository at this point in the history
Remove the global variable shomron_nodnic_supported, since it may have
different values for different PCI devices.

Originally-fixed-by: Mohammed Taha <mohammedt@mellanox.com>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
  • Loading branch information
mcb30 committed Mar 18, 2018
1 parent 89e31f8 commit 0778418
Showing 1 changed file with 2 additions and 5 deletions.
7 changes: 2 additions & 5 deletions src/drivers/infiniband/golan.c
Expand Up @@ -2586,8 +2586,6 @@ struct flexboot_nodnic_callbacks shomron_nodnic_callbacks = {
.tx_uar_send_doorbell_fn = shomron_tx_uar_send_db,
};

static int shomron_nodnic_supported = 0;

static int shomron_nodnic_is_supported ( struct pci_device *pci ) {
if ( DEVICE_IS_CIB ( pci->device ) )
return 0;
Expand All @@ -2607,8 +2605,7 @@ static int golan_probe ( struct pci_device *pci ) {
goto probe_done;
}

shomron_nodnic_supported = shomron_nodnic_is_supported ( pci );
if ( shomron_nodnic_supported ) {
if ( shomron_nodnic_is_supported ( pci ) ) {
DBG ( "%s: Using NODNIC driver\n", __FUNCTION__ );
rc = flexboot_nodnic_probe ( pci, &shomron_nodnic_callbacks, NULL );
} else {
Expand All @@ -2624,7 +2621,7 @@ static int golan_probe ( struct pci_device *pci ) {
static void golan_remove ( struct pci_device *pci ) {
DBG ( "%s: start\n", __FUNCTION__ );

if ( ! shomron_nodnic_supported ) {
if ( ! shomron_nodnic_is_supported ( pci ) ) {
DBG ( "%s: Using normal driver remove\n", __FUNCTION__ );
golan_remove_normal ( pci );
return;
Expand Down

0 comments on commit 0778418

Please sign in to comment.