ARM: ecard: get rid of NO_IRQ madness
Get rid of the NO_IRQ madness from Acorn expansion card handling code. Thankfully, are relatively few users of this here, and so it's easy to audit. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
2b7da084d4
commit
41569e370c
@ -560,7 +560,7 @@ ecard_irq_handler(unsigned int irq, struct irq_desc *desc)
|
|||||||
for (ec = cards; ec; ec = ec->next) {
|
for (ec = cards; ec; ec = ec->next) {
|
||||||
int pending;
|
int pending;
|
||||||
|
|
||||||
if (!ec->claimed || ec->irq == NO_IRQ || ec->slot_no == 8)
|
if (!ec->claimed || !ec->irq || ec->slot_no == 8)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (ec->ops && ec->ops->irqpending)
|
if (ec->ops && ec->ops->irqpending)
|
||||||
@ -710,8 +710,8 @@ static struct expansion_card *__init ecard_alloc_card(int type, int slot)
|
|||||||
|
|
||||||
ec->slot_no = slot;
|
ec->slot_no = slot;
|
||||||
ec->easi = type == ECARD_EASI;
|
ec->easi = type == ECARD_EASI;
|
||||||
ec->irq = NO_IRQ;
|
ec->irq = 0;
|
||||||
ec->fiq = NO_IRQ;
|
ec->fiq = 0;
|
||||||
ec->dma = NO_DMA;
|
ec->dma = NO_DMA;
|
||||||
ec->ops = &ecard_default_ops;
|
ec->ops = &ecard_default_ops;
|
||||||
|
|
||||||
|
@ -305,7 +305,7 @@ arxescsi_probe(struct expansion_card *ec, const struct ecard_id *id)
|
|||||||
info->base = base;
|
info->base = base;
|
||||||
|
|
||||||
info->info.scsi.io_base = base + 0x2000;
|
info->info.scsi.io_base = base + 0x2000;
|
||||||
info->info.scsi.irq = NO_IRQ;
|
info->info.scsi.irq = 0;
|
||||||
info->info.scsi.dma = NO_DMA;
|
info->info.scsi.dma = NO_DMA;
|
||||||
info->info.scsi.io_shift = 5;
|
info->info.scsi.io_shift = 5;
|
||||||
info->info.ifcfg.clockrate = 24; /* MHz */
|
info->info.ifcfg.clockrate = 24; /* MHz */
|
||||||
|
@ -2176,7 +2176,7 @@ static void fas216_done(FAS216_Info *info, unsigned int result)
|
|||||||
fn = (void (*)(FAS216_Info *, struct scsi_cmnd *, unsigned int))SCpnt->host_scribble;
|
fn = (void (*)(FAS216_Info *, struct scsi_cmnd *, unsigned int))SCpnt->host_scribble;
|
||||||
fn(info, SCpnt, result);
|
fn(info, SCpnt, result);
|
||||||
|
|
||||||
if (info->scsi.irq != NO_IRQ) {
|
if (info->scsi.irq) {
|
||||||
spin_lock_irqsave(&info->host_lock, flags);
|
spin_lock_irqsave(&info->host_lock, flags);
|
||||||
if (info->scsi.phase == PHASE_IDLE)
|
if (info->scsi.phase == PHASE_IDLE)
|
||||||
fas216_kick(info);
|
fas216_kick(info);
|
||||||
@ -2276,7 +2276,7 @@ static int fas216_noqueue_command_lck(struct scsi_cmnd *SCpnt,
|
|||||||
* We should only be using this if we don't have an interrupt.
|
* We should only be using this if we don't have an interrupt.
|
||||||
* Provide some "incentive" to use the queueing code.
|
* Provide some "incentive" to use the queueing code.
|
||||||
*/
|
*/
|
||||||
BUG_ON(info->scsi.irq != NO_IRQ);
|
BUG_ON(info->scsi.irq);
|
||||||
|
|
||||||
info->internal_done = 0;
|
info->internal_done = 0;
|
||||||
fas216_queue_command_lck(SCpnt, fas216_internal_done);
|
fas216_queue_command_lck(SCpnt, fas216_internal_done);
|
||||||
|
@ -12,10 +12,6 @@
|
|||||||
#ifndef FAS216_H
|
#ifndef FAS216_H
|
||||||
#define FAS216_H
|
#define FAS216_H
|
||||||
|
|
||||||
#ifndef NO_IRQ
|
|
||||||
#define NO_IRQ 255
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <scsi/scsi_eh.h>
|
#include <scsi/scsi_eh.h>
|
||||||
|
|
||||||
#include "queue.h"
|
#include "queue.h"
|
||||||
|
Loading…
Reference in New Issue
Block a user