From a43163c9bb1ca5f00e67fb7f3dd91ee1e327f00f Mon Sep 17 00:00:00 2001
From: H Hartley Sweeten <hartleys@visionengravers.com>
Date: Wed, 31 Oct 2012 16:57:22 -0700
Subject: [PATCH] staging: comedi: addi-data: remove i_pci_card_free()

This function calls comedi_pci_disable() to disable the pci
device when detached. It's only called from i_ADDI_Detach().
Move the code there and delete the function.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 .../comedi/drivers/addi-data/addi_amcc_s5933.h   | 16 ----------------
 .../comedi/drivers/addi-data/addi_common.c       | 12 ++++++++----
 2 files changed, 8 insertions(+), 20 deletions(-)

diff --git a/drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h b/drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h
index 08b32406e04f..2011f4bb3046 100644
--- a/drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h
+++ b/drivers/staging/comedi/drivers/addi-data/addi_amcc_s5933.h
@@ -225,8 +225,6 @@ struct pcilst_struct *ptr_select_and_alloc_pci_card(unsigned short vendor_id,
 						    unsigned short pci_bus,
 						    unsigned short pci_slot);
 
-int i_pci_card_free(struct pcilst_struct *amcc);
-
 /****************************************************************************/
 
 /* build list of amcc cards in this system */
@@ -326,20 +324,6 @@ int i_find_free_pci_card_by_position(unsigned short vendor_id,
 	return 1;
 }
 
-/****************************************************************************/
-/* mark card as free */
-int i_pci_card_free(struct pcilst_struct *amcc)
-{
-	if (!amcc)
-		return -1;
-
-	if (!amcc->used)
-		return 1;
-	amcc->used = 0;
-	comedi_pci_disable(amcc->pcidev);
-	return 0;
-}
-
 /****************************************************************************/
 /* select and alloc card */
 struct pcilst_struct *ptr_select_and_alloc_pci_card(unsigned short vendor_id,
diff --git a/drivers/staging/comedi/drivers/addi-data/addi_common.c b/drivers/staging/comedi/drivers/addi-data/addi_common.c
index 2dab403ac264..f6c36ac93b2b 100644
--- a/drivers/staging/comedi/drivers/addi-data/addi_common.c
+++ b/drivers/staging/comedi/drivers/addi-data/addi_common.c
@@ -402,8 +402,10 @@ static void i_ADDI_Detach(struct comedi_device *dev)
 			free_irq(dev->irq, dev);
 		if ((this_board->pc_EepromChip == NULL) ||
 		    (strcmp(this_board->pc_EepromChip, ADDIDATA_9054) != 0)) {
-			if (devpriv->allocated)
-				i_pci_card_free(devpriv->amcc);
+			if (devpriv->allocated) {
+				comedi_pci_disable(devpriv->amcc->pcidev);
+				devpriv->amcc->used = 0;
+			}
 			if (devpriv->ul_DmaBufferVirtual[0]) {
 				free_pages((unsigned long)devpriv->
 					ul_DmaBufferVirtual[0],
@@ -416,8 +418,10 @@ static void i_ADDI_Detach(struct comedi_device *dev)
 			}
 		} else {
 			iounmap(devpriv->dw_AiBase);
-			if (devpriv->allocated)
-				i_pci_card_free(devpriv->amcc);
+			if (devpriv->allocated) {
+				comedi_pci_disable(devpriv->amcc->pcidev);
+				devpriv->amcc->used = 0;
+			}
 		}
 		if (pci_list_builded) {
 			v_pci_card_list_cleanup(this_board->i_VendorId);
-- 
2.30.9