diff options
Diffstat (limited to 'drivers/ide')
| -rw-r--r-- | drivers/ide/cy82c693.c | 2 | ||||
| -rw-r--r-- | drivers/ide/ide-cd.c | 3 | ||||
| -rw-r--r-- | drivers/ide/ide_platform.c | 6 | ||||
| -rw-r--r-- | drivers/ide/palm_bk3710.c | 2 | ||||
| -rw-r--r-- | drivers/ide/tx4939ide.c | 4 | 
5 files changed, 12 insertions, 5 deletions
| diff --git a/drivers/ide/cy82c693.c b/drivers/ide/cy82c693.c index 3be60da52123..67cbcfa35122 100644 --- a/drivers/ide/cy82c693.c +++ b/drivers/ide/cy82c693.c @@ -141,6 +141,8 @@ static void cy82c693_set_pio_mode(ide_hwif_t *hwif, ide_drive_t *drive)  		pci_write_config_byte(dev, CY82_IDE_SLAVE_IOW, time_16);  		pci_write_config_byte(dev, CY82_IDE_SLAVE_8BIT, time_8);  	} +	if (hwif->index > 0) +		pci_dev_put(dev);  }  static void __devinit init_iops_cy82c693(ide_hwif_t *hwif) diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c index 144d27261e43..04b09564bfa9 100644 --- a/drivers/ide/ide-cd.c +++ b/drivers/ide/ide-cd.c @@ -778,7 +778,8 @@ static ide_startstop_t ide_cd_do_request(ide_drive_t *drive, struct request *rq,  					sector_t block)  {  	struct ide_cmd cmd; -	int uptodate = 0, nsectors; +	int uptodate = 0; +	unsigned int nsectors;  	ide_debug_log(IDE_DBG_RQ, "cmd: 0x%x, block: %llu",  				  rq->cmd[0], (unsigned long long)block); diff --git a/drivers/ide/ide_platform.c b/drivers/ide/ide_platform.c index 542603b394e4..962693b10a1c 100644 --- a/drivers/ide/ide_platform.c +++ b/drivers/ide/ide_platform.c @@ -19,6 +19,7 @@  #include <linux/module.h>  #include <linux/ata_platform.h>  #include <linux/platform_device.h> +#include <linux/interrupt.h>  #include <linux/io.h>  static void __devinit plat_ide_setup_ports(struct ide_hw *hw, @@ -95,7 +96,10 @@ static int __devinit plat_ide_probe(struct platform_device *pdev)  	plat_ide_setup_ports(&hw, base, alt_base, pdata, res_irq->start);  	hw.dev = &pdev->dev; -	d.irq_flags = res_irq->flags; +	d.irq_flags = res_irq->flags & IRQF_TRIGGER_MASK; +	if (res_irq->flags & IORESOURCE_IRQ_SHAREABLE) +		d.irq_flags |= IRQF_SHARED; +  	if (mmio)  		d.host_flags |= IDE_HFLAG_MMIO; diff --git a/drivers/ide/palm_bk3710.c b/drivers/ide/palm_bk3710.c index 9e8f4e1b0cc9..712c7904d03e 100644 --- a/drivers/ide/palm_bk3710.c +++ b/drivers/ide/palm_bk3710.c @@ -342,7 +342,7 @@ static int __init palm_bk3710_probe(struct platform_device *pdev)  		return -ENODEV;  	} -	mem_size = mem->end - mem->start + 1; +	mem_size = resource_size(mem);  	if (request_mem_region(mem->start, mem_size, "palm_bk3710") == NULL) {  		printk(KERN_ERR "failed to request memory region\n");  		return -EBUSY; diff --git a/drivers/ide/tx4939ide.c b/drivers/ide/tx4939ide.c index bed3e39aac96..71c231954972 100644 --- a/drivers/ide/tx4939ide.c +++ b/drivers/ide/tx4939ide.c @@ -551,10 +551,10 @@ static int __init tx4939ide_probe(struct platform_device *pdev)  		return -ENODEV;  	if (!devm_request_mem_region(&pdev->dev, res->start, -				     res->end - res->start + 1, "tx4938ide")) +				     resource_size(res), "tx4938ide"))  		return -EBUSY;  	mapbase = (unsigned long)devm_ioremap(&pdev->dev, res->start, -					      res->end - res->start + 1); +					      resource_size(res));  	if (!mapbase)  		return -EBUSY;  	memset(&hw, 0, sizeof(hw)); | 
