X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fscsi%2Fqla2xxx%2Fqla_inline.h;h=07c11330f9a3e1ca94c45ab8ad44339d066df477;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=9bd7757b9c7540c2ab689b9422e0f0e5a113841e;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/drivers/scsi/qla2xxx/qla_inline.h b/drivers/scsi/qla2xxx/qla_inline.h index 9bd7757b9..07c11330f 100644 --- a/drivers/scsi/qla2xxx/qla_inline.h +++ b/drivers/scsi/qla2xxx/qla_inline.h @@ -18,7 +18,7 @@ */ -static __inline__ uint16_t qla2x00_debounce_register(volatile uint16_t *); +static __inline__ uint16_t qla2x00_debounce_register(volatile uint16_t __iomem *); /* * qla2x00_debounce_register * Debounce register. @@ -30,7 +30,7 @@ static __inline__ uint16_t qla2x00_debounce_register(volatile uint16_t *); * register value. */ static __inline__ uint16_t -qla2x00_debounce_register(volatile uint16_t *addr) +qla2x00_debounce_register(volatile uint16_t __iomem *addr) { volatile uint16_t first; volatile uint16_t second; @@ -117,7 +117,10 @@ static __inline__ void qla2x00_poll(scsi_qla_host_t *); static inline void qla2x00_poll(scsi_qla_host_t *ha) { - qla2x00_intr_handler(0, ha, NULL); + if (IS_QLA2100(ha) || IS_QLA2200(ha)) + qla2100_intr_handler(0, ha, NULL); + else + qla2300_intr_handler(0, ha, NULL); } @@ -128,10 +131,9 @@ static inline void qla2x00_enable_intrs(scsi_qla_host_t *ha) { unsigned long flags = 0; - device_reg_t *reg; + device_reg_t __iomem *reg = ha->iobase; spin_lock_irqsave(&ha->hardware_lock, flags); - reg = ha->iobase; ha->interrupts_on = 1; /* enable risc and host interrupts */ WRT_REG_WORD(®->ictrl, ICR_EN_INT | ICR_EN_RISC); @@ -144,10 +146,9 @@ static inline void qla2x00_disable_intrs(scsi_qla_host_t *ha) { unsigned long flags = 0; - device_reg_t *reg; + device_reg_t __iomem *reg = ha->iobase; spin_lock_irqsave(&ha->hardware_lock, flags); - reg = ha->iobase; ha->interrupts_on = 0; /* disable risc and host interrupts */ WRT_REG_WORD(®->ictrl, 0);