From: H Hartley Sweeten Date: Thu, 19 Jul 2012 02:01:13 +0000 (-0700) Subject: staging: comedi: dyna_pci10xx: store the pci_dev in the comedi_device X-Git-Tag: v3.6-rc1~100^2~70 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=06183026d82cf58cdfba53b661914faf3c414029;p=platform%2Fkernel%2Flinux-3.10.git staging: comedi: dyna_pci10xx: store the pci_dev in the comedi_device Use the hw_dev pointer in the comedi_device struct to hold the pci_dev instead of carrying it in the private data. Signed-off-by: H Hartley Sweeten Cc: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/comedi/drivers/dyna_pci10xx.c b/drivers/staging/comedi/drivers/dyna_pci10xx.c index e7086b1..6821f87 100644 --- a/drivers/staging/comedi/drivers/dyna_pci10xx.c +++ b/drivers/staging/comedi/drivers/dyna_pci10xx.c @@ -100,10 +100,7 @@ static const struct boardtype boardtypes[] = { }; struct dyna_pci10xx_private { - struct pci_dev *pci_dev; /* ptr to PCI device */ struct mutex mutex; - - /* device base address registers */ unsigned long BADR3; }; @@ -273,7 +270,7 @@ static int dyna_pci10xx_attach(struct comedi_device *dev, pcidev = dyna_pci10xx_find_pci_dev(dev, it); if (!pcidev) return -EIO; - devpriv->pci_dev = pcidev; + comedi_set_hw_dev(dev, &pcidev->dev); dev->board_name = thisboard->name; dev->irq = 0; @@ -344,9 +341,12 @@ static int dyna_pci10xx_attach(struct comedi_device *dev, static void dyna_pci10xx_detach(struct comedi_device *dev) { - if (devpriv && devpriv->pci_dev) { - comedi_pci_disable(devpriv->pci_dev); + struct pci_dev *pcidev = comedi_to_pci_dev(dev); + + if (devpriv) mutex_destroy(&devpriv->mutex); + if (pcidev) { + comedi_pci_disable(pcidev); } }