X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fcdrom%2Fisp16.c;h=6d66d0b6485b0b319fbe4659e758f3c172a90b92;hb=2cf7311f007833d5818fc9241c09a372c0325a4a;hp=ff89164bc98a67c7e92c1faa7ae14be0adc874d0;hpb=a91482bdcc2e0f6035702e46f1b99043a0893346;p=linux-2.6.git diff --git a/drivers/cdrom/isp16.c b/drivers/cdrom/isp16.c index ff89164bc..6d66d0b64 100644 --- a/drivers/cdrom/isp16.c +++ b/drivers/cdrom/isp16.c @@ -16,10 +16,6 @@ * module_init & module_exit. * Torben Mathiasen * - * 19 June 2004 -- check_region() converted to request_region() - * and return statement cleanups. - * Jesper Juhl - * * Detect cdrom interface on ISP16 sound card. * Configure cdrom interface. * @@ -122,17 +118,17 @@ int __init isp16_init(void) if (!strcmp(isp16_cdrom_type, "noisp16")) { printk("ISP16: no cdrom interface configured.\n"); - return 0; + return (0); } - if (!request_region(ISP16_IO_BASE, ISP16_IO_SIZE, "isp16")) { + if (check_region(ISP16_IO_BASE, ISP16_IO_SIZE)) { printk("ISP16: i/o ports already in use.\n"); - goto out; + return (-EIO); } if ((isp16_type = isp16_detect()) < 0) { printk("ISP16: no cdrom interface found.\n"); - goto cleanup_out; + return (-EIO); } printk(KERN_INFO @@ -152,32 +148,27 @@ int __init isp16_init(void) else { printk("ISP16: %s not supported by cdrom interface.\n", isp16_cdrom_type); - goto cleanup_out; + return (-EIO); } if (isp16_cdi_config(isp16_cdrom_base, expected_drive, isp16_cdrom_irq, isp16_cdrom_dma) < 0) { printk ("ISP16: cdrom interface has not been properly configured.\n"); - goto cleanup_out; + return (-EIO); } printk(KERN_INFO "ISP16: cdrom interface set up with io base 0x%03X, irq %d, dma %d," " type %s.\n", isp16_cdrom_base, isp16_cdrom_irq, isp16_cdrom_dma, isp16_cdrom_type); - return 0; - -cleanup_out: - release_region(ISP16_IO_BASE, ISP16_IO_SIZE); -out: - return -EIO; + return (0); } static short __init isp16_detect(void) { if (isp16_c929__detect() >= 0) - return 2; + return (2); else return (isp16_c928__detect()); } @@ -215,7 +206,7 @@ static short __init isp16_c928__detect(void) ISP16_OUT(ISP16_C928__ENABLE_PORT, enable_cdrom); } else { /* bits are not the same */ ISP16_OUT(ISP16_CTRL_PORT, ctrl); - return i; /* -> not detected: possibly incorrect conclusion */ + return (i); /* -> not detected: possibly incorrect conclusion */ } } else if (enable_cdrom == 0x20) i = 0; @@ -224,7 +215,7 @@ static short __init isp16_c928__detect(void) ISP16_OUT(ISP16_CTRL_PORT, ctrl); - return i; + return (i); } static short __init isp16_c929__detect(void) @@ -245,12 +236,12 @@ static short __init isp16_c929__detect(void) tmp = ISP16_IN(ISP16_CTRL_PORT); if (tmp != 2) /* isp16 with 82C929 not detected */ - return -1; + return (-1); /* restore ctrl port value */ ISP16_OUT(ISP16_CTRL_PORT, ctrl); - return 2; + return (2); } static short __init @@ -281,7 +272,7 @@ isp16_cdi_config(int base, u_char drive_type, int irq, int dma) printk ("ISP16: base address 0x%03X not supported by cdrom interface.\n", base); - return -1; + return (-1); } switch (irq) { case 0: @@ -312,7 +303,7 @@ isp16_cdi_config(int base, u_char drive_type, int irq, int dma) default: printk("ISP16: irq %d not supported by cdrom interface.\n", irq); - return -1; + return (-1); } switch (dma) { case 0: @@ -321,7 +312,7 @@ isp16_cdi_config(int base, u_char drive_type, int irq, int dma) case 1: printk("ISP16: dma 1 cannot be used by cdrom interface," " due to conflict with the sound card.\n"); - return -1; + return (-1); break; case 3: dma_code = ISP16_DMA_3; @@ -338,7 +329,7 @@ isp16_cdi_config(int base, u_char drive_type, int irq, int dma) default: printk("ISP16: dma %d not supported by cdrom interface.\n", dma); - return -1; + return (-1); } if (drive_type != ISP16_SONY && drive_type != ISP16_PANASONIC0 && @@ -348,7 +339,7 @@ isp16_cdi_config(int base, u_char drive_type, int irq, int dma) printk ("ISP16: drive type (code 0x%02X) not supported by cdrom" " interface.\n", drive_type); - return -1; + return (-1); } /* set type of interface */ @@ -363,7 +354,7 @@ isp16_cdi_config(int base, u_char drive_type, int irq, int dma) i = ISP16_IN(ISP16_IO_SET_PORT) & ISP16_IO_SET_MASK; /* keep some bits */ ISP16_OUT(ISP16_IO_SET_PORT, i | base_code | irq_code | dma_code); - return 0; + return (0); } void __exit isp16_exit(void)