All of lore.kernel.org
 help / color / mirror / Atom feed
From: Finn Thain <fthain@telegraphics.com.au>
To: Kars de Jong <jongk@linux-m68k.org>
Cc: linux-m68k@vger.kernel.org, Michael Schmitz <schmitzmic@gmail.com>
Subject: Re: [PATCH] esp_scsi: Add support for FSC chip
Date: Wed, 30 Oct 2019 11:31:34 +1100 (AEDT)	[thread overview]
Message-ID: <alpine.LNX.2.21.1910301109060.8@nippy.intranet> (raw)
In-Reply-To: <20191029220503.7553-1-jongk@linux-m68k.org>


Nice fix!

As Michael mentioned already, you'll need to send this to all the relevant 
recipients:

$ scripts/get_maintainer.pl add-support-for-fsc-chip.patch
"James E.J. Bottomley" <jejb@linux.ibm.com> (maintainer:SCSI SUBSYSTEM)
"Martin K. Petersen" <martin.petersen@oracle.com> (maintainer:SCSI SUBSYSTEM)
linux-scsi@vger.kernel.org (open list:SCSI SUBSYSTEM)
linux-kernel@vger.kernel.org (open list)

A few more suggestions follow.

On Tue, 29 Oct 2019, Kars de Jong wrote:

> The FSC (NCR53CF9x-2 / SYM53CF9x-2) has a different family code than QLogic
> or Emulex parts. This caused it to be detected as a FAS100A.
> 
> Unforunately, this meant the configuration of the CONFIG3 register was
> incorrect. This causes data transfer issues.
> 
> The FSC also has a feature called Active Negation which should always be
> enabled according to the data manual. This is done using the CONFIG4
> register.
> 
> Signed-off-by: Kars de Jong <jongk@linux-m68k.org>
> ---
>  drivers/scsi/esp_scsi.c | 10 ++++++++--
>  drivers/scsi/esp_scsi.h | 10 ++++++----
>  2 files changed, 14 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/scsi/esp_scsi.c b/drivers/scsi/esp_scsi.c
> index bb88995a12c7..6b34a5764de5 100644
> --- a/drivers/scsi/esp_scsi.c
> +++ b/drivers/scsi/esp_scsi.c
> @@ -263,7 +263,11 @@ static void esp_reset_esp(struct esp *esp)
>  			esp->rev = FAS236;
>  		else if (family_code == 0x0a)
>  			esp->rev = FASHME; /* Version is usually '5'. */
> -		else
> +		else if (family_code == 0x14) {
> +			esp->rev = FSC;
> +			/* Enable Active Negation */
> +			esp_write8(ESP_CONFIG4_RADE, ESP_CFG4);

There is a comment in esp_scsi.h which seems to contradict the above 
logic, "ESP config register 4 read-write, found only on am53c974 chips."
I think the comment should be corrected now.

> +		} else
>  			esp->rev = FAS100A;
>  		esp->min_period = ((4 * esp->ccycle) / 1000);
>  	} else {
> @@ -308,7 +312,8 @@ static void esp_reset_esp(struct esp *esp)
>  
>  	case FAS236:
>  	case PCSCSI:
> -		/* Fast 236, AM53c974 or HME */
> +	case FSC:
> +		/* Fast 236, AM53c974, FSC or HME */
>  		esp_write8(esp->config2, ESP_CFG2);
>  		if (esp->rev == FASHME) {
>  			u8 cfg3 = esp->target[0].esp_config3;
> @@ -2373,6 +2378,7 @@ static const char *esp_chip_names[] = {
>  	"ESP100A",
>  	"ESP236",
>  	"FAS236",
> +	"FSC",
>  	"FAS100A",
>  	"FAST",
>  	"FASHME",
> diff --git a/drivers/scsi/esp_scsi.h b/drivers/scsi/esp_scsi.h
> index 91b32f2a1a1b..b60ea3e5e0eb 100644
> --- a/drivers/scsi/esp_scsi.h
> +++ b/drivers/scsi/esp_scsi.h
> @@ -211,6 +211,7 @@
>  /* ESP unique ID register read-only, found on fas236+fas100a only */
>  #define ESP_UID_F100A         0x00     /* ESP FAS100A  */
>  #define ESP_UID_F236          0x02     /* ESP FAS236   */
> +#define ESP_UID_FSC           0x14     /* NCR/Symbios Logic FSC */
>  #define ESP_UID_REV           0x07     /* ESP revision */
>  #define ESP_UID_FAM           0xf8     /* ESP family   */
>  

I think these should be in numerical order.

> @@ -262,10 +263,11 @@ enum esp_rev {
>  	ESP100A    = 0x01,  /* NCR53C90A */
>  	ESP236     = 0x02,
>  	FAS236     = 0x03,
> -	FAS100A    = 0x04,
> -	FAST       = 0x05,
> -	FASHME     = 0x06,
> -	PCSCSI     = 0x07,  /* AM53c974 */
> +	FSC        = 0x04,  /* NCR/Symbios Logic FSC */
> +	FAS100A    = 0x05,
> +	FAST       = 0x06,
> +	FASHME     = 0x07,
> +	PCSCSI     = 0x08,  /* AM53c974 */

I'm guessing that you've placed it here because of the esp->rev >= FAS236 
tests that appear in a couple of places relating to sync transfer period. 
Might be worth mentioning that in the commit log.

(No idea why this list uses hexadecimal, it's not a value from a chip 
register. It would be more readable in decimal, IMHO.)

-- 

>  };
>  
>  struct esp_cmd_entry {
> 

  parent reply	other threads:[~2019-10-30  0:31 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-24 20:56 Amiga PCMCIA network card support Andreas 'count' Kotes
2019-10-25  7:25 ` Kars de Jong
2019-10-25 11:49   ` Andreas 'count' Kotes
2019-10-28  9:19     ` Kars de Jong
2019-10-28 11:08       ` John Paul Adrian Glaubitz
2019-10-28 13:00         ` Kars de Jong
2019-10-28 13:20           ` John Paul Adrian Glaubitz
2019-10-28 15:39             ` ESP SCSI driver (was: Amiga PCMCIA network card support) Kars de Jong
2019-10-28 18:32               ` Michael Schmitz
2019-10-29  9:37                 ` Kars de Jong
2019-10-29 20:20                   ` ESP SCSI driver Michael Schmitz
2019-10-29 22:05                   ` [PATCH] esp_scsi: Add support for FSC chip Kars de Jong
2019-10-30  0:23                     ` Michael Schmitz
2019-10-30  7:11                       ` Kars de Jong
2019-10-30 18:42                         ` Michael Schmitz
2019-10-30  0:31                     ` Finn Thain [this message]
2019-10-30  1:06                       ` Michael Schmitz
2019-10-30  7:25                         ` Kars de Jong
2019-10-30  8:45                           ` Geert Uytterhoeven
2019-10-30  9:08                             ` Kars de Jong
2019-10-30 18:34                               ` Michael Schmitz
2019-10-30 18:52                             ` Brad Boyer
2019-10-30  7:22                       ` Kars de Jong
2019-10-30 23:15                         ` Finn Thain
2019-11-12 18:57                     ` [PATCH 0/2] Some esp_scsi updates Kars de Jong
2019-11-12 18:57                       ` [PATCH 1/2] esp_scsi: Correct ordering of PCSCSI definition in esp_rev enum Kars de Jong
2019-11-12 23:07                         ` Finn Thain
2019-11-13  8:00                           ` Kars de Jong
2019-11-13 22:25                             ` Finn Thain
2019-11-13 14:22                         ` Christoph Hellwig
2019-11-13 15:03                           ` Kars de Jong
2019-11-12 18:57                       ` [PATCH 2/2] esp_scsi: Add support for FSC chip Kars de Jong
2019-11-12 23:18                         ` Finn Thain
2019-11-12 23:57                           ` Finn Thain
2019-11-13  9:30                           ` Kars de Jong
2019-11-13 22:24                             ` Finn Thain
2019-11-14 21:59                       ` [PATCH v2 0/2] Some esp_scsi updates Kars de Jong
2019-11-14 21:59                         ` [PATCH 1/2] esp_scsi: Correct ordering of PCSCSI definition in esp_rev enum Kars de Jong
2019-11-14 22:06                           ` Kars de Jong
2019-11-14 21:59                         ` [PATCH 2/2] esp_scsi: Add support for FSC chip Kars de Jong
2019-11-14 22:07                           ` Kars de Jong
2019-11-14 22:25                         ` [PATCH v3 0/2] Some esp_scsi updates Kars de Jong
2019-11-14 22:25                           ` [PATCH v2 1/2] esp_scsi: Correct ordering of PCSCSI definition in esp_rev enum Kars de Jong
2019-11-15  2:13                             ` Finn Thain
2019-11-15  7:04                               ` Kars de Jong
2019-11-14 22:25                           ` [PATCH v3 2/2] esp_scsi: Add support for FSC chip Kars de Jong
2019-11-15  2:09                             ` Finn Thain
2019-11-18 13:27                               ` Kars de Jong
2019-11-09 19:14                   ` [PATCH] zorro_esp: increase maximum dma length to 65536 bytes Kars de Jong
2019-11-09 20:12                     ` James Bottomley
2019-11-10  2:36                       ` Michael Schmitz
2019-11-10  9:01                         ` Kars de Jong
2019-11-10 19:26                           ` Michael Schmitz
2019-11-11  8:47                             ` Kars de Jong
2019-11-10 19:35                         ` James Bottomley
2019-11-12 17:55                           ` [PATCH v2] zorro_esp: Limit DMA transfers to 65536 bytes (except on Fastlane) Kars de Jong
2019-11-12 22:46                             ` Finn Thain
2019-11-13  2:27                             ` Martin K. Petersen
2019-11-12  9:34                         ` [PATCH] zorro_esp: increase maximum dma length to 65536 bytes Kars de Jong
2019-11-09 22:53                     ` Finn Thain
2019-11-10  9:06                       ` Kars de Jong
2019-10-28 23:38               ` ESP SCSI driver (was: Amiga PCMCIA network card support) Finn Thain
2019-10-29 11:52                 ` Kars de Jong
2019-10-29 20:16                   ` ESP SCSI driver Michael Schmitz
2019-10-28 22:31           ` Amiga PCMCIA network card support Finn Thain
2019-10-29  8:56           ` FOSDEM (was: Re: Amiga PCMCIA network card support) Geert Uytterhoeven
2019-10-29  9:13             ` John Paul Adrian Glaubitz
2019-10-28 22:08       ` Amiga PCMCIA network card support Finn Thain
2019-10-29  9:00       ` Geert Uytterhoeven
2019-10-29  9:12         ` John Paul Adrian Glaubitz
2019-10-29  9:14           ` Geert Uytterhoeven
2019-10-29  9:20             ` John Paul Adrian Glaubitz
2019-10-29  9:40         ` Kars de Jong
2019-10-28  6:57   ` Michael Schmitz

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=alpine.LNX.2.21.1910301109060.8@nippy.intranet \
    --to=fthain@telegraphics.com.au \
    --cc=jongk@linux-m68k.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=schmitzmic@gmail.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.