public inbox for linux-m68k@lists.linux-m68k.org
 help / color / mirror / Atom feed
From: Brad Boyer <flar@allandria.com>
To: Finn Thain <fthain@telegraphics.com.au>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>,
	Joshua Thompson <funaho@jurai.org>,
	linux-m68k <linux-m68k@lists.linux-m68k.org>
Subject: Re: [PATCH 0/4] Mac IOP driver fixes
Date: Sun, 31 May 2020 23:09:15 -0700	[thread overview]
Message-ID: <20200601060915.GA8450@allandria.com> (raw)
In-Reply-To: <alpine.LNX.2.22.394.2006010931070.8@nippy.intranet>

On Mon, Jun 01, 2020 at 10:05:05AM +1000, Finn Thain wrote:
> > BTW, how does the issue being fixed manifest itself? That's not clear to 
> > me from the patch description.
> > 
> 
> The bugs in the iop driver were found by inspection, in the course of 
> debugging adb-iop driver failures that Stan encountered. It's possible 
> that the adb-iop driver is not badly affected by these bugs (I don't 
> know). It's possible that the iop driver bugs are among the reasons why 
> the swim_iop driver was never stabilized. That driver was removed in 
> b21a323710e7 ("[PATCH] remove the broken BLK_DEV_SWIM_IOP driver").

The swim_iop driver was never completed. As far as I know, the data
transfer code was never written. I remember testing the driver, and
all it could do was detect the drives and do eject. Read and write
were not working. I looked into it at the time, but it's a little
messy and is much more complicated than the ADB driver. For ADB, the
data is small enough that it's packed in the IOP message. That's not
possible for SWIM, so it has a more complex data handling method. If
you look at the code of that driver and the messages, it looks like
the IOP can do DMA but it can't. The SWIM IOP message includes a buffer
pointer, but the IOP chip isn't connected in a way that it can just
access it (and it's getting passed a virtual address anyway). Based on
some of the other information I was given, there's a separate message
protocol on channel 0 (on each IOP) for bulk data transfer.

At the time, I had a diff to fix some bugs in the detection and handle
the status update messages. However, it hardly seemed worth submitting
that as a fix since the driver still wasn't useful without the bulk
data transfer working. I can pass my diff along if you intend to make
an attempt at a working swim_iop driver.

	Brad Boyer
	flar@allandria.com


  reply	other threads:[~2020-06-01  6:09 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-30 23:12 [PATCH 0/4] Mac IOP driver fixes Finn Thain
2020-05-30 23:12 ` [PATCH 3/4] m68k/mac: Don't send uninitialized data in IOP message reply Finn Thain
2020-05-30 23:12 ` [PATCH 1/4] m68k/mac: Don't send IOP message until channel is idle Finn Thain
2020-05-30 23:12 ` [PATCH 4/4] m68k/mac: Improve IOP debug messages Finn Thain
2020-05-30 23:12 ` [PATCH 2/4] m68k/mac: Fix IOP status/control register writes Finn Thain
2020-05-31  8:41 ` [PATCH 0/4] Mac IOP driver fixes Geert Uytterhoeven
2020-06-01  0:05   ` Finn Thain
2020-06-01  6:09     ` Brad Boyer [this message]
2020-06-01 23:32       ` Finn Thain
2020-06-02  2:21         ` Brad Boyer
2020-06-02  3:48           ` Finn Thain
2020-06-04  3:19             ` Brad Boyer
2020-06-04  4:49               ` Finn Thain
2020-06-04  7:43                 ` Brad Boyer
2020-06-05  3:50                   ` Finn Thain
2020-06-05  4:23                     ` Finn Thain
2020-06-05  9:11                       ` Brad Boyer
2020-06-29 21:39   ` Geert Uytterhoeven

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=20200601060915.GA8450@allandria.com \
    --to=flar@allandria.com \
    --cc=fthain@telegraphics.com.au \
    --cc=funaho@jurai.org \
    --cc=geert@linux-m68k.org \
    --cc=linux-m68k@lists.linux-m68k.org \
    /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