mbox series

[v4,0/2] Some esp_scsi updates

Message ID 20191119200805.28319-1-jongk@linux-m68k.org (mailing list archive)
Headers show
Series Some esp_scsi updates | expand

Message

Kars de Jong Nov. 19, 2019, 8:08 p.m. UTC
When trying kernel 5.4.0-rc5 on my Amiga, I experienced data transfer failures
when reading from my FAST-10 SCSI disk. I have a Blizzard 12x0 IV SCSI
controller which uses a Symbios Logic SYM53CF94-2 "FSC" chip.

This used to work with the old generic NCR53C9x driver, so I investigated the
issue.

It turned out to be caused by lacking detection of FSC silicon in the new
driver.

The second patch in this series adds support for the FSC.

When adding support for the chip, I found out the hard way that the esp_rev
enum is ordered (I just added it to the end of the enum).

Then I also discovered that the definition for the PCSCSI chip was in the
wrong place of the enum. It will probably have issues with FAST-10 SCSI
targets, because its CONFIG3 settings are wrong.

The first patch fixes this, and adds comments to the enum to hopefully prevent
this from happening again.

When discussing this on the Linux/m68k mailing list, it was suggested to
perhaps replace the dependency on ordering of the esp_rev enum by feature flags.
I did not implement this for now.

Changes since v3:
- Reduce scope of family_code variable
- Remove some redundant comments
- Explicitly show the NCR/Symbios Logic part code instead of FSC, which is
  only used in the data manual

Changes since v2:
- Fixed merge conflict in second patch

Changes since v1:
- Removed confusing comments from esp_rev enum
- Remove unneeded definitions for UID register
- Remove unneeded local uid variable

Kars de Jong (2):
  esp_scsi: Correct ordering of PCSCSI definition in esp_rev enum
  esp_scsi: Add support for FSC chip

 drivers/scsi/esp_scsi.c | 20 +++++++++++---------
 drivers/scsi/esp_scsi.h | 41 +++++++++++++++++++++++++----------------
 2 files changed, 36 insertions(+), 25 deletions(-)