aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_inline.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_inline.h')
-rw-r--r--drivers/scsi/qla2xxx/qla_inline.h27
1 files changed, 11 insertions, 16 deletions
diff --git a/drivers/scsi/qla2xxx/qla_inline.h b/drivers/scsi/qla2xxx/qla_inline.h
index e90afad120ee..8ce354720680 100644
--- a/drivers/scsi/qla2xxx/qla_inline.h
+++ b/drivers/scsi/qla2xxx/qla_inline.h
@@ -32,21 +32,15 @@ qla2x00_debounce_register(volatile uint16_t __iomem *addr)
32} 32}
33 33
34static inline void 34static inline void
35qla2x00_poll(scsi_qla_host_t *ha) 35qla2x00_poll(struct rsp_que *rsp)
36{ 36{
37 unsigned long flags; 37 unsigned long flags;
38 38 struct qla_hw_data *ha = rsp->hw;
39 local_irq_save(flags); 39 local_irq_save(flags);
40 ha->isp_ops->intr_handler(0, ha); 40 ha->isp_ops->intr_handler(0, rsp);
41 local_irq_restore(flags); 41 local_irq_restore(flags);
42} 42}
43 43
44static __inline__ scsi_qla_host_t *
45to_qla_parent(scsi_qla_host_t *ha)
46{
47 return ha->parent ? ha->parent : ha;
48}
49
50/** 44/**
51 * qla2x00_issue_marker() - Issue a Marker IOCB if necessary. 45 * qla2x00_issue_marker() - Issue a Marker IOCB if necessary.
52 * @ha: HA context 46 * @ha: HA context
@@ -55,20 +49,20 @@ to_qla_parent(scsi_qla_host_t *ha)
55 * Returns non-zero if a failure occurred, else zero. 49 * Returns non-zero if a failure occurred, else zero.
56 */ 50 */
57static inline int 51static inline int
58qla2x00_issue_marker(scsi_qla_host_t *ha, int ha_locked) 52qla2x00_issue_marker(scsi_qla_host_t *vha, int ha_locked)
59{ 53{
60 /* Send marker if required */ 54 /* Send marker if required */
61 if (ha->marker_needed != 0) { 55 if (vha->marker_needed != 0) {
62 if (ha_locked) { 56 if (ha_locked) {
63 if (__qla2x00_marker(ha, 0, 0, MK_SYNC_ALL) != 57 if (__qla2x00_marker(vha, 0, 0, MK_SYNC_ALL) !=
64 QLA_SUCCESS) 58 QLA_SUCCESS)
65 return (QLA_FUNCTION_FAILED); 59 return (QLA_FUNCTION_FAILED);
66 } else { 60 } else {
67 if (qla2x00_marker(ha, 0, 0, MK_SYNC_ALL) != 61 if (qla2x00_marker(vha, 0, 0, MK_SYNC_ALL) !=
68 QLA_SUCCESS) 62 QLA_SUCCESS)
69 return (QLA_FUNCTION_FAILED); 63 return (QLA_FUNCTION_FAILED);
70 } 64 }
71 ha->marker_needed = 0; 65 vha->marker_needed = 0;
72 } 66 }
73 return (QLA_SUCCESS); 67 return (QLA_SUCCESS);
74} 68}
@@ -87,11 +81,12 @@ host_to_fcp_swap(uint8_t *fcp, uint32_t bsize)
87} 81}
88 82
89static inline int 83static inline int
90qla2x00_is_reserved_id(scsi_qla_host_t *ha, uint16_t loop_id) 84qla2x00_is_reserved_id(scsi_qla_host_t *vha, uint16_t loop_id)
91{ 85{
86 struct qla_hw_data *ha = vha->hw;
92 if (IS_FWI2_CAPABLE(ha)) 87 if (IS_FWI2_CAPABLE(ha))
93 return (loop_id > NPH_LAST_HANDLE); 88 return (loop_id > NPH_LAST_HANDLE);
94 89
95 return ((loop_id > ha->last_loop_id && loop_id < SNS_FIRST_LOOP_ID) || 90 return ((loop_id > ha->max_loop_id && loop_id < SNS_FIRST_LOOP_ID) ||
96 loop_id == MANAGEMENT_SERVER || loop_id == BROADCAST); 91 loop_id == MANAGEMENT_SERVER || loop_id == BROADCAST);
97}; 92};