From: H Hartley Sweeten Date: Mon, 24 Sep 2012 20:23:22 +0000 (-0700) Subject: staging: comedi: s626: cleanup ioremap() X-Git-Tag: v3.7-rc1~173^2~25 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4f6c7bf992bc6f1bbf38b08e9b3c8a21865888f2;p=platform%2Fupstream%2Fkernel-adaptation-pc.git staging: comedi: s626: cleanup ioremap() The local variable 'resourceStart' is only used in the ioremap() to hold the PCI bar 0 base address. Just use the pci_resource_start() directly in the ioremap(). Also, instead of assuming the resource size for the ioremap, use pci_resource_len() to get the actual size. Remove the kernel noise when the ioremap fails and change the error code from -ENODEV to -ENOMEM. Signed-off-by: H Hartley Sweeten Cc: Ian Abbott Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/comedi/drivers/s626.c b/drivers/staging/comedi/drivers/s626.c index 12709b0..6f6c808 100644 --- a/drivers/staging/comedi/drivers/s626.c +++ b/drivers/staging/comedi/drivers/s626.c @@ -2446,7 +2446,6 @@ static int s626_attach_pci(struct comedi_device *dev, struct pci_dev *pcidev) /* unsigned int data[16]; */ int i; int ret; - resource_size_t resourceStart; dma_addr_t appdma; struct comedi_subdevice *s; @@ -2461,13 +2460,10 @@ static int s626_attach_pci(struct comedi_device *dev, struct pci_dev *pcidev) return ret; dev->iobase = 1; /* detach needs this */ - resourceStart = pci_resource_start(pcidev, 0); - - devpriv->base_addr = ioremap(resourceStart, SIZEOF_ADDRESS_SPACE); - if (devpriv->base_addr == NULL) { - printk(KERN_ERR "s626_attach: IOREMAP failed\n"); - return -ENODEV; - } + devpriv->base_addr = ioremap(pci_resource_start(pcidev, 0), + pci_resource_len(pcidev, 0)); + if (!devpriv->base_addr) + return -ENOMEM; if (devpriv->base_addr) { /* disable master interrupt */ diff --git a/drivers/staging/comedi/drivers/s626.h b/drivers/staging/comedi/drivers/s626.h index 8a8f196..ff4b3a5 100644 --- a/drivers/staging/comedi/drivers/s626.h +++ b/drivers/staging/comedi/drivers/s626.h @@ -73,7 +73,6 @@ #include #define S626_SIZE 0x0200 -#define SIZEOF_ADDRESS_SPACE 0x0200 #define DMABUF_SIZE 4096 /* 4k pages */ #define S626_ADC_CHANNELS 16