From: Michael Schmitz <schmitzmic@gmail.com>
To: Tuomas Vainikka <tuomas.vainikka@aalto.fi>
Cc: Linux/m68k <linux-m68k@vger.kernel.org>,
Geert Uytterhoeven <geert@linux-m68k.org>
Subject: Re: [PATCH 0/2] Experimental Amiga Zorro ESP driver
Date: Tue, 20 Aug 2013 21:36:22 +1200 [thread overview]
Message-ID: <1ef2d87e4efecb2d8c8c2eaf8ac5fd51@gmail.com> (raw)
In-Reply-To: <5212840A.4080300@aalto.fi>
Tuomas,
> I guess those two bytes have something to do with target
> (re)selection... There are two different ways of attempting to read
> these bytes in the code, one is reading them from the FIFO byte by
> byte, and the other way is to setup a DMA read (write from device).
> The two different schemes are used in two different functions, and I
> do not understand why one method would be preferred over the other
> when comparing these functions.
What the driver attempts to read on reselection are the tag bytes that
were used in the previous disconnect. These have to match otherwise we
are not reselecting the command we need.
No idea which functions you refer to regarding PIO (reading from FIFO).
Anyway, the DMA will read from the same FIFO that the CPU would, if I
understand DMA correctly. There really should be no difference-
> I think I managed to find these two bytes; They are not ready for DMA,
> but are sitting in the FIFO waiting to be read.
> So the loop before the "IRQ2 timeout" is waiting for an interrupt that
> would tell that the DMA transfer has finished.
The loop checks whether the ESP status indicates the transfer is done -
if the bytes are still stuck in the FIFO I'd guess the DMA does not
bother to transfer for such small transfer counts.
The DMA transfer function can be changed to fetch less than seven bytes
from the FIFO by PIO instead of setting up DMA transfer (just poll the
FIFO after sending the command to the ESP, instead of first setting up
the DMA then sending the command),
I haven't yet merged your changes into my source - will try to do that
tomorrow.
Cheers,
Michael
> ...
>
> [13433.390000] ESP: Disconnecting tgt[1] tag[20:0]
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x97, 2 bytes in
> FIFO.
> [13433.400000] ESP: intr sreg[97] seqreg[04] sreg2[00] ireg[0c]
> [13433.400000] ESP: reconnect tag, zorro_esp_irq_pending(): ESP_STATUS
> = 0x97, 0 bytes in FIFO.
> [13433.400000] IRQ(0:10:97), zorro_esp: esp_count = 2, dma_count = 2,
> addr = 0x7fa59000. Writing.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> [13433.400000] zorro_esp_irq_pending(): ESP_STATUS = 0x17, 2 bytes in
> FIFO.
> ...
> Remember that write is read :)
>
> Now, I guess, I have to check whether those two bytes contain the
> right information...
>
> -Tuomas
> <zesp014.cap.gz>
next prev parent reply other threads:[~2013-08-20 9:36 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-06 20:56 [PATCH 0/2] Experimental Amiga Zorro ESP driver Michael Schmitz
2013-06-06 20:56 ` [PATCH 1/2] m68k/amiga - Zorro ESP SCSI Makefile/Kconfig support Michael Schmitz
2013-06-06 20:56 ` [PATCH 2/2] m68k/amiga - Zorro ESP: convert old driver to ESP core Michael Schmitz
2013-08-15 21:40 ` [PATCH 0/2] Experimental Amiga Zorro ESP driver Tuomas Vainikka
2013-08-16 19:01 ` Tuomas Vainikka
2013-08-17 1:49 ` Michael Schmitz
2013-08-17 11:33 ` Tuomas Vainikka
2013-08-18 2:05 ` Michael Schmitz
2013-08-18 8:23 ` Geert Uytterhoeven
2013-08-18 8:58 ` Michael Schmitz
2013-08-18 9:10 ` Geert Uytterhoeven
2013-08-19 8:48 ` Michael Schmitz
2013-08-19 11:47 ` Tuomas Vainikka
2013-08-19 12:01 ` Geert Uytterhoeven
2013-08-19 20:46 ` Tuomas Vainikka
2013-08-20 9:36 ` Michael Schmitz [this message]
2013-08-20 10:00 ` Tuomas Vainikka
2013-08-22 20:34 ` Michael Schmitz
2013-08-31 10:37 ` Tuomas Vainikka
2013-09-10 21:13 ` Tuomas Vainikka
2013-09-11 10:12 ` Michael Schmitz
2013-09-11 13:08 ` Tuomas Vainikka
2013-09-11 20:14 ` Tuomas Vainikka
2013-09-26 13:44 ` Michael Schmitz
2013-09-26 14:04 ` Tuomas Vainikka
2013-09-27 9:17 ` Michael Schmitz
2013-09-11 14:48 ` Geert Uytterhoeven
2013-09-12 15:36 ` esp_scsi QTAG in FAS216 (was Re: [PATCH 0/2] Experimental Amiga Zorro ESP driver) Tuomas Vainikka
2013-09-26 13:50 ` Michael Schmitz
2014-04-04 20:28 ` esp_scsi QTAG in FAS216 David Miller
2014-04-06 20:33 ` Michael Schmitz
2014-04-07 3:39 ` David Miller
2014-04-10 14:31 ` Kars de Jong
2014-04-11 1:47 ` Michael Schmitz
2014-04-13 14:47 ` Kars de Jong
2014-04-13 22:38 ` Michael Schmitz
2014-04-14 2:14 ` David Miller
2014-04-14 5:05 ` Tuomas Vainikka
2014-04-14 8:51 ` Michael Schmitz
2014-05-25 8:56 ` Geert Uytterhoeven
2014-05-26 1:15 ` Michael Schmitz
2014-04-14 9:01 ` Michael Schmitz
2014-05-04 11:41 ` Tuomas Vainikka
2016-10-28 21:54 ` Finn Thain
2016-10-30 2:33 ` Finn Thain
2016-10-31 8:03 ` Michael Schmitz
2016-10-31 18:54 ` Michael Schmitz
2016-10-31 23:47 ` Finn Thain
2016-11-01 7:09 ` Michael Schmitz
2016-11-01 7:23 ` Finn Thain
2013-08-18 9:14 ` [PATCH 0/2] Experimental Amiga Zorro ESP driver Tuomas Vainikka
2013-08-18 9:42 ` Geert Uytterhoeven
2013-08-18 12:25 ` Tuomas Vainikka
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=1ef2d87e4efecb2d8c8c2eaf8ac5fd51@gmail.com \
--to=schmitzmic@gmail.com \
--cc=geert@linux-m68k.org \
--cc=linux-m68k@vger.kernel.org \
--cc=tuomas.vainikka@aalto.fi \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox