Re: ESP SCSI driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Kars,

On 29/10/19 10:37 PM, Kars de Jong wrote:
Hi Michael,

Op ma 28 okt. 2019 om 19:32 schreef Michael Schmitz <schmitzmic@xxxxxxxxx>:
Don't mess with CONFIG3 - we've tried all that, and in the end had to
use PIO to transfer message bytes. Problems with tagged queueing in
the ESP driver are usually all due to the DMA not transferring single
bytes on Amiga. The additional message byte required to see a reselect
for a tagged command complete remains stuck in the ESP fifo. Can't see
how this would be affected by the driver mis-identifying the chip as
FAS100A.
And yet that was exactly what caused the issue. It was setting bit 1
of CONFIG3 - ESP_CONFIG3_FAST (FAS100A) instead of bit 3 -
ESP_CONFIG3_FCLK (FAS236 and also FSC). Bit 1 means ESP_CONFIG3_ADMA

I'd expect chip config settings to go awry if the chip version is not detected correctly. What I meant to say, attempts at somehow enabling additonal SCSI features in CONFIG3 haven't got us anywhere with the reselection interrupt issue.

Your hang may be due to something entirely different yet.

on the FSC, and having bit 0 cleared and bit 1 set is actually an
illegal combination on the FSC (marked "Reserved" in the data manual).

Regardig mis-detection of the chip revision - can you print the
'version' and 'family_code' variables in the esp->rev == FAST branch
of esp_reset_esp() please?
Family code 0x14, version 2. That's what was also used in the old driver.
Family code 0x14 would imply version 0xa2 (or possibly 0xa0). That's revision 'fsc' in the old driver?

I will try out some things this evening, I naively added the FSC to
the end of the enum, but the code does things like "if (esp->rev >=
FAS100A)" which break horribly then.

It looks like it might work if I add my chip type between FAS236 and
FAS100A in the esp_rev enum.
And that indeed fixed it. I ran "fsck -n" on both partitions on the
SCSI disk without issues.
I also want to enable Active Negation and perhaps also "Back-to-Back
Transfer Enable" in CONFIG4 for this chip (see also the data manual
http://www.bitsavers.org/components/ncr/scsi/53CF94_96-2_Fast_SCSI_Controller_Data_Manual_Apr1993.pdf
if you are interested, at home I have an even newer one for the
Symbios Logic version).

I will prepare a patch. Oh, I also noticed some issues in the comments
in the driver, I'll see if I can fix those too.

By all means, go ahead with a patch. My knowledge of the Amiga ESP boards is limited to what I could glean from the old driver source. I haven't seen an Amiga computer in over a decade.

Cheers,

    Michael



Kind regards,

Kars.



[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux