Commit bd7e7469 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] irqs: drivers/block

update drivers/block for new IRQ API.
parent 6f06499b
......@@ -2586,7 +2586,7 @@ DAC960_DetectController(PCI_Device_T *PCI_Device,
const struct pci_device_id *entry)
{
struct DAC960_privdata *privdata = (struct DAC960_privdata *)entry->driver_data;
void (*InterruptHandler)(int, void *, Registers_T *) = privdata->InterruptHandler;
irqreturn_t (*InterruptHandler)(int, void *, Registers_T *) = privdata->InterruptHandler;
unsigned int MemoryWindowSize = privdata->MemoryWindowSize;
DAC960_Controller_T *Controller = NULL;
unsigned char DeviceFunction = PCI_Device->devfn;
......@@ -5112,7 +5112,7 @@ static void DAC960_V2_ProcessCompletedCommand(DAC960_Command_T *Command)
Controllers.
*/
static void DAC960_BA_InterruptHandler(int IRQ_Channel,
static irqreturn_t DAC960_BA_InterruptHandler(int IRQ_Channel,
void *DeviceIdentifier,
Registers_T *InterruptRegisters)
{
......@@ -5120,6 +5120,7 @@ static void DAC960_BA_InterruptHandler(int IRQ_Channel,
void *ControllerBaseAddress = Controller->BaseAddress;
DAC960_V2_StatusMailbox_T *NextStatusMailbox;
ProcessorFlags_T ProcessorFlags;
/*
Acquire exclusive access to Controller.
*/
......@@ -5154,6 +5155,7 @@ static void DAC960_BA_InterruptHandler(int IRQ_Channel,
Release exclusive access to Controller.
*/
DAC960_ReleaseControllerLockIH(Controller, &ProcessorFlags);
return IRQ_HANDLED;
}
......@@ -5162,7 +5164,7 @@ static void DAC960_BA_InterruptHandler(int IRQ_Channel,
Controllers.
*/
static void DAC960_LP_InterruptHandler(int IRQ_Channel,
static irqreturn_t DAC960_LP_InterruptHandler(int IRQ_Channel,
void *DeviceIdentifier,
Registers_T *InterruptRegisters)
{
......@@ -5204,6 +5206,7 @@ static void DAC960_LP_InterruptHandler(int IRQ_Channel,
Release exclusive access to Controller.
*/
DAC960_ReleaseControllerLockIH(Controller, &ProcessorFlags);
return IRQ_HANDLED;
}
......@@ -5212,7 +5215,7 @@ static void DAC960_LP_InterruptHandler(int IRQ_Channel,
Controllers.
*/
static void DAC960_LA_InterruptHandler(int IRQ_Channel,
static irqreturn_t DAC960_LA_InterruptHandler(int IRQ_Channel,
void *DeviceIdentifier,
Registers_T *InterruptRegisters)
{
......@@ -5250,6 +5253,7 @@ static void DAC960_LA_InterruptHandler(int IRQ_Channel,
Release exclusive access to Controller.
*/
DAC960_ReleaseControllerLockIH(Controller, &ProcessorFlags);
return IRQ_HANDLED;
}
......@@ -5258,7 +5262,7 @@ static void DAC960_LA_InterruptHandler(int IRQ_Channel,
Controllers.
*/
static void DAC960_PG_InterruptHandler(int IRQ_Channel,
static irqreturn_t DAC960_PG_InterruptHandler(int IRQ_Channel,
void *DeviceIdentifier,
Registers_T *InterruptRegisters)
{
......@@ -5296,6 +5300,7 @@ static void DAC960_PG_InterruptHandler(int IRQ_Channel,
Release exclusive access to Controller.
*/
DAC960_ReleaseControllerLockIH(Controller, &ProcessorFlags);
return IRQ_HANDLED;
}
......@@ -5304,7 +5309,7 @@ static void DAC960_PG_InterruptHandler(int IRQ_Channel,
Controllers.
*/
static void DAC960_PD_InterruptHandler(int IRQ_Channel,
static irqreturn_t DAC960_PD_InterruptHandler(int IRQ_Channel,
void *DeviceIdentifier,
Registers_T *InterruptRegisters)
{
......@@ -5338,6 +5343,7 @@ static void DAC960_PD_InterruptHandler(int IRQ_Channel,
Release exclusive access to Controller.
*/
DAC960_ReleaseControllerLockIH(Controller, &ProcessorFlags);
return IRQ_HANDLED;
}
......@@ -5350,7 +5356,7 @@ static void DAC960_PD_InterruptHandler(int IRQ_Channel,
an arbitrary buffer.
*/
static void DAC960_P_InterruptHandler(int IRQ_Channel,
static irqreturn_t DAC960_P_InterruptHandler(int IRQ_Channel,
void *DeviceIdentifier,
Registers_T *InterruptRegisters)
{
......@@ -5419,6 +5425,7 @@ static void DAC960_P_InterruptHandler(int IRQ_Channel,
Release exclusive access to Controller.
*/
DAC960_ReleaseControllerLockIH(Controller, &ProcessorFlags);
return IRQ_HANDLED;
}
......
......@@ -2229,7 +2229,7 @@ typedef wait_queue_head_t WaitQueue_T;
struct DAC960_privdata {
DAC960_HardwareType_T HardwareType;
DAC960_FirmwareType_T FirmwareType;
void (*InterruptHandler)(int, void *, Registers_T *);
irqreturn_t (*InterruptHandler)(int, void *, Registers_T *);
unsigned int MemoryWindowSize;
};
......@@ -4233,12 +4233,12 @@ static void DAC960_FinalizeController(DAC960_Controller_T *);
static void DAC960_V1_QueueReadWriteCommand(DAC960_Command_T *);
static void DAC960_V2_QueueReadWriteCommand(DAC960_Command_T *);
static void DAC960_RequestFunction(RequestQueue_T *);
static void DAC960_BA_InterruptHandler(int, void *, Registers_T *);
static void DAC960_LP_InterruptHandler(int, void *, Registers_T *);
static void DAC960_LA_InterruptHandler(int, void *, Registers_T *);
static void DAC960_PG_InterruptHandler(int, void *, Registers_T *);
static void DAC960_PD_InterruptHandler(int, void *, Registers_T *);
static void DAC960_P_InterruptHandler(int, void *, Registers_T *);
static irqreturn_t DAC960_BA_InterruptHandler(int, void *, Registers_T *);
static irqreturn_t DAC960_LP_InterruptHandler(int, void *, Registers_T *);
static irqreturn_t DAC960_LA_InterruptHandler(int, void *, Registers_T *);
static irqreturn_t DAC960_PG_InterruptHandler(int, void *, Registers_T *);
static irqreturn_t DAC960_PD_InterruptHandler(int, void *, Registers_T *);
static irqreturn_t DAC960_P_InterruptHandler(int, void *, Registers_T *);
static void DAC960_V1_QueueMonitoringCommand(DAC960_Command_T *);
static void DAC960_V2_QueueMonitoringCommand(DAC960_Command_T *);
static void DAC960_MonitoringTimerFunction(unsigned long);
......
......@@ -1965,7 +1965,7 @@ static void do_cciss_request(request_queue_t *q)
start_io(h);
}
static void do_cciss_intr(int irq, void *dev_id, struct pt_regs *regs)
static irqreturn_t do_cciss_intr(int irq, void *dev_id, struct pt_regs *regs)
{
ctlr_info_t *h = dev_id;
CommandList_struct *c;
......@@ -1975,7 +1975,7 @@ static void do_cciss_intr(int irq, void *dev_id, struct pt_regs *regs)
/* Is this interrupt for us? */
if ( h->access.intr_pending(h) == 0)
return;
return IRQ_NONE;
/*
* If there are completed commands in the completion queue,
......@@ -2023,6 +2023,7 @@ static void do_cciss_intr(int irq, void *dev_id, struct pt_regs *regs)
*/
spin_unlock_irqrestore(CCISS_LOCK(h->ctlr), flags);
blk_start_queue(&h->queue);
return IRQ_HANDLED;
}
/*
* We cannot read the structure directly, for portablity we must use
......
......@@ -144,7 +144,7 @@ static inline cmdlist_t *removeQ(cmdlist_t **Qptr, cmdlist_t *c);
static inline void complete_buffers(struct bio *bio, int ok);
static inline void complete_command(cmdlist_t *cmd, int timeout);
static void do_ida_intr(int irq, void *dev_id, struct pt_regs * regs);
static irqreturn_t do_ida_intr(int irq, void *dev_id, struct pt_regs * regs);
static void ida_timer(unsigned long tdata);
static int ida_revalidate(struct gendisk *disk);
static int revalidate_allvol(kdev_t dev);
......@@ -929,7 +929,7 @@ static inline void complete_command(cmdlist_t *cmd, int timeout)
* Find the command on the completion queue, remove it, tell the OS and
* try to queue up more IO
*/
static void do_ida_intr(int irq, void *dev_id, struct pt_regs *regs)
static irqreturn_t do_ida_intr(int irq, void *dev_id, struct pt_regs *regs)
{
ctlr_info_t *h = dev_id;
cmdlist_t *c;
......@@ -940,7 +940,7 @@ static void do_ida_intr(int irq, void *dev_id, struct pt_regs *regs)
istat = h->access.intr_pending(h);
/* Is this interrupt for us? */
if (istat == 0)
return;
return IRQ_NONE;
/*
* If there are completed commands in the completion queue,
......@@ -991,6 +991,7 @@ static void do_ida_intr(int irq, void *dev_id, struct pt_regs *regs)
*/
do_ida_request(&h->queue);
spin_unlock_irqrestore(IDA_LOCK(h->ctlr), flags);
return IRQ_HANDLED;
}
/*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment