linux-m68k.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michael Schmitz <schmitzmic@gmail.com>
To: Finn Thain <fthain@telegraphics.com.au>
Cc: Vainikka Tuomas <tuomas.vainikka@aalto.fi>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	linux-m68k <linux-m68k@vger.kernel.org>
Subject: Re: m68k v3.16 status update
Date: Thu, 28 Dec 2017 21:02:23 +1300	[thread overview]
Message-ID: <118e7cd3-dd10-2f41-0515-480fff370f4e@gmail.com> (raw)
In-Reply-To: <alpine.LNX.2.21.1712200935490.3@nippy.intranet>

Hi Finn,

Am 20.12.2017 um 12:01 schrieb Finn Thain:
> On Tue, 19 Dec 2017, Michael Schmitz wrote:
> 
>>
>> esp->command_block_dma is mapped at driver init time so we don't get to 
>> chose at command submission time.
> 
> When the command is submitted, ops->send_dma_cmd() can do something like 
> this,
> 
> static void zorro_esp_send_dma_cmd(struct esp *esp, u32 dma_addr, u32 esp_count,
>                                    u32 dma_count, int write, u8 cmd);
> {
> 	if ((dma_addr_t)dma_addr == esp->command_block_dma && esp_count < 4) {
> 		zorro_esp_send_pio_cmd(esp, (u32)esp->command_block, esp_count,
> 		                       dma_count, write, cmd);
> 		return;
> 	}
> 
> 	/* do the usual DMA... */
> }
> 
> This logic completely ignores data transfers (including sense transfers) 
> but it is simple and self-contained and should get the job done.

Oddly enough, this does not quite work. Due to my settings in the
adapter probe function (I don't set the ESP_FLAG_DISABLE_SYNC flag), the
ESP core uses 'select with attention and stop' instead of the normal
select with attention command, which attempts to send just a single byte
IDENTIFY message, and defers sending tag bytes to a later separate
message out phase. The PIO routine I lifted from the Mac ESP driver
apparently does not sucessfully send such a short message (or the select
with attention and stop command requires special handshake).

Setting the ESP_FLAG_DISABLE_SYNC avoids triggering this behaviour.

You should be able to reproduce this on Mac by omitting the
ESP_FLAG_DISABLE_SYNC in the PIO case (just for testing - I don't
advocate letting the driver negotiate sync transfers that PIO can't
actually handle).

I think I'll give up on trying to make PIO transfers work in the general
case on Amiga, at least for now. I'll add comments to the Zorro PIO code
warning that this is only meant as a workaround for extended message in
transfer, and will fail on ESP_CMD_SELAS commands.

Cheers,

	Michael

  parent reply	other threads:[~2017-12-28  8:02 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-05 19:40 m68k v3.16 status update Geert Uytterhoeven
2014-08-05 19:52 ` Ingo Jürgensmann
2014-08-05 20:29   ` John Paul Adrian Glaubitz
2014-08-06  7:35     ` Geert Uytterhoeven
2014-08-06  9:53       ` John Paul Adrian Glaubitz
2014-08-08  8:58   ` Michael Schmitz
2014-08-08  9:53     ` Tuomas Vainikka
2014-08-08  8:38 ` Michael Schmitz
2014-08-08  9:45   ` Christian T. Steigies
2014-08-08 22:33     ` Michael Schmitz
2014-08-08 14:25   ` Tuomas Vainikka
2014-08-08 22:25     ` Michael Schmitz
2014-08-09  6:45       ` Tuomas Vainikka
2014-08-10  1:44         ` Michael Schmitz
2017-12-14  4:47         ` Michael Schmitz
2017-12-14 12:07           ` Vainikka Tuomas
2017-12-14 13:20             ` John Paul Adrian Glaubitz
2017-12-14 18:40             ` Michael Schmitz
2017-12-14 23:49               ` Finn Thain
2017-12-19  0:40                 ` Michael Schmitz
2017-12-19  3:35                   ` Finn Thain
2017-12-19  6:11                     ` Michael Schmitz
2017-12-19 22:06                       ` zorro_esp, was " Finn Thain
2017-12-19 23:01                       ` Finn Thain
2017-12-20  1:42                         ` Michael Schmitz
2017-12-20  3:34                           ` Finn Thain
2017-12-28  8:02                         ` Michael Schmitz [this message]
2017-12-29  0:02                           ` Finn Thain
2017-12-29  9:09                             ` Michael Schmitz
2017-12-19  8:19                   ` Geert Uytterhoeven
2017-12-20  7:33                     ` zorro_esp, was: " Michael Schmitz
2017-12-20  8:13                       ` Geert Uytterhoeven
2017-12-15  8:34               ` Vainikka Tuomas
2017-12-16  0:04                 ` TCQ with zorro_esp, was " Finn Thain
2017-12-19  0:44                 ` Michael Schmitz
2014-08-09  1:14   ` 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=118e7cd3-dd10-2f41-0515-480fff370f4e@gmail.com \
    --to=schmitzmic@gmail.com \
    --cc=fthain@telegraphics.com.au \
    --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;
as well as URLs for NNTP newsgroup(s).