From 2b00f54b248144acc393740e4c4679b6aa531193 Mon Sep 17 00:00:00 2001 From: H Hartley Sweeten Date: Wed, 24 Jul 2013 12:08:58 -0700 Subject: [PATCH] staging: comedi: ii_pci20kc: use comedi_alloc_spriv() For aesthetic reasons, use the helper function to allocate the subdevice private data instead of hanging it on the device private data. The core will free the memory during the detach. Signed-off-by: H Hartley Sweeten Cc: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- drivers/staging/comedi/drivers/ii_pci20kc.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/staging/comedi/drivers/ii_pci20kc.c b/drivers/staging/comedi/drivers/ii_pci20kc.c index 9c199a194d2b..45d76ed66498 100644 --- a/drivers/staging/comedi/drivers/ii_pci20kc.c +++ b/drivers/staging/comedi/drivers/ii_pci20kc.c @@ -149,9 +149,7 @@ union pci20xxx_subdev_private { }; struct pci20xxx_private { - void __iomem *ioaddr; - union pci20xxx_subdev_private subdev_private[PCI20000_MODULES]; }; #define CHAN (CR_CHAN(it->chanlist[0])) @@ -222,9 +220,10 @@ static int pci20xxx_attach(struct comedi_device *dev, for (i = 0; i < PCI20000_MODULES; i++) { s = &dev->subdevices[i]; + sdp = comedi_alloc_spriv(s, sizeof(*sdp)); + if (!sdp) + return -ENOMEM; id = readb(devpriv->ioaddr + (i + 1) * PCI20000_OFFSET); - s->private = devpriv->subdev_private + i; - sdp = s->private; switch (id) { case PCI20006_ID: sdp->pci20006.iobase = -- 2.34.1