diff options
73 files changed, 104 insertions, 104 deletions
diff --git a/drivers/acorn/block/mfmhd.c b/drivers/acorn/block/mfmhd.c index d9c9a35961b..3dd6b7bb5d3 100644 --- a/drivers/acorn/block/mfmhd.c +++ b/drivers/acorn/block/mfmhd.c @@ -1278,7 +1278,7 @@ static int mfm_do_init(unsigned char irqmask)  	printk("mfm: detected %d hard drive%s\n", mfm_drives,  				mfm_drives == 1 ? "" : "s"); -	ret = request_irq(mfm_irq, mfm_interrupt_handler, SA_INTERRUPT, "MFM harddisk", NULL); +	ret = request_irq(mfm_irq, mfm_interrupt_handler, IRQF_DISABLED, "MFM harddisk", NULL);  	if (ret) {  		printk("mfm: unable to get IRQ%d\n", mfm_irq);  		goto out4; diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index 5dd2ed11a38..5a468e2779a 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c @@ -280,7 +280,7 @@ acpi_os_install_interrupt_handler(u32 gsi, acpi_osd_handler handler,  	acpi_irq_handler = handler;  	acpi_irq_context = context; -	if (request_irq(irq, acpi_irq, SA_SHIRQ, "acpi", acpi_irq)) { +	if (request_irq(irq, acpi_irq, IRQF_SHARED, "acpi", acpi_irq)) {  		printk(KERN_ERR PREFIX "SCI (IRQ%d) allocation failed\n", irq);  		return AE_NOT_ACQUIRED;  	} diff --git a/drivers/atm/ambassador.c b/drivers/atm/ambassador.c index 4048681f36d..d3b426313a4 100644 --- a/drivers/atm/ambassador.c +++ b/drivers/atm/ambassador.c @@ -2286,7 +2286,7 @@ static int __devinit amb_probe(struct pci_dev *pci_dev, const struct pci_device_  	setup_pci_dev(pci_dev);  	// grab (but share) IRQ and install handler -	err = request_irq(irq, interrupt_handler, SA_SHIRQ, DEV_LABEL, dev); +	err = request_irq(irq, interrupt_handler, IRQF_SHARED, DEV_LABEL, dev);  	if (err < 0) {  		PRINTK (KERN_ERR, "request IRQ failed!");  		goto out_reset; diff --git a/drivers/atm/eni.c b/drivers/atm/eni.c index 976ced1f019..df359a6c14f 100644 --- a/drivers/atm/eni.c +++ b/drivers/atm/eni.c @@ -1797,7 +1797,7 @@ static int __devinit eni_start(struct atm_dev *dev)  	DPRINTK(">eni_start\n");  	eni_dev = ENI_DEV(dev); -	if (request_irq(eni_dev->irq,&eni_int,SA_SHIRQ,DEV_LABEL,dev)) { +	if (request_irq(eni_dev->irq,&eni_int,IRQF_SHARED,DEV_LABEL,dev)) {  		printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",  		    dev->number,eni_dev->irq);  		error = -EAGAIN; diff --git a/drivers/atm/firestream.c b/drivers/atm/firestream.c index d40605c1af7..38fc054bd67 100644 --- a/drivers/atm/firestream.c +++ b/drivers/atm/firestream.c @@ -1829,7 +1829,7 @@ static int __devinit fs_init (struct fs_dev *dev)  		init_q (dev, &dev->rx_rq[i], RXB_RQ(i), RXRQ_NENTRIES, 1);  	dev->irq = pci_dev->irq; -	if (request_irq (dev->irq, fs_irq, SA_SHIRQ, "firestream", dev)) { +	if (request_irq (dev->irq, fs_irq, IRQF_SHARED, "firestream", dev)) {  		printk (KERN_WARNING "couldn't get irq %d for firestream.\n", pci_dev->irq);  		/* XXX undo all previous stuff... */  		return 1; diff --git a/drivers/atm/fore200e.c b/drivers/atm/fore200e.c index 9be9a405519..98622130de5 100644 --- a/drivers/atm/fore200e.c +++ b/drivers/atm/fore200e.c @@ -2123,7 +2123,7 @@ fore200e_change_qos(struct atm_vcc* vcc,struct atm_qos* qos, int flags)  static int __devinit  fore200e_irq_request(struct fore200e* fore200e)  { -    if (request_irq(fore200e->irq, fore200e_interrupt, SA_SHIRQ, fore200e->name, fore200e->atm_dev) < 0) { +    if (request_irq(fore200e->irq, fore200e_interrupt, IRQF_SHARED, fore200e->name, fore200e->atm_dev) < 0) {  	printk(FORE200E "unable to reserve IRQ %s for device %s\n",  	       fore200e_irq_itoa(fore200e->irq), fore200e->name); diff --git a/drivers/atm/he.c b/drivers/atm/he.c index a5cbd3d6e50..d369130f423 100644 --- a/drivers/atm/he.c +++ b/drivers/atm/he.c @@ -1007,7 +1007,7 @@ he_init_irq(struct he_dev *he_dev)  	he_writel(he_dev, 0x0, GRP_54_MAP);  	he_writel(he_dev, 0x0, GRP_76_MAP); -	if (request_irq(he_dev->pci_dev->irq, he_irq_handler, SA_INTERRUPT|SA_SHIRQ, DEV_LABEL, he_dev)) { +	if (request_irq(he_dev->pci_dev->irq, he_irq_handler, IRQF_DISABLED|IRQF_SHARED, DEV_LABEL, he_dev)) {  		hprintk("irq %d already in use\n", he_dev->pci_dev->irq);  		return -EINVAL;  	}    diff --git a/drivers/atm/horizon.c b/drivers/atm/horizon.c index 821c81e8cd3..d1113e845f9 100644 --- a/drivers/atm/horizon.c +++ b/drivers/atm/horizon.c @@ -2735,7 +2735,7 @@ static int __devinit hrz_probe(struct pci_dev *pci_dev, const struct pci_device_  	irq = pci_dev->irq;  	if (request_irq(irq,  			interrupt_handler, -			SA_SHIRQ, /* irqflags guess */ +			IRQF_SHARED, /* irqflags guess */  			DEV_LABEL, /* name guess */  			dev)) {  		PRINTD(DBG_WARN, "request IRQ failed!"); diff --git a/drivers/atm/idt77252.c b/drivers/atm/idt77252.c index 8fdb30116f9..5d1c6c95262 100644 --- a/drivers/atm/idt77252.c +++ b/drivers/atm/idt77252.c @@ -3386,7 +3386,7 @@ init_card(struct atm_dev *dev)  		writel(SAR_STAT_TMROF, SAR_REG_STAT);  	}  	IPRINTK("%s: Request IRQ ... ", card->name); -	if (request_irq(pcidev->irq, idt77252_interrupt, SA_INTERRUPT|SA_SHIRQ, +	if (request_irq(pcidev->irq, idt77252_interrupt, IRQF_DISABLED|IRQF_SHARED,  			card->name, card) != 0) {  		printk("%s: can't allocate IRQ.\n", card->name);  		deinit_card(card); diff --git a/drivers/atm/iphase.c b/drivers/atm/iphase.c index 333a7bc609d..f20b0b2c06c 100644 --- a/drivers/atm/iphase.c +++ b/drivers/atm/iphase.c @@ -2488,7 +2488,7 @@ static int __devinit ia_start(struct atm_dev *dev)  	u32 ctrl_reg;    	IF_EVENT(printk(">ia_start\n");)    	iadev = INPH_IA_DEV(dev);   -        if (request_irq(iadev->irq, &ia_int, SA_SHIRQ, DEV_LABEL, dev)) {   +        if (request_irq(iadev->irq, &ia_int, IRQF_SHARED, DEV_LABEL, dev)) {                  printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",                        dev->number, iadev->irq);    		error = -EAGAIN; diff --git a/drivers/atm/lanai.c b/drivers/atm/lanai.c index cac09e353be..fe60a59b7fc 100644 --- a/drivers/atm/lanai.c +++ b/drivers/atm/lanai.c @@ -2240,7 +2240,7 @@ static int __devinit lanai_dev_open(struct atm_dev *atmdev)  	conf2_write(lanai);  	reg_write(lanai, TX_FIFO_DEPTH, TxDepth_Reg);  	reg_write(lanai, 0, CBR_ICG_Reg);	/* CBR defaults to no limit */ -	if ((result = request_irq(lanai->pci->irq, lanai_int, SA_SHIRQ, +	if ((result = request_irq(lanai->pci->irq, lanai_int, IRQF_SHARED,  	    DEV_LABEL, lanai)) != 0) {  		printk(KERN_ERR DEV_LABEL ": can't allocate interrupt\n");  		goto error_vcctable; diff --git a/drivers/atm/nicstar.c b/drivers/atm/nicstar.c index b78612d3fa4..b8036899e56 100644 --- a/drivers/atm/nicstar.c +++ b/drivers/atm/nicstar.c @@ -625,7 +625,7 @@ static int __devinit ns_init_card(int i, struct pci_dev *pcidev)     if (mac[i] == NULL)        nicstar_init_eprom(card->membase); -   if (request_irq(pcidev->irq, &ns_irq_handler, SA_INTERRUPT | SA_SHIRQ, "nicstar", card) != 0) +   if (request_irq(pcidev->irq, &ns_irq_handler, IRQF_DISABLED | IRQF_SHARED, "nicstar", card) != 0)     {        printk("nicstar%d: can't allocate IRQ %d.\n", i, pcidev->irq);        error = 9; diff --git a/drivers/atm/zatm.c b/drivers/atm/zatm.c index 1699c934bad..2c65e82f0d6 100644 --- a/drivers/atm/zatm.c +++ b/drivers/atm/zatm.c @@ -1270,7 +1270,7 @@ static int __init zatm_start(struct atm_dev *dev)  	zatm_dev->rx_map = zatm_dev->tx_map = NULL;   	for (i = 0; i < NR_MBX; i++)   		zatm_dev->mbx_start[i] = 0; - 	error = request_irq(zatm_dev->irq, zatm_int, SA_SHIRQ, DEV_LABEL, dev); + 	error = request_irq(zatm_dev->irq, zatm_int, IRQF_SHARED, DEV_LABEL, dev);  	if (error < 0) {   		printk(KERN_ERR DEV_LABEL "(itf %d): IRQ%d is already in use\n",   		    dev->number,zatm_dev->irq); diff --git a/drivers/cdrom/cdu31a.c b/drivers/cdrom/cdu31a.c index 5f0f2027f29..37bdb0163f0 100644 --- a/drivers/cdrom/cdu31a.c +++ b/drivers/cdrom/cdu31a.c @@ -3141,7 +3141,7 @@ int __init cdu31a_init(void)  	if (cdu31a_irq > 0) {  		if (request_irq -		    (cdu31a_irq, cdu31a_interrupt, SA_INTERRUPT, +		    (cdu31a_irq, cdu31a_interrupt, IRQF_DISABLED,  		     "cdu31a", NULL)) {  			printk(KERN_WARNING PFX "Unable to grab IRQ%d for "  					"the CDU31A driver\n", cdu31a_irq); diff --git a/drivers/cdrom/mcdx.c b/drivers/cdrom/mcdx.c index 788c7a0b2fe..dcd1ab684f3 100644 --- a/drivers/cdrom/mcdx.c +++ b/drivers/cdrom/mcdx.c @@ -1193,7 +1193,7 @@ static int __init mcdx_init_drive(int drive)  	}  	xtrace(INIT, "init() subscribe irq and i/o\n"); -	if (request_irq(stuffp->irq, mcdx_intr, SA_INTERRUPT, "mcdx", stuffp)) { +	if (request_irq(stuffp->irq, mcdx_intr, IRQF_DISABLED, "mcdx", stuffp)) {  		release_region(stuffp->wreg_data, MCDX_IO_SIZE);  		xwarn("%s=0x%03x,%d: Init failed. Can't get irq (%d).\n",  		      MCDX, stuffp->wreg_data, stuffp->irq, stuffp->irq); diff --git a/drivers/cdrom/sonycd535.c b/drivers/cdrom/sonycd535.c index 8f7cc452af8..30ab56258a9 100644 --- a/drivers/cdrom/sonycd535.c +++ b/drivers/cdrom/sonycd535.c @@ -1527,7 +1527,7 @@ static int __init sony535_init(void)  	}  	if (sony535_irq_used > 0) {  	    if (request_irq(sony535_irq_used, cdu535_interrupt, -						SA_INTERRUPT, CDU535_HANDLE, NULL)) { +						IRQF_DISABLED, CDU535_HANDLE, NULL)) {  			printk("Unable to grab IRQ%d for the " CDU535_MESSAGE_NAME  					" driver; polling instead.\n", sony535_irq_used);  			sony535_irq_used = 0; diff --git a/drivers/dma/ioatdma.c b/drivers/dma/ioatdma.c index 2801d14a5e4..ecad8f65d2d 100644 --- a/drivers/dma/ioatdma.c +++ b/drivers/dma/ioatdma.c @@ -739,7 +739,7 @@ static int __devinit ioat_probe(struct pci_dev *pdev,  		device->msi = 0;  	}  #endif -	err = request_irq(pdev->irq, &ioat_do_interrupt, SA_SHIRQ, "ioat", +	err = request_irq(pdev->irq, &ioat_do_interrupt, IRQF_SHARED, "ioat",  		device);  	if (err)  		goto err_irq; diff --git a/drivers/fc4/soc.c b/drivers/fc4/soc.c index cf8768b8d1f..3b07e0ca81c 100644 --- a/drivers/fc4/soc.c +++ b/drivers/fc4/soc.c @@ -637,7 +637,7 @@ static inline void soc_init(struct sbus_dev *sdev, int no)  	irq = sdev->irqs[0]; -	if (request_irq (irq, soc_intr, SA_SHIRQ, "SOC", (void *)s)) { +	if (request_irq (irq, soc_intr, IRQF_SHARED, "SOC", (void *)s)) {  		soc_printk ("Cannot order irq %d to go\n", irq);  		socs = s->next;  		return; diff --git a/drivers/fc4/socal.c b/drivers/fc4/socal.c index f52d1e5bd5a..2b75edc5859 100644 --- a/drivers/fc4/socal.c +++ b/drivers/fc4/socal.c @@ -761,7 +761,7 @@ static inline void socal_init(struct sbus_dev *sdev, int no)  	irq = sdev->irqs[0]; -	if (request_irq (irq, socal_intr, SA_SHIRQ, "SOCAL", (void *)s)) { +	if (request_irq (irq, socal_intr, IRQF_SHARED, "SOCAL", (void *)s)) {  		socal_printk ("Cannot order irq %d to go\n", irq);  		socals = s->next;  		return; diff --git a/drivers/i2c/busses/i2c-mpc.c b/drivers/i2c/busses/i2c-mpc.c index de93601de17..377ab40944b 100644 --- a/drivers/i2c/busses/i2c-mpc.c +++ b/drivers/i2c/busses/i2c-mpc.c @@ -318,7 +318,7 @@ static int fsl_i2c_probe(struct platform_device *pdev)  	if (i2c->irq != 0)  		if ((result = request_irq(i2c->irq, mpc_i2c_isr, -					  SA_SHIRQ, "i2c-mpc", i2c)) < 0) { +					  IRQF_SHARED, "i2c-mpc", i2c)) < 0) {  			printk(KERN_ERR  			       "i2c-mpc - failed to attach interrupt\n");  			goto fail_irq; diff --git a/drivers/i2c/busses/i2c-pxa.c b/drivers/i2c/busses/i2c-pxa.c index 5155010b455..ee114b48fac 100644 --- a/drivers/i2c/busses/i2c-pxa.c +++ b/drivers/i2c/busses/i2c-pxa.c @@ -968,7 +968,7 @@ static int i2c_pxa_probe(struct platform_device *dev)  #endif  	pxa_set_cken(CKEN14_I2C, 1); -	ret = request_irq(IRQ_I2C, i2c_pxa_handler, SA_INTERRUPT, +	ret = request_irq(IRQ_I2C, i2c_pxa_handler, IRQF_DISABLED,  			  "pxa2xx-i2c", i2c);  	if (ret)  		goto out; diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c index 512b8791c32..5d2950e91fc 100644 --- a/drivers/i2c/busses/i2c-s3c2410.c +++ b/drivers/i2c/busses/i2c-s3c2410.c @@ -828,7 +828,7 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)  		goto out;  	} -	ret = request_irq(res->start, s3c24xx_i2c_irq, SA_INTERRUPT, +	ret = request_irq(res->start, s3c24xx_i2c_irq, IRQF_DISABLED,  			  pdev->name, i2c);  	if (ret != 0) { diff --git a/drivers/i2c/chips/isp1301_omap.c b/drivers/i2c/chips/isp1301_omap.c index b638ac6e59f..f92505b94c6 100644 --- a/drivers/i2c/chips/isp1301_omap.c +++ b/drivers/i2c/chips/isp1301_omap.c @@ -908,7 +908,7 @@ static int otg_bind(struct isp1301 *isp)  	if (otg_dev)  		status = request_irq(otg_dev->resource[1].start, omap_otg_irq, -				SA_INTERRUPT, DRIVER_NAME, isp); +				IRQF_DISABLED, DRIVER_NAME, isp);  	else  		status = -ENODEV; @@ -1578,7 +1578,7 @@ fail1:  	}  	status = request_irq(isp->irq, isp1301_irq, -			SA_SAMPLE_RANDOM, DRIVER_NAME, isp); +			IRQF_SAMPLE_RANDOM, DRIVER_NAME, isp);  	if (status < 0) {  		dev_dbg(&i2c->dev, "can't get IRQ %d, err %d\n",  				isp->irq, status); diff --git a/drivers/i2c/chips/tps65010.c b/drivers/i2c/chips/tps65010.c index e27ee12245d..e7e27049fbf 100644 --- a/drivers/i2c/chips/tps65010.c +++ b/drivers/i2c/chips/tps65010.c @@ -521,14 +521,14 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)  	}  #ifdef	CONFIG_ARM -	irqflags = SA_SAMPLE_RANDOM | SA_TRIGGER_LOW; +	irqflags = IRQF_SAMPLE_RANDOM | IRQF_TRIGGER_LOW;  	if (machine_is_omap_h2()) {  		tps->model = TPS65010;  		omap_cfg_reg(W4_GPIO58);  		tps->irq = OMAP_GPIO_IRQ(58);  		omap_request_gpio(58);  		omap_set_gpio_direction(58, 1); -		irqflags |= SA_TRIGGER_FALLING; +		irqflags |= IRQF_TRIGGER_FALLING;  	}  	if (machine_is_omap_osk()) {  		tps->model = TPS65010; @@ -536,7 +536,7 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)  		tps->irq = OMAP_GPIO_IRQ(OMAP_MPUIO(1));  		omap_request_gpio(OMAP_MPUIO(1));  		omap_set_gpio_direction(OMAP_MPUIO(1), 1); -		irqflags |= SA_TRIGGER_FALLING; +		irqflags |= IRQF_TRIGGER_FALLING;  	}  	if (machine_is_omap_h3()) {  		tps->model = TPS65013; @@ -544,7 +544,7 @@ tps65010_probe(struct i2c_adapter *bus, int address, int kind)  		// FIXME set up this board's IRQ ...  	}  #else -	irqflags = SA_SAMPLE_RANDOM; +	irqflags = IRQF_SAMPLE_RANDOM;  #endif  	if (tps->irq > 0) { diff --git a/drivers/infiniband/hw/ipath/ipath_driver.c b/drivers/infiniband/hw/ipath/ipath_driver.c index 6efc56bce92..823131d58b3 100644 --- a/drivers/infiniband/hw/ipath/ipath_driver.c +++ b/drivers/infiniband/hw/ipath/ipath_driver.c @@ -468,7 +468,7 @@ static int __devinit ipath_init_one(struct pci_dev *pdev,  			      "continuing anyway\n");  	/* -	 * set up our interrupt handler; SA_SHIRQ probably not needed, +	 * set up our interrupt handler; IRQF_SHARED probably not needed,  	 * since MSI interrupts shouldn't be shared but won't  hurt for now.  	 * check 0 irq after we return from chip-specific bus setup, since  	 * that can affect this due to setup @@ -477,7 +477,7 @@ static int __devinit ipath_init_one(struct pci_dev *pdev,  		ipath_dev_err(dd, "irq is 0, BIOS error?  Interrupts won't "  			      "work\n");  	else { -		ret = request_irq(pdev->irq, ipath_intr, SA_SHIRQ, +		ret = request_irq(pdev->irq, ipath_intr, IRQF_SHARED,  				  IPATH_DRV_NAME, dd);  		if (ret) {  			ipath_dev_err(dd, "Couldn't setup irq handler, " diff --git a/drivers/infiniband/hw/mthca/mthca_eq.c b/drivers/infiniband/hw/mthca/mthca_eq.c index d536217e700..a29b1b6d82b 100644 --- a/drivers/infiniband/hw/mthca/mthca_eq.c +++ b/drivers/infiniband/hw/mthca/mthca_eq.c @@ -900,7 +900,7 @@ int __devinit mthca_init_eq_table(struct mthca_dev *dev)  				  mthca_is_memfree(dev) ?  				  mthca_arbel_interrupt :  				  mthca_tavor_interrupt, -				  SA_SHIRQ, DRV_NAME, dev); +				  IRQF_SHARED, DRV_NAME, dev);  		if (err)  			goto err_out_cmd;  		dev->eq_table.have_irq = 1; diff --git a/drivers/input/keyboard/corgikbd.c b/drivers/input/keyboard/corgikbd.c index 1f0e720267d..1e03153b9bc 100644 --- a/drivers/input/keyboard/corgikbd.c +++ b/drivers/input/keyboard/corgikbd.c @@ -352,7 +352,7 @@ static int __init corgikbd_probe(struct platform_device *pdev)  	for (i = 0; i < CORGI_KEY_SENSE_NUM; i++) {  		pxa_gpio_mode(CORGI_GPIO_KEY_SENSE(i) | GPIO_IN);  		if (request_irq(CORGI_IRQ_GPIO_KEY_SENSE(i), corgikbd_interrupt, -				SA_INTERRUPT | SA_TRIGGER_RISING, +				IRQF_DISABLED | IRQF_TRIGGER_RISING,  				"corgikbd", corgikbd))  			printk(KERN_WARNING "corgikbd: Can't get IRQ: %d!\n", i);  	} diff --git a/drivers/input/keyboard/spitzkbd.c b/drivers/input/keyboard/spitzkbd.c index c5d03fb77bc..e385710233f 100644 --- a/drivers/input/keyboard/spitzkbd.c +++ b/drivers/input/keyboard/spitzkbd.c @@ -410,7 +410,7 @@ static int __init spitzkbd_probe(struct platform_device *dev)  	for (i = 0; i < SPITZ_KEY_SENSE_NUM; i++) {  		pxa_gpio_mode(spitz_senses[i] | GPIO_IN);  		if (request_irq(IRQ_GPIO(spitz_senses[i]), spitzkbd_interrupt, -				SA_INTERRUPT|SA_TRIGGER_RISING, +				IRQF_DISABLED|IRQF_TRIGGER_RISING,  				"Spitzkbd Sense", spitzkbd))  			printk(KERN_WARNING "spitzkbd: Can't get Sense IRQ: %d!\n", i);  	} @@ -425,19 +425,19 @@ static int __init spitzkbd_probe(struct platform_device *dev)  	pxa_gpio_mode(SPITZ_GPIO_SWB | GPIO_IN);  	request_irq(SPITZ_IRQ_GPIO_SYNC, spitzkbd_interrupt, -		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING, +		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,  		    "Spitzkbd Sync", spitzkbd);  	request_irq(SPITZ_IRQ_GPIO_ON_KEY, spitzkbd_interrupt, -		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING, +		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,  		    "Spitzkbd PwrOn", spitzkbd);  	request_irq(SPITZ_IRQ_GPIO_SWA, spitzkbd_hinge_isr, -		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING, +		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,  		    "Spitzkbd SWA", spitzkbd);  	request_irq(SPITZ_IRQ_GPIO_SWB, spitzkbd_hinge_isr, -		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING, +		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,  		    "Spitzkbd SWB", spitzkbd);   	request_irq(SPITZ_IRQ_GPIO_AK_INT, spitzkbd_hinge_isr, -		    SA_INTERRUPT | SA_TRIGGER_RISING | SA_TRIGGER_FALLING, +		    IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,  		    "Spitzkbd HP", spitzkbd);  	printk(KERN_INFO "input: Spitz Keyboard Registered\n"); diff --git a/drivers/input/misc/ixp4xx-beeper.c b/drivers/input/misc/ixp4xx-beeper.c index 3a6ae85cd69..805b636e73d 100644 --- a/drivers/input/misc/ixp4xx-beeper.c +++ b/drivers/input/misc/ixp4xx-beeper.c @@ -113,7 +113,7 @@ static int __devinit ixp4xx_spkr_probe(struct platform_device *dev)  	input_dev->event = ixp4xx_spkr_event;  	err = request_irq(IRQ_IXP4XX_TIMER2, &ixp4xx_spkr_interrupt, -			  SA_INTERRUPT | SA_TIMER, "ixp4xx-beeper", (void *) dev->id); +			  IRQF_DISABLED | IRQF_TIMER, "ixp4xx-beeper", (void *) dev->id);  	if (err)  		goto err_free_device; diff --git a/drivers/input/mouse/rpcmouse.c b/drivers/input/mouse/rpcmouse.c index 09b6ffdb758..872b30bf7aa 100644 --- a/drivers/input/mouse/rpcmouse.c +++ b/drivers/input/mouse/rpcmouse.c @@ -85,7 +85,7 @@ static int __init rpcmouse_init(void)  	rpcmouse_lastx = (short) iomd_readl(IOMD_MOUSEX);  	rpcmouse_lasty = (short) iomd_readl(IOMD_MOUSEY); -	if (request_irq(IRQ_VSYNCPULSE, rpcmouse_irq, SA_SHIRQ, "rpcmouse", rpcmouse_dev)) { +	if (request_irq(IRQ_VSYNCPULSE, rpcmouse_irq, IRQF_SHARED, "rpcmouse", rpcmouse_dev)) {  		printk(KERN_ERR "rpcmouse: unable to allocate VSYNC interrupt\n");  		input_free_device(rpcmouse_dev);  		return -EBUSY; diff --git a/drivers/input/serio/gscps2.c b/drivers/input/serio/gscps2.c index 22d02d53eb1..cde036a9216 100644 --- a/drivers/input/serio/gscps2.c +++ b/drivers/input/serio/gscps2.c @@ -370,7 +370,7 @@ static int __init gscps2_probe(struct parisc_device *dev)  	serio->dev.parent	= &dev->dev;  	ret = -EBUSY; -	if (request_irq(dev->irq, gscps2_interrupt, SA_SHIRQ, ps2port->port->name, ps2port)) +	if (request_irq(dev->irq, gscps2_interrupt, IRQF_SHARED, ps2port->port->name, ps2port))  		goto fail_miserably;  	if (ps2port->id != GSC_ID_KEYBOARD && ps2port->id != GSC_ID_MOUSE) { diff --git a/drivers/input/serio/i8042.c b/drivers/input/serio/i8042.c index 7fa4bc22258..06a3f25657d 100644 --- a/drivers/input/serio/i8042.c +++ b/drivers/input/serio/i8042.c @@ -328,7 +328,7 @@ static int i8042_open(struct serio *serio)  			return 0;  	if (request_irq(port->irq, i8042_interrupt, -			SA_SHIRQ, "i8042", i8042_request_irq_cookie)) { +			IRQF_SHARED, "i8042", i8042_request_irq_cookie)) {  		printk(KERN_ERR "i8042.c: Can't get irq %d for %s, unregistering the port.\n", port->irq, port->name);  		goto irq_fail;  	} @@ -610,7 +610,7 @@ static int __devinit i8042_check_aux(void)   */  	if (request_irq(i8042_ports[I8042_AUX_PORT_NO].irq, i8042_interrupt, -			SA_SHIRQ, "i8042", &i8042_check_aux_cookie)) +			IRQF_SHARED, "i8042", &i8042_check_aux_cookie))                  return -1;  	free_irq(i8042_ports[I8042_AUX_PORT_NO].irq, &i8042_check_aux_cookie); diff --git a/drivers/input/serio/pcips2.c b/drivers/input/serio/pcips2.c index 1e139c5e59d..fb727c66525 100644 --- a/drivers/input/serio/pcips2.c +++ b/drivers/input/serio/pcips2.c @@ -107,7 +107,7 @@ static int pcips2_open(struct serio *io)  	outb(PS2_CTRL_ENABLE, ps2if->base);  	pcips2_flush_input(ps2if); -	ret = request_irq(ps2if->dev->irq, pcips2_interrupt, SA_SHIRQ, +	ret = request_irq(ps2if->dev->irq, pcips2_interrupt, IRQF_SHARED,  			  "pcips2", ps2if);  	if (ret == 0)  		val = PS2_CTRL_ENABLE | PS2_CTRL_RXIRQ; diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c index 386023c594d..66e411badf7 100644 --- a/drivers/input/touchscreen/ads7846.c +++ b/drivers/input/touchscreen/ads7846.c @@ -773,7 +773,7 @@ static int __devinit ads7846_probe(struct spi_device *spi)  	ts->last_msg = m; -	if (request_irq(spi->irq, ads7846_irq, SA_TRIGGER_FALLING, +	if (request_irq(spi->irq, ads7846_irq, IRQF_TRIGGER_FALLING,  			spi->dev.driver->name, ts)) {  		dev_dbg(&spi->dev, "irq %d busy?\n", spi->irq);  		err = -EBUSY; diff --git a/drivers/input/touchscreen/corgi_ts.c b/drivers/input/touchscreen/corgi_ts.c index 5013703db0e..d2f9759cd3e 100644 --- a/drivers/input/touchscreen/corgi_ts.c +++ b/drivers/input/touchscreen/corgi_ts.c @@ -318,7 +318,7 @@ static int __init corgits_probe(struct platform_device *pdev)  	corgi_ssp_ads7846_putget((5u << ADSCTRL_ADR_SH) | ADSCTRL_STS);  	mdelay(5); -	if (request_irq(corgi_ts->irq_gpio, ts_interrupt, SA_INTERRUPT, "ts", corgi_ts)) { +	if (request_irq(corgi_ts->irq_gpio, ts_interrupt, IRQF_DISABLED, "ts", corgi_ts)) {  		err = -EBUSY;  		goto fail;  	} diff --git a/drivers/input/touchscreen/h3600_ts_input.c b/drivers/input/touchscreen/h3600_ts_input.c index 2de2139f2fe..e2b91001877 100644 --- a/drivers/input/touchscreen/h3600_ts_input.c +++ b/drivers/input/touchscreen/h3600_ts_input.c @@ -399,14 +399,14 @@ static int h3600ts_connect(struct serio *serio, struct serio_driver *drv)  	set_GPIO_IRQ_edge(GPIO_BITSY_NPOWER_BUTTON, GPIO_RISING_EDGE);  	if (request_irq(IRQ_GPIO_BITSY_ACTION_BUTTON, action_button_handler, -			SA_SHIRQ | SA_INTERRUPT, "h3600_action", &ts->dev)) { +			IRQF_SHARED | IRQF_DISABLED, "h3600_action", &ts->dev)) {  		printk(KERN_ERR "h3600ts.c: Could not allocate Action Button IRQ!\n");  		err = -EBUSY;  		goto fail2;  	}  	if (request_irq(IRQ_GPIO_BITSY_NPOWER_BUTTON, npower_button_handler, -			SA_SHIRQ | SA_INTERRUPT, "h3600_suspend", &ts->dev)) { +			IRQF_SHARED | IRQF_DISABLED, "h3600_suspend", &ts->dev)) {  		printk(KERN_ERR "h3600ts.c: Could not allocate Power Button IRQ!\n");  		err = -EBUSY;  		goto fail3; diff --git a/drivers/input/touchscreen/hp680_ts_input.c b/drivers/input/touchscreen/hp680_ts_input.c index 957dd5a1b15..fa97e0f79e7 100644 --- a/drivers/input/touchscreen/hp680_ts_input.c +++ b/drivers/input/touchscreen/hp680_ts_input.c @@ -109,7 +109,7 @@ static int __init hp680_ts_init(void)  	input_register_device(hp680_ts_dev);  	if (request_irq(HP680_TS_IRQ, hp680_ts_interrupt, -			SA_INTERRUPT, MODNAME, 0) < 0) { +			IRQF_DISABLED, MODNAME, 0) < 0) {  		printk(KERN_ERR "hp680_touchscreen.c: Can't allocate irq %d\n",  		       HP680_TS_IRQ);  		input_unregister_device(hp680_ts_dev); diff --git a/drivers/macintosh/smu.c b/drivers/macintosh/smu.c index 030130570e0..ff6d9bfdc3d 100644 --- a/drivers/macintosh/smu.c +++ b/drivers/macintosh/smu.c @@ -555,7 +555,7 @@ static int smu_late_init(void)  	if (smu->db_irq != NO_IRQ) {  		if (request_irq(smu->db_irq, smu_db_intr, -				SA_SHIRQ, "SMU doorbell", smu) < 0) { +				IRQF_SHARED, "SMU doorbell", smu) < 0) {  			printk(KERN_WARNING "SMU: can't "  			       "request interrupt %d\n",  			       smu->db_irq); @@ -565,7 +565,7 @@ static int smu_late_init(void)  	if (smu->msg_irq != NO_IRQ) {  		if (request_irq(smu->msg_irq, smu_msg_intr, -				SA_SHIRQ, "SMU message", smu) < 0) { +				IRQF_SHARED, "SMU message", smu) < 0) {  			printk(KERN_WARNING "SMU: can't "  			       "request interrupt %d\n",  			       smu->msg_irq); diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c index 2544fc7af0f..57543603d6c 100644 --- a/drivers/message/fusion/mptbase.c +++ b/drivers/message/fusion/mptbase.c @@ -1705,7 +1705,7 @@ mpt_do_ioc_recovery(MPT_ADAPTER *ioc, u32 reason, int sleepFlag)  				printk(MYIOC_s_INFO_FMT "PCI-MSI enabled\n",  					ioc->name);  			rc = request_irq(ioc->pcidev->irq, mpt_interrupt, -					SA_SHIRQ, ioc->name, ioc); +					IRQF_SHARED, ioc->name, ioc);  			if (rc < 0) {  				printk(MYIOC_s_ERR_FMT "Unable to allocate "  					"interrupt %d!\n", ioc->name, diff --git a/drivers/message/i2o/pci.c b/drivers/message/i2o/pci.c index 4f1515cae5d..1b58444d5aa 100644 --- a/drivers/message/i2o/pci.c +++ b/drivers/message/i2o/pci.c @@ -274,7 +274,7 @@ static int i2o_pci_irq_enable(struct i2o_controller *c)  	writel(0xffffffff, c->irq_mask);  	if (pdev->irq) { -		rc = request_irq(pdev->irq, i2o_pci_interrupt, SA_SHIRQ, +		rc = request_irq(pdev->irq, i2o_pci_interrupt, IRQF_SHARED,  				 c->name, c);  		if (rc < 0) {  			printk(KERN_ERR "%s: unable to allocate interrupt %d." diff --git a/drivers/mfd/ucb1x00-core.c b/drivers/mfd/ucb1x00-core.c index 6fe2ff5a63d..632bc218c86 100644 --- a/drivers/mfd/ucb1x00-core.c +++ b/drivers/mfd/ucb1x00-core.c @@ -508,7 +508,7 @@ static int ucb1x00_probe(struct mcp *mcp)  		goto err_free;  	} -	ret = request_irq(ucb->irq, ucb1x00_irq, SA_TRIGGER_RISING, +	ret = request_irq(ucb->irq, ucb1x00_irq, IRQF_TRIGGER_RISING,  			  "UCB1x00", ucb);  	if (ret) {  		printk(KERN_ERR "ucb1x00: unable to grab irq%d: %d\n", diff --git a/drivers/misc/ibmasm/module.c b/drivers/misc/ibmasm/module.c index 9706cc19134..2f3bddfab93 100644 --- a/drivers/misc/ibmasm/module.c +++ b/drivers/misc/ibmasm/module.c @@ -113,7 +113,7 @@ static int __devinit ibmasm_init_one(struct pci_dev *pdev, const struct pci_devi  		goto error_ioremap;  	} -	result = request_irq(sp->irq, ibmasm_interrupt_handler, SA_SHIRQ, sp->devname, (void*)sp); +	result = request_irq(sp->irq, ibmasm_interrupt_handler, IRQF_SHARED, sp->devname, (void*)sp);  	if (result) {  		dev_err(sp->dev, "Failed to register interrupt handler\n");  		goto error_request_irq; diff --git a/drivers/mmc/at91_mci.c b/drivers/mmc/at91_mci.c index 075a2a07924..6b7638b8429 100644 --- a/drivers/mmc/at91_mci.c +++ b/drivers/mmc/at91_mci.c @@ -850,7 +850,7 @@ static int at91_mci_probe(struct platform_device *pdev)  	/*  	 * Allocate the MCI interrupt  	 */ -	ret = request_irq(AT91_ID_MCI, at91_mci_irq, SA_SHIRQ, DRIVER_NAME, host); +	ret = request_irq(AT91_ID_MCI, at91_mci_irq, IRQF_SHARED, DRIVER_NAME, host);  	if (ret) {  		printk(KERN_ERR "Failed to request MCI interrupt\n");  		clk_disable(mci_clk); diff --git a/drivers/mmc/au1xmmc.c b/drivers/mmc/au1xmmc.c index 41069908f4a..fb606165af3 100644 --- a/drivers/mmc/au1xmmc.c +++ b/drivers/mmc/au1xmmc.c @@ -886,7 +886,7 @@ static int __devinit au1xmmc_probe(struct platform_device *pdev)  	int i, ret = 0;  	/* THe interrupt is shared among all controllers */ -	ret = request_irq(AU1100_SD_IRQ, au1xmmc_irq, SA_INTERRUPT, "MMC", 0); +	ret = request_irq(AU1100_SD_IRQ, au1xmmc_irq, IRQF_DISABLED, "MMC", 0);  	if (ret) {  		printk(DRIVER_NAME "ERROR: Couldn't get int %d: %d\n", diff --git a/drivers/mmc/mmci.c b/drivers/mmc/mmci.c index 9dfb34a857e..1886562abdd 100644 --- a/drivers/mmc/mmci.c +++ b/drivers/mmc/mmci.c @@ -531,11 +531,11 @@ static int mmci_probe(struct amba_device *dev, void *id)  	writel(0, host->base + MMCIMASK1);  	writel(0xfff, host->base + MMCICLEAR); -	ret = request_irq(dev->irq[0], mmci_irq, SA_SHIRQ, DRIVER_NAME " (cmd)", host); +	ret = request_irq(dev->irq[0], mmci_irq, IRQF_SHARED, DRIVER_NAME " (cmd)", host);  	if (ret)  		goto unmap; -	ret = request_irq(dev->irq[1], mmci_pio_irq, SA_SHIRQ, DRIVER_NAME " (pio)", host); +	ret = request_irq(dev->irq[1], mmci_pio_irq, IRQF_SHARED, DRIVER_NAME " (pio)", host);  	if (ret)  		goto irq0_free; diff --git a/drivers/mmc/omap.c b/drivers/mmc/omap.c index 7a4840ec53b..e0e14b3423c 100644 --- a/drivers/mmc/omap.c +++ b/drivers/mmc/omap.c @@ -1085,7 +1085,7 @@ static int __init mmc_omap_probe(struct platform_device *pdev)  		omap_set_gpio_direction(host->switch_pin, 1);  		ret = request_irq(OMAP_GPIO_IRQ(host->switch_pin), -				  mmc_omap_switch_irq, SA_TRIGGER_RISING, DRIVER_NAME, host); +				  mmc_omap_switch_irq, IRQF_TRIGGER_RISING, DRIVER_NAME, host);  		if (ret) {  			dev_warn(mmc_dev(host->mmc), "Unable to get IRQ for MMC cover switch\n");  			omap_free_gpio(host->switch_pin); diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 8e9100bd57e..a871c09a6e1 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -1075,7 +1075,7 @@ static int __devinit sdhci_probe_slot(struct pci_dev *pdev, int slot)  	setup_timer(&host->timer, sdhci_timeout_timer, (long)host); -	ret = request_irq(host->irq, sdhci_irq, SA_SHIRQ, +	ret = request_irq(host->irq, sdhci_irq, IRQF_SHARED,  		host->slot_descr, host);  	if (ret)  		goto unmap; diff --git a/drivers/mmc/wbsd.c b/drivers/mmc/wbsd.c index 3fcd86c08eb..8a30ef3ae41 100644 --- a/drivers/mmc/wbsd.c +++ b/drivers/mmc/wbsd.c @@ -1553,7 +1553,7 @@ static int __devinit wbsd_request_irq(struct wbsd_host *host, int irq)  	 * Allocate interrupt.  	 */ -	ret = request_irq(irq, wbsd_irq, SA_SHIRQ, DRIVER_NAME, host); +	ret = request_irq(irq, wbsd_irq, IRQF_SHARED, DRIVER_NAME, host);  	if (ret)  		return ret; diff --git a/drivers/parport/parport_ax88796.c b/drivers/parport/parport_ax88796.c index 4baa719439a..1850632590f 100644 --- a/drivers/parport/parport_ax88796.c +++ b/drivers/parport/parport_ax88796.c @@ -345,7 +345,7 @@ static int parport_ax88796_probe(struct platform_device *pdev)  	if (irq >= 0) {  		/* request irq */  		ret = request_irq(irq, parport_ax88796_interrupt, -				  SA_TRIGGER_FALLING, pdev->name, pp); +				  IRQF_TRIGGER_FALLING, pdev->name, pp);  		if (ret < 0)  			goto exit_port; diff --git a/drivers/parport/parport_mfc3.c b/drivers/parport/parport_mfc3.c index c85364765ef..b2b8092a2b3 100644 --- a/drivers/parport/parport_mfc3.c +++ b/drivers/parport/parport_mfc3.c @@ -353,7 +353,7 @@ static int __init parport_mfc3_init(void)  		if (p->irq != PARPORT_IRQ_NONE) {  			if (use_cnt++ == 0) -				if (request_irq(IRQ_AMIGA_PORTS, mfc3_interrupt, SA_SHIRQ, p->name, &pp_mfc3_ops)) +				if (request_irq(IRQ_AMIGA_PORTS, mfc3_interrupt, IRQF_SHARED, p->name, &pp_mfc3_ops))  					goto out_irq;  		} diff --git a/drivers/parport/parport_sunbpp.c b/drivers/parport/parport_sunbpp.c index 7c43c5392be..fac333b279b 100644 --- a/drivers/parport/parport_sunbpp.c +++ b/drivers/parport/parport_sunbpp.c @@ -322,7 +322,7 @@ static int __devinit init_one_port(struct sbus_dev *sdev)  	p->size = size;  	if ((err = request_irq(p->irq, parport_sunbpp_interrupt, -			       SA_SHIRQ, p->name, p)) != 0) { +			       IRQF_SHARED, p->name, p)) != 0) {  		goto out_put_port;  	} diff --git a/drivers/pcmcia/at91_cf.c b/drivers/pcmcia/at91_cf.c index 5256342e853..40569f40e90 100644 --- a/drivers/pcmcia/at91_cf.c +++ b/drivers/pcmcia/at91_cf.c @@ -267,7 +267,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)  	/* must be a GPIO; ergo must trigger on both edges */  	status = request_irq(board->det_pin, at91_cf_irq, -			SA_SAMPLE_RANDOM, driver_name, cf); +			IRQF_SAMPLE_RANDOM, driver_name, cf);  	if (status < 0)  		goto fail0;  	device_init_wakeup(&pdev->dev, 1); @@ -280,7 +280,7 @@ static int __init at91_cf_probe(struct platform_device *pdev)  	 */  	if (board->irq_pin) {  		status = request_irq(board->irq_pin, at91_cf_irq, -				SA_SHIRQ, driver_name, cf); +				IRQF_SHARED, driver_name, cf);  		if (status < 0)  			goto fail0a;  		cf->socket.pci_irq = board->irq_pin; diff --git a/drivers/pcmcia/hd64465_ss.c b/drivers/pcmcia/hd64465_ss.c index c662e4f89d4..ad02629c8be 100644 --- a/drivers/pcmcia/hd64465_ss.c +++ b/drivers/pcmcia/hd64465_ss.c @@ -761,7 +761,7 @@ static int hs_init_socket(hs_socket_t *sp, int irq, unsigned long mem_base,  	hd64465_register_irq_demux(sp->irq, hs_irq_demux, sp); -    	if ((err = request_irq(sp->irq, hs_interrupt, SA_INTERRUPT, MODNAME, sp)) < 0) +    	if ((err = request_irq(sp->irq, hs_interrupt, IRQF_DISABLED, MODNAME, sp)) < 0)  	    return err;      	if (request_mem_region(sp->mem_base, sp->mem_length, MODNAME) == 0) {      	    sp->mem_base = 0; diff --git a/drivers/pcmcia/i82092.c b/drivers/pcmcia/i82092.c index d5f03a338c6..2163aa75a25 100644 --- a/drivers/pcmcia/i82092.c +++ b/drivers/pcmcia/i82092.c @@ -149,7 +149,7 @@ static int __devinit i82092aa_pci_probe(struct pci_dev *dev, const struct pci_de  	/* Register the interrupt handler */  	dprintk(KERN_DEBUG "Requesting interrupt %i \n",dev->irq); -	if ((ret = request_irq(dev->irq, i82092aa_interrupt, SA_SHIRQ, "i82092aa", i82092aa_interrupt))) { +	if ((ret = request_irq(dev->irq, i82092aa_interrupt, IRQF_SHARED, "i82092aa", i82092aa_interrupt))) {  		printk(KERN_ERR "i82092aa: Failed to register IRQ %d, aborting\n", dev->irq);  		goto err_out_free_res;  	} diff --git a/drivers/pcmcia/i82365.c b/drivers/pcmcia/i82365.c index ff51a65d943..1cc2682394b 100644 --- a/drivers/pcmcia/i82365.c +++ b/drivers/pcmcia/i82365.c @@ -509,7 +509,7 @@ static irqreturn_t i365_count_irq(int irq, void *dev, struct pt_regs *regs)  static u_int __init test_irq(u_short sock, int irq)  {      debug(2, "  testing ISA irq %d\n", irq); -    if (request_irq(irq, i365_count_irq, SA_PROBEIRQ, "scan", +    if (request_irq(irq, i365_count_irq, IRQF_PROBE_SHARED, "scan",  			i365_count_irq) != 0)  	return 1;      irq_hits = 0; irq_sock = sock; @@ -562,7 +562,7 @@ static u_int __init isa_scan(u_short sock, u_int mask0)      } else {  	/* Fallback: just find interrupts that aren't in use */  	for (i = 0; i < 16; i++) -	    if ((mask0 & (1 << i)) && (_check_irq(i, SA_PROBEIRQ) == 0)) +	    if ((mask0 & (1 << i)) && (_check_irq(i, IRQF_PROBE_SHARED) == 0))  		mask1 |= (1 << i);  	printk("default");  	/* If scan failed, default to polled status */ @@ -726,7 +726,7 @@ static void __init add_pcic(int ns, int type)  	u_int cs_mask = mask & ((cs_irq) ? (1<<cs_irq) : ~(1<<12));  	for (cs_irq = 15; cs_irq > 0; cs_irq--)  	    if ((cs_mask & (1 << cs_irq)) && -		(_check_irq(cs_irq, SA_PROBEIRQ) == 0)) +		(_check_irq(cs_irq, IRQF_PROBE_SHARED) == 0))  		break;  	if (cs_irq) {  	    grab_irq = 1; diff --git a/drivers/pcmcia/omap_cf.c b/drivers/pcmcia/omap_cf.c index 2c23d758439..420e10aec0a 100644 --- a/drivers/pcmcia/omap_cf.c +++ b/drivers/pcmcia/omap_cf.c @@ -232,7 +232,7 @@ static int __init omap_cf_probe(struct device *dev)  	dev_set_drvdata(dev, cf);  	/* this primarily just shuts up irq handling noise */ -	status = request_irq(irq, omap_cf_irq, SA_SHIRQ, +	status = request_irq(irq, omap_cf_irq, IRQF_SHARED,  			driver_name, cf);  	if (status < 0)  		goto fail0; diff --git a/drivers/pcmcia/pcmcia_resource.c b/drivers/pcmcia/pcmcia_resource.c index 3281e519e71..7bf25b88ea3 100644 --- a/drivers/pcmcia/pcmcia_resource.c +++ b/drivers/pcmcia/pcmcia_resource.c @@ -801,9 +801,9 @@ int pcmcia_request_irq(struct pcmcia_device *p_dev, irq_req_t *req)  	/* Decide what type of interrupt we are registering */  	type = 0;  	if (s->functions > 1)		/* All of this ought to be handled higher up */ -		type = SA_SHIRQ; +		type = IRQF_SHARED;  	if (req->Attributes & IRQ_TYPE_DYNAMIC_SHARING) -		type = SA_SHIRQ; +		type = IRQF_SHARED;  #ifdef CONFIG_PCMCIA_PROBE  	if (s->irq.AssignedIRQ != 0) { @@ -845,7 +845,7 @@ int pcmcia_request_irq(struct pcmcia_device *p_dev, irq_req_t *req)  	if (ret && !s->irq.AssignedIRQ) {  		if (!s->pci_irq)  			return ret; -		type = SA_SHIRQ; +		type = IRQF_SHARED;  		irq = s->pci_irq;  	} @@ -855,7 +855,7 @@ int pcmcia_request_irq(struct pcmcia_device *p_dev, irq_req_t *req)  	}  	/* Make sure the fact the request type was overridden is passed back */ -	if (type == SA_SHIRQ && !(req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)) { +	if (type == IRQF_SHARED && !(req->Attributes & IRQ_TYPE_DYNAMIC_SHARING)) {  		req->Attributes |= IRQ_TYPE_DYNAMIC_SHARING;  		printk(KERN_WARNING "pcmcia: request for exclusive IRQ could not be fulfilled.\n");  		printk(KERN_WARNING "pcmcia: the driver needs updating to supported shared IRQ lines.\n"); diff --git a/drivers/pcmcia/pd6729.c b/drivers/pcmcia/pd6729.c index 9ee26c1b863..22c5e7427dd 100644 --- a/drivers/pcmcia/pd6729.c +++ b/drivers/pcmcia/pd6729.c @@ -689,7 +689,7 @@ static int __devinit pd6729_pci_probe(struct pci_dev *dev,  	pci_set_drvdata(dev, socket);  	if (irq_mode == 1) {  		/* Register the interrupt handler */ -		if ((ret = request_irq(dev->irq, pd6729_interrupt, SA_SHIRQ, +		if ((ret = request_irq(dev->irq, pd6729_interrupt, IRQF_SHARED,  							"pd6729", socket))) {  			printk(KERN_ERR "pd6729: Failed to register irq %d, "  							"aborting\n", dev->irq); diff --git a/drivers/pcmcia/soc_common.c b/drivers/pcmcia/soc_common.c index ecf65d4c4e9..888358fac59 100644 --- a/drivers/pcmcia/soc_common.c +++ b/drivers/pcmcia/soc_common.c @@ -523,7 +523,7 @@ int soc_pcmcia_request_irqs(struct soc_pcmcia_socket *skt,  		if (irqs[i].sock != skt->nr)  			continue;  		res = request_irq(irqs[i].irq, soc_common_pcmcia_interrupt, -				  SA_INTERRUPT, irqs[i].str, skt); +				  IRQF_DISABLED, irqs[i].str, skt);  		if (res)  			break;  		set_irq_type(irqs[i].irq, IRQT_NOEDGE); diff --git a/drivers/pcmcia/vrc4171_card.c b/drivers/pcmcia/vrc4171_card.c index 459e6e1946f..e076a13db55 100644 --- a/drivers/pcmcia/vrc4171_card.c +++ b/drivers/pcmcia/vrc4171_card.c @@ -730,7 +730,7 @@ static int __devinit vrc4171_card_init(void)  	retval = vrc4171_add_sockets();  	if (retval == 0) -		retval = request_irq(vrc4171_irq, pccard_interrupt, SA_SHIRQ, +		retval = request_irq(vrc4171_irq, pccard_interrupt, IRQF_SHARED,  		                     vrc4171_card_name, vrc4171_sockets);  	if (retval < 0) { diff --git a/drivers/pcmcia/vrc4173_cardu.c b/drivers/pcmcia/vrc4173_cardu.c index 6004196f7cc..d19a9138135 100644 --- a/drivers/pcmcia/vrc4173_cardu.c +++ b/drivers/pcmcia/vrc4173_cardu.c @@ -500,7 +500,7 @@ static int __devinit vrc4173_cardu_probe(struct pci_dev *dev,  		return -ENOMEM;  	} -	if (request_irq(dev->irq, cardu_interrupt, SA_SHIRQ, socket->name, socket) < 0) { +	if (request_irq(dev->irq, cardu_interrupt, IRQF_SHARED, socket->name, socket) < 0) {  		pcmcia_unregister_socket(socket->pcmcia_socket);  		socket->pcmcia_socket = NULL;  		iounmap(socket->base); diff --git a/drivers/pcmcia/yenta_socket.c b/drivers/pcmcia/yenta_socket.c index 47e57602d5e..1344746381e 100644 --- a/drivers/pcmcia/yenta_socket.c +++ b/drivers/pcmcia/yenta_socket.c @@ -923,7 +923,7 @@ static int yenta_probe_cb_irq(struct yenta_socket *socket)  	socket->probe_status = 0; -	if (request_irq(socket->cb_irq, yenta_probe_handler, SA_SHIRQ, "yenta", socket)) { +	if (request_irq(socket->cb_irq, yenta_probe_handler, IRQF_SHARED, "yenta", socket)) {  		printk(KERN_WARNING "Yenta: request_irq() in yenta_probe_cb_irq() failed!\n");  		return -1;  	} @@ -1172,7 +1172,7 @@ static int __devinit yenta_probe (struct pci_dev *dev, const struct pci_device_i  	/* We must finish initialization here */ -	if (!socket->cb_irq || request_irq(socket->cb_irq, yenta_interrupt, SA_SHIRQ, "yenta", socket)) { +	if (!socket->cb_irq || request_irq(socket->cb_irq, yenta_interrupt, IRQF_SHARED, "yenta", socket)) {  		/* No IRQ or request_irq failed. Poll */  		socket->cb_irq = 0; /* But zero is a valid IRQ number. */  		init_timer(&socket->poll_timer); diff --git a/drivers/pnp/resource.c b/drivers/pnp/resource.c index 9fefe563f8f..5c8ec21e108 100644 --- a/drivers/pnp/resource.c +++ b/drivers/pnp/resource.c @@ -396,7 +396,7 @@ int pnp_check_irq(struct pnp_dev * dev, int idx)  	 * device is active because it itself may be in use */  	if(!dev->active) {  		if (request_irq(*irq, pnp_test_handler, -				SA_INTERRUPT|SA_PROBEIRQ, "pnp", NULL)) +				IRQF_DISABLED|IRQF_PROBE_SHARED, "pnp", NULL))  			return 0;  		free_irq(*irq, NULL);  	} diff --git a/drivers/rtc/rtc-at91.c b/drivers/rtc/rtc-at91.c index b676f443c17..dfd0ce86f6a 100644 --- a/drivers/rtc/rtc-at91.c +++ b/drivers/rtc/rtc-at91.c @@ -293,7 +293,7 @@ static int __init at91_rtc_probe(struct platform_device *pdev)  					AT91_RTC_CALEV);  	ret = request_irq(AT91_ID_SYS, at91_rtc_interrupt, -				SA_SHIRQ, "at91_rtc", pdev); +				IRQF_SHARED, "at91_rtc", pdev);  	if (ret) {  		printk(KERN_ERR "at91_rtc: IRQ %d already in use.\n",  				AT91_ID_SYS); diff --git a/drivers/rtc/rtc-ds1553.c b/drivers/rtc/rtc-ds1553.c index 762521a1419..20900149547 100644 --- a/drivers/rtc/rtc-ds1553.c +++ b/drivers/rtc/rtc-ds1553.c @@ -341,7 +341,7 @@ static int __init ds1553_rtc_probe(struct platform_device *pdev)  	if (pdata->irq >= 0) {  		writeb(0, ioaddr + RTC_INTERRUPTS); -		if (request_irq(pdata->irq, ds1553_rtc_interrupt, SA_SHIRQ, +		if (request_irq(pdata->irq, ds1553_rtc_interrupt, IRQF_SHARED,  				pdev->name, pdev) < 0) {  			dev_warn(&pdev->dev, "interrupt not available.\n");  			pdata->irq = -1; diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c index ee538632660..d6d1c5726b0 100644 --- a/drivers/rtc/rtc-pl031.c +++ b/drivers/rtc/rtc-pl031.c @@ -173,7 +173,7 @@ static int pl031_probe(struct amba_device *adev, void *id)  		goto out_no_remap;  	} -	if (request_irq(adev->irq[0], pl031_interrupt, SA_INTERRUPT, +	if (request_irq(adev->irq[0], pl031_interrupt, IRQF_DISABLED,  			"rtc-pl031", ldata->rtc)) {  		ret = -EIO;  		goto out_no_irq; diff --git a/drivers/rtc/rtc-sa1100.c b/drivers/rtc/rtc-sa1100.c index 9cd1cb304bb..ee4b61ee67b 100644 --- a/drivers/rtc/rtc-sa1100.c +++ b/drivers/rtc/rtc-sa1100.c @@ -157,19 +157,19 @@ static int sa1100_rtc_open(struct device *dev)  {  	int ret; -	ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, SA_INTERRUPT, +	ret = request_irq(IRQ_RTC1Hz, sa1100_rtc_interrupt, IRQF_DISABLED,  				"rtc 1Hz", dev);  	if (ret) {  		dev_err(dev, "IRQ %d already in use.\n", IRQ_RTC1Hz);  		goto fail_ui;  	} -	ret = request_irq(IRQ_RTCAlrm, sa1100_rtc_interrupt, SA_INTERRUPT, +	ret = request_irq(IRQ_RTCAlrm, sa1100_rtc_interrupt, IRQF_DISABLED,  				"rtc Alrm", dev);  	if (ret) {  		dev_err(dev, "IRQ %d already in use.\n", IRQ_RTCAlrm);  		goto fail_ai;  	} -	ret = request_irq(IRQ_OST1, timer1_interrupt, SA_INTERRUPT, +	ret = request_irq(IRQ_OST1, timer1_interrupt, IRQF_DISABLED,  				"rtc timer", dev);  	if (ret) {  		dev_err(dev, "IRQ %d already in use.\n", IRQ_OST1); diff --git a/drivers/rtc/rtc-vr41xx.c b/drivers/rtc/rtc-vr41xx.c index 4b9291dd444..bb6d5ff24fd 100644 --- a/drivers/rtc/rtc-vr41xx.c +++ b/drivers/rtc/rtc-vr41xx.c @@ -345,11 +345,11 @@ static int __devinit rtc_probe(struct platform_device *pdev)  	spin_unlock_irq(&rtc_lock);  	irq = ELAPSEDTIME_IRQ; -	retval = request_irq(irq, elapsedtime_interrupt, SA_INTERRUPT, +	retval = request_irq(irq, elapsedtime_interrupt, IRQF_DISABLED,  	                     "elapsed_time", pdev);  	if (retval == 0) {  		irq = RTCLONG1_IRQ; -		retval = request_irq(irq, rtclong1_interrupt, SA_INTERRUPT, +		retval = request_irq(irq, rtclong1_interrupt, IRQF_DISABLED,  		                     "rtclong1", pdev);  	} diff --git a/drivers/sbus/char/aurora.c b/drivers/sbus/char/aurora.c index 015db40ad8a..4fdb2c93221 100644 --- a/drivers/sbus/char/aurora.c +++ b/drivers/sbus/char/aurora.c @@ -337,19 +337,19 @@ static int aurora_probe(void)  				printk("intr pri %d\n", grrr);  #endif  				if ((bp->irq=irqs[bn]) && valid_irq(bp->irq) && -				    !request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) { +				    !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {  					free_irq(bp->irq|0x30, bp);  				} else  				if ((bp->irq=prom_getint(sdev->prom_node, "bintr")) && valid_irq(bp->irq) && -				    !request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) { +				    !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {  					free_irq(bp->irq|0x30, bp);  				} else  				if ((bp->irq=prom_getint(sdev->prom_node, "intr")) && valid_irq(bp->irq) && -				    !request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) { +				    !request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {  					free_irq(bp->irq|0x30, bp);  				} else  				for(grrr=0;grrr<TYPE_1_IRQS;grrr++) { -					if ((bp->irq=type_1_irq[grrr])&&!request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, "sio16", bp)) { +					if ((bp->irq=type_1_irq[grrr])&&!request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED, "sio16", bp)) {  						free_irq(bp->irq|0x30, bp);  						break;  					} else { @@ -909,14 +909,14 @@ static int aurora_setup_board(struct Aurora_board * bp)  #ifdef AURORA_ALLIRQ  	int i;  	for (i = 0; i < AURORA_ALLIRQ; i++) { -		error = request_irq(allirq[i]|0x30, aurora_interrupt, SA_SHIRQ, +		error = request_irq(allirq[i]|0x30, aurora_interrupt, IRQF_SHARED,  				    "sio16", bp);  		if (error)  			printk(KERN_ERR "IRQ%d request error %d\n",  			       allirq[i], error);  	}  #else -	error = request_irq(bp->irq|0x30, aurora_interrupt, SA_SHIRQ, +	error = request_irq(bp->irq|0x30, aurora_interrupt, IRQF_SHARED,  			    "sio16", bp);  	if (error) {  		printk(KERN_ERR "IRQ request error %d\n", error); diff --git a/drivers/sbus/char/bbc_i2c.c b/drivers/sbus/char/bbc_i2c.c index 73634371393..7186235594f 100644 --- a/drivers/sbus/char/bbc_i2c.c +++ b/drivers/sbus/char/bbc_i2c.c @@ -377,7 +377,7 @@ static int __init attach_one_i2c(struct linux_ebus_device *edev, int index)  	bp->waiting = 0;  	init_waitqueue_head(&bp->wq);  	if (request_irq(edev->irqs[0], bbc_i2c_interrupt, -			SA_SHIRQ, "bbc_i2c", bp)) +			IRQF_SHARED, "bbc_i2c", bp))  		goto fail;  	bp->index = index; diff --git a/drivers/sbus/char/cpwatchdog.c b/drivers/sbus/char/cpwatchdog.c index 21737b7e86a..836a58bb030 100644 --- a/drivers/sbus/char/cpwatchdog.c +++ b/drivers/sbus/char/cpwatchdog.c @@ -301,7 +301,7 @@ static int wd_open(struct inode *inode, struct file *f)  	{	  		if (request_irq(wd_dev.irq,   						&wd_interrupt,  -						SA_SHIRQ, +						IRQF_SHARED,  						WD_OBPNAME,  						(void *)wd_dev.regs)) {  			printk("%s: Cannot register IRQ %d\n",  diff --git a/drivers/sn/ioc3.c b/drivers/sn/ioc3.c index 0040f10c9e3..6c7e0352d56 100644 --- a/drivers/sn/ioc3.c +++ b/drivers/sn/ioc3.c @@ -706,7 +706,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)  		writel(~0, &idd->vma->eisr);  		idd->dual_irq = 1; -		if (!request_irq(pdev->irq, ioc3_intr_eth, SA_SHIRQ, +		if (!request_irq(pdev->irq, ioc3_intr_eth, IRQF_SHARED,  				 "ioc3-eth", (void *)idd)) {  			idd->irq_eth = pdev->irq;  		} else { @@ -714,7 +714,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)  			       "%s : request_irq fails for IRQ 0x%x\n ",  			       __FUNCTION__, pdev->irq);  		} -		if (!request_irq(pdev->irq+2, ioc3_intr_io, SA_SHIRQ, +		if (!request_irq(pdev->irq+2, ioc3_intr_io, IRQF_SHARED,  				 "ioc3-io", (void *)idd)) {  			idd->irq_io = pdev->irq+2;  		} else { @@ -723,7 +723,7 @@ static int ioc3_probe(struct pci_dev *pdev, const struct pci_device_id *pci_id)  			       __FUNCTION__, pdev->irq+2);  		}  	} else { -		if (!request_irq(pdev->irq, ioc3_intr_io, SA_SHIRQ, +		if (!request_irq(pdev->irq, ioc3_intr_io, IRQF_SHARED,  				 "ioc3", (void *)idd)) {  			idd->irq_io = pdev->irq;  		} else { diff --git a/drivers/tc/zs.c b/drivers/tc/zs.c index 93bc90b8ff9..5e8a27620f6 100644 --- a/drivers/tc/zs.c +++ b/drivers/tc/zs.c @@ -1791,7 +1791,7 @@ int __init zs_init(void)  		zs_soft[channel].clk_divisor = 16;  		zs_soft[channel].zs_baud = get_zsbaud(&zs_soft[channel]); -		if (request_irq(zs_soft[channel].irq, rs_interrupt, SA_SHIRQ, +		if (request_irq(zs_soft[channel].irq, rs_interrupt, IRQF_SHARED,  				"scc", &zs_soft[channel]))  			printk(KERN_ERR "decserial: can't get irq %d\n",  			       zs_soft[channel].irq);  |