From: Hannes Reinecke <hare@suse.de>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Christoph Hellwig <hch@lst.de>,
James Bottomley <james.bottomley@hansenpartnership.com>,
linux-scsi@vger.kernel.org, Hannes Reinecke <hare@suse.de>
Subject: [PATCH 20/35] dc395x: drop internal SCSI message definitions
Date: Mon, 7 Dec 2020 13:48:04 +0100 [thread overview]
Message-ID: <20201207124819.95822-21-hare@suse.de> (raw)
In-Reply-To: <20201207124819.95822-1-hare@suse.de>
Drop the internel SCSI message definitions and use the functions
provided by the SPI transport class.
Signed-off-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
---
drivers/scsi/dc395x.c | 25 ++++++++++---------------
drivers/scsi/dc395x.h | 22 ----------------------
2 files changed, 10 insertions(+), 37 deletions(-)
diff --git a/drivers/scsi/dc395x.c b/drivers/scsi/dc395x.c
index 7b522ff345d5..b1125012bee0 100644
--- a/drivers/scsi/dc395x.c
+++ b/drivers/scsi/dc395x.c
@@ -64,6 +64,7 @@
#include <scsi/scsi_cmnd.h>
#include <scsi/scsi_device.h>
#include <scsi/scsi_host.h>
+#include <scsi/scsi_transport_spi.h>
#include "dc395x.h"
@@ -1281,11 +1282,7 @@ static void build_sdtr(struct AdapterCtlBlk *acb, struct DeviceCtlBlk *dcb,
} else if (dcb->sync_offset == 0)
dcb->sync_offset = SYNC_NEGO_OFFSET;
- *ptr++ = MSG_EXTENDED; /* (01h) */
- *ptr++ = 3; /* length */
- *ptr++ = EXTENDED_SDTR; /* (01h) */
- *ptr++ = dcb->min_nego_period; /* Transfer period (in 4ns) */
- *ptr++ = dcb->sync_offset; /* Transfer period (max. REQ/ACK dist) */
+ spi_populate_sync_msg(ptr, dcb->min_nego_period, dcb->sync_offset);
srb->msg_count += 5;
srb->state |= SRB_DO_SYNC_NEGO;
}
@@ -1305,10 +1302,7 @@ static void build_wdtr(struct AdapterCtlBlk *acb, struct DeviceCtlBlk *dcb,
srb->msgout_buf[1]);
return;
}
- *ptr++ = MSG_EXTENDED; /* (01h) */
- *ptr++ = 2; /* length */
- *ptr++ = EXTENDED_WDTR; /* (03h) */
- *ptr++ = wide;
+ spi_populate_width_msg(ptr, wide);
srb->msg_count += 4;
srb->state |= SRB_DO_WIDE_NEGO;
}
@@ -1476,7 +1470,7 @@ static u8 start_scsi(struct AdapterCtlBlk* acb, struct DeviceCtlBlk* dcb,
return 1;
}
/* Send Tag id */
- DC395x_write8(acb, TRM_S1040_SCSI_FIFO, MSG_SIMPLE_QTAG);
+ DC395x_write8(acb, TRM_S1040_SCSI_FIFO, SIMPLE_QUEUE_TAG);
DC395x_write8(acb, TRM_S1040_SCSI_FIFO, tag_number);
dcb->tag_mask |= tag_mask;
srb->tag_number = tag_number;
@@ -1732,8 +1726,9 @@ static void msgout_phase1(struct AdapterCtlBlk *acb, struct ScsiReqBlk *srb,
if (!srb->msg_count) {
dprintkdbg(DBG_0, "msgout_phase1: (0x%p) NOP msg\n",
srb->cmd);
- DC395x_write8(acb, TRM_S1040_SCSI_FIFO, MSG_NOP);
- DC395x_write16(acb, TRM_S1040_SCSI_CONTROL, DO_DATALATCH); /* it's important for atn stop */
+ DC395x_write8(acb, TRM_S1040_SCSI_FIFO, NOP);
+ DC395x_write16(acb, TRM_S1040_SCSI_CONTROL, DO_DATALATCH);
+ /* it's important for atn stop */
DC395x_write8(acb, TRM_S1040_SCSI_COMMAND, SCMD_FIFO_OUT);
return;
}
@@ -1741,7 +1736,7 @@ static void msgout_phase1(struct AdapterCtlBlk *acb, struct ScsiReqBlk *srb,
for (i = 0; i < srb->msg_count; i++)
DC395x_write8(acb, TRM_S1040_SCSI_FIFO, *ptr++);
srb->msg_count = 0;
- if (srb->msgout_buf[0] == MSG_ABORT)
+ if (srb->msgout_buf[0] == ABORT_TASK_SET)
srb->state = SRB_ABORT_SENT;
DC395x_write8(acb, TRM_S1040_SCSI_COMMAND, SCMD_FIFO_OUT);
@@ -2538,7 +2533,7 @@ static struct ScsiReqBlk *msgin_qtag(struct AdapterCtlBlk *acb,
srb = acb->tmp_srb;
srb->state = SRB_UNEXPECT_RESEL;
dcb->active_srb = srb;
- srb->msgout_buf[0] = MSG_ABORT_TAG;
+ srb->msgout_buf[0] = ABORT_TASK;
srb->msg_count = 1;
DC395x_ENABLE_MSGOUT;
dprintkl(KERN_DEBUG, "msgin_qtag: Unknown tag %i - abort\n", tag);
@@ -2780,7 +2775,7 @@ static void msgin_phase0(struct AdapterCtlBlk *acb, struct ScsiReqBlk *srb,
msgin_reject(acb, srb);
break;
- case MSG_IGNOREWIDE:
+ case IGNORE_WIDE_RESIDUE:
/* Discard wide residual */
dprintkdbg(DBG_0, "msgin_phase0: Ignore Wide Residual!\n");
break;
diff --git a/drivers/scsi/dc395x.h b/drivers/scsi/dc395x.h
index a7786a6d462e..24a36c046d07 100644
--- a/drivers/scsi/dc395x.h
+++ b/drivers/scsi/dc395x.h
@@ -172,28 +172,6 @@
#define SYNC_NEGO_OFFSET 15
-/* SCSI MSG BYTE */
-#define MSG_COMPLETE 0x00
-#define MSG_EXTENDED 0x01
-#define MSG_SAVE_PTR 0x02
-#define MSG_RESTORE_PTR 0x03
-#define MSG_DISCONNECT 0x04
-#define MSG_INITIATOR_ERROR 0x05
-#define MSG_ABORT 0x06
-#define MSG_REJECT_ 0x07
-#define MSG_NOP 0x08
-#define MSG_PARITY_ERROR 0x09
-#define MSG_LINK_CMD_COMPL 0x0A
-#define MSG_LINK_CMD_COMPL_FLG 0x0B
-#define MSG_BUS_RESET 0x0C
-#define MSG_ABORT_TAG 0x0D
-#define MSG_SIMPLE_QTAG 0x20
-#define MSG_HEAD_QTAG 0x21
-#define MSG_ORDER_QTAG 0x22
-#define MSG_IGNOREWIDE 0x23
-#define MSG_IDENTIFY 0x80
-#define MSG_HOST_ID 0xC0
-
/* cmd->result */
#define STATUS_MASK_ 0xFF
#define MSG_MASK 0xFF00
--
2.16.4
next prev parent reply other threads:[~2020-12-07 12:50 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-07 12:47 [PATCHv3 00/35] SCSI result handling cleanup, part 1 Hannes Reinecke
2020-12-07 12:47 ` [PATCH 01/35] scsi: drop gdth driver Hannes Reinecke
2020-12-07 13:38 ` Christoph Hellwig
2020-12-07 14:01 ` Hannes Reinecke
2020-12-07 12:47 ` [PATCH 02/35] 3w-xxxx: Whitespace cleanup Hannes Reinecke
2020-12-07 12:47 ` [PATCH 03/35] 3w-9xxx: " Hannes Reinecke
2020-12-07 12:47 ` [PATCH 04/35] 3w-sas: " Hannes Reinecke
2020-12-07 12:47 ` [PATCH 05/35] atp870u: " Hannes Reinecke
2020-12-07 12:47 ` [PATCH 06/35] aic7xxx,aic79xx: " Hannes Reinecke
2020-12-07 12:47 ` [PATCH 07/35] aic7xxx,aic79xx: kill pointless forward declarations Hannes Reinecke
2020-12-07 12:47 ` [PATCH 08/35] aic7xxx,aic79xxx: remove driver-defined SAM status definitions Hannes Reinecke
2020-12-07 12:47 ` [PATCH 09/35] bfa: drop driver-defined SCSI status codes Hannes Reinecke
2020-12-07 12:47 ` [PATCH 10/35] acornscsi: use standard defines Hannes Reinecke
2020-12-07 12:47 ` [PATCH 11/35] nsp32: fixup status handling Hannes Reinecke
2020-12-07 12:47 ` [PATCH 12/35] dc395: drop private SAM status code definitions Hannes Reinecke
2020-12-07 12:47 ` [PATCH 13/35] qla4xxx: use standard SAM status definitions Hannes Reinecke
2020-12-07 12:47 ` [PATCH 14/35] zfcp: do not set COMMAND_COMPLETE Hannes Reinecke
2020-12-07 12:47 ` [PATCH 15/35] aacraid: avoid setting message byte on completion Hannes Reinecke
2020-12-07 12:48 ` [PATCH 16/35] hpsa: do not set COMMAND_COMPLETE Hannes Reinecke
2020-12-07 12:48 ` [PATCH 17/35] stex: " Hannes Reinecke
2020-12-07 12:48 ` [PATCH 18/35] nsp_cs: drop internal SCSI message definition Hannes Reinecke
2020-12-07 12:48 ` [PATCH 19/35] aic7xxx,aic79xx: " Hannes Reinecke
2020-12-07 12:48 ` Hannes Reinecke [this message]
2020-12-18 8:58 ` [PATCH 20/35] dc395x: drop internal SCSI message definitions kernel test robot
2020-12-18 8:58 ` kernel test robot
2020-12-07 12:48 ` [PATCH 21/35] initio: drop internal SCSI message definition Hannes Reinecke
2020-12-07 12:48 ` [PATCH 22/35] scsi_debug: do not set COMMAND_COMPLETE Hannes Reinecke
2020-12-07 12:48 ` [PATCH 23/35] ufshcd: " Hannes Reinecke
2020-12-07 12:48 ` [PATCH 24/35] atp870u: use standard definitions Hannes Reinecke
2020-12-07 12:48 ` [PATCH 25/35] mac53c94: Do not set invalid command result Hannes Reinecke
2020-12-07 12:48 ` [PATCH 26/35] dpt_i2o: use DID_ERROR instead of INITIATOR_ERROR message Hannes Reinecke
2020-12-07 12:48 ` [PATCH 27/35] scsi: add 'set_status_byte()' accessor Hannes Reinecke
2020-12-07 12:48 ` [PATCH 28/35] esp_scsi: use host byte as last argument to esp_cmd_is_done() Hannes Reinecke
2020-12-07 12:48 ` [PATCH 29/35] esp_scsi: do not set SCSI message byte Hannes Reinecke
2020-12-07 12:48 ` [PATCH 30/35] wd33c93: use SCSI status Hannes Reinecke
2020-12-07 12:48 ` [PATCH 31/35] ips: use correct command completion on error Hannes Reinecke
2020-12-07 12:48 ` [PATCH 32/35] storvsc: Return DID_ERROR for invalid commands Hannes Reinecke
2020-12-07 12:48 ` [PATCH 33/35] qla2xxx: fc_remote_port_chkready() returns a SCSI result value Hannes Reinecke
2020-12-07 12:48 ` [PATCH 34/35] advansys: kill driver_defined status byte accessors Hannes Reinecke
2020-12-07 12:48 ` [PATCH 35/35] ncr53c8xx: Use SAM status values Hannes Reinecke
-- strict thread matches above, loose matches on Subject: below --
2021-01-13 9:04 [PATCHv4 00/35] [PATCHv3 00/35] SCSI result handling cleanup, part 1 Hannes Reinecke
2021-01-13 9:04 ` [PATCH 20/35] dc395x: drop internal SCSI message definitions Hannes Reinecke
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201207124819.95822-21-hare@suse.de \
--to=hare@suse.de \
--cc=hch@lst.de \
--cc=james.bottomley@hansenpartnership.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.