Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx> --- drivers/scsi/aacraid/aachba.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c index b32e77d..5ade84a 100644 --- a/drivers/scsi/aacraid/aachba.c +++ b/drivers/scsi/aacraid/aachba.c @@ -1228,21 +1228,14 @@ static struct aac_srb * aac_scsi_common(struct fib * fib, struct scsi_cmnd * cmd u32 timeout; aac_fib_init(fib); - switch(cmd->sc_data_direction){ - case DMA_TO_DEVICE: - flag = SRB_DataOut; - break; - case DMA_BIDIRECTIONAL: + if (scsi_bidi_cmnd(cmd)) flag = SRB_DataIn | SRB_DataOut; - break; - case DMA_FROM_DEVICE: + else if (cmd->sc_data_direction == DMA_TO_DEVICE) + flag = SRB_DataOut; + else if (cmd->sc_data_direction == DMA_FROM_DEVICE) flag = SRB_DataIn; - break; - case DMA_NONE: - default: /* shuts up some versions of gcc */ + else flag = SRB_NoDataXfer; - break; - } srbcmd = (struct aac_srb*) fib_data(fib); srbcmd->function = cpu_to_le32(SRBF_ExecuteScsi); -- 2.1.2 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html