aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c25
1 files changed, 7 insertions, 18 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index c255bb0268a9..09afc0f06bd4 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -1,33 +1,19 @@
1/* 1/*
2 * QLOGIC LINUX SOFTWARE 2 * QLogic Fibre Channel HBA Driver
3 * 3 * Copyright (c) 2003-2005 QLogic Corporation
4 * QLogic ISP2x00 device driver for Linux 2.6.x
5 * Copyright (C) 2003-2005 QLogic Corporation
6 * (www.qlogic.com)
7 *
8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU General Public License as published by the
10 * Free Software Foundation; either version 2, or (at your option) any
11 * later version.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 * 4 *
5 * See LICENSE.qla2xxx for copyright and licensing details.
18 */ 6 */
19#include "qla_def.h" 7#include "qla_def.h"
20 8
21static void qla2x00_mbx_completion(scsi_qla_host_t *, uint16_t); 9static void qla2x00_mbx_completion(scsi_qla_host_t *, uint16_t);
22static void qla2x00_async_event(scsi_qla_host_t *, uint16_t *); 10static void qla2x00_async_event(scsi_qla_host_t *, uint16_t *);
23static void qla2x00_process_completed_request(struct scsi_qla_host *, uint32_t); 11static void qla2x00_process_completed_request(struct scsi_qla_host *, uint32_t);
24void qla2x00_process_response_queue(struct scsi_qla_host *);
25static void qla2x00_status_entry(scsi_qla_host_t *, void *); 12static void qla2x00_status_entry(scsi_qla_host_t *, void *);
26static void qla2x00_status_cont_entry(scsi_qla_host_t *, sts_cont_entry_t *); 13static void qla2x00_status_cont_entry(scsi_qla_host_t *, sts_cont_entry_t *);
27static void qla2x00_error_entry(scsi_qla_host_t *, sts_entry_t *); 14static void qla2x00_error_entry(scsi_qla_host_t *, sts_entry_t *);
28static void qla2x00_ms_entry(scsi_qla_host_t *, ms_iocb_entry_t *); 15static void qla2x00_ms_entry(scsi_qla_host_t *, ms_iocb_entry_t *);
29 16
30void qla24xx_process_response_queue(scsi_qla_host_t *);
31static void qla24xx_ms_entry(scsi_qla_host_t *, struct ct_entry_24xx *); 17static void qla24xx_ms_entry(scsi_qla_host_t *, struct ct_entry_24xx *);
32 18
33/** 19/**
@@ -651,7 +637,10 @@ qla2x00_async_event(scsi_qla_host_t *ha, uint16_t *mb)
651 "scsi(%ld): [R|Z]IO update completion.\n", 637 "scsi(%ld): [R|Z]IO update completion.\n",
652 ha->host_no)); 638 ha->host_no));
653 639
654 qla2x00_process_response_queue(ha); 640 if (IS_QLA24XX(ha) || IS_QLA25XX(ha))
641 qla24xx_process_response_queue(ha);
642 else
643 qla2x00_process_response_queue(ha);
655 break; 644 break;
656 645
657 case MBA_DISCARD_RND_FRAME: 646 case MBA_DISCARD_RND_FRAME: