Subject: Quadra 840AV scsi DMA
To: None <port-mac68k@netbsd.org>
From: Mike Haertel <mike@ducky.net>
List: port-mac68k
Date: 04/08/2002 02:15:22
Hi all,
I have a Quadra 840AV that I have recently set
up with NetBSD/mac68k. Supposedly the SCSI controller
on this machine was one of the fastest ever put on
a 68k mac. However, it is dog slow under NetBSD.
I did some investigating and found that in esp.c it
is using the esp_dma_*() code, rather than the
esp_quick_dma_*() code.
Apparently the reason for this is that the 840AV
does not support the pseudo-DMA found in most other
68k Macs. Instead, it appears to have a true hardware
DMA controller, but NetBSD doesn't know how to use it.
It gets very good performance under MacOS.
Is anybody already working on this? If not, I would
like to take a crack at it.
My first thought is to disassemble the SCSI driver
in the Macintosh ROM to find out how to operate the
DMA controller. I have MacsBug, and I also have a
very complete looking table of ROM entry points (from
the MPW-GM distribution which is freely downloadable
from Apple). MacsBug has some capability of doing
symbolic disassembly, but I haven't been able to
figure out how to get my symbol table of the ROM
into MacsBug. Anybody know how to do this? If not,
any other suggestions on how I might proceed?
Thanks,
Mike