Skip to content

Commit

Permalink
scsi: esp_scsi: Correct ordering of PCSCSI definition in esp_rev enum
Browse files Browse the repository at this point in the history
The order of the definitions in the esp_rev enum is important. The values
are used in comparisons for chip features.

Add a comment to the enum explaining this.

Also, the actual values for the enum fields are irrelevant, so remove the
explicit values (suggested by Geert Uytterhoeven). This makes adding a new
field in the middle of the enum easier.

Finally, move the PCSCSI definition to the right place in the enum. In its
previous location, at the end of the enum, the wrong values are written to
the CONFIG3 register when used with FAST-SCSI targets.

Link: https://lore.kernel.org/r/20191119202021.28720-2-jongk@linux-m68k.org
Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
  • Loading branch information
Kars de Jong authored and Martin K. Petersen committed Dec 20, 2019
1 parent d1eef1c commit 2086faa
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 9 deletions.
2 changes: 1 addition & 1 deletion drivers/scsi/esp_scsi.c
Original file line number Diff line number Diff line change
Expand Up @@ -2373,10 +2373,10 @@ static const char *esp_chip_names[] = {
"ESP100A",
"ESP236",
"FAS236",
"AM53C974",
"FAS100A",
"FAST",
"FASHME",
"AM53C974",
};

static struct scsi_transport_template *esp_transport_template;
Expand Down
17 changes: 9 additions & 8 deletions drivers/scsi/esp_scsi.h
Original file line number Diff line number Diff line change
Expand Up @@ -257,15 +257,16 @@ struct esp_cmd_priv {
};
#define ESP_CMD_PRIV(CMD) ((struct esp_cmd_priv *)(&(CMD)->SCp))

/* NOTE: this enum is ordered based on chip features! */
enum esp_rev {
ESP100 = 0x00, /* NCR53C90 - very broken */
ESP100A = 0x01, /* NCR53C90A */
ESP236 = 0x02,
FAS236 = 0x03,
FAS100A = 0x04,
FAST = 0x05,
FASHME = 0x06,
PCSCSI = 0x07, /* AM53c974 */
ESP100, /* NCR53C90 - very broken */
ESP100A, /* NCR53C90A */
ESP236,
FAS236,
PCSCSI, /* AM53c974 */
FAS100A,
FAST,
FASHME,
};

struct esp_cmd_entry {
Expand Down

0 comments on commit 2086faa

Please sign in to comment.