Re: [linux-m68k] mac scsi, ncr5380

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

 



On Fri, Sep 26, 2008 at 06:27:05PM +1000, Finn Thain wrote:

There is so much duplication of code for the NCR5380 drivers -- sun3, 
atari, g_NCR5380, 2.4 & 2.2 branches in the mac68k CVS -- that I don't 
know where to start looking for fixes.

Thinking that the bug would be trivial, I started out writing cleanup 
patches for the existing mac_scsi.c/NCR5380.c combination. But the more I 
think about it, the less I want to go in that direction.

Now I'm thinking that mac_scsi should adopt the atari core, since that 
appears to be the better maintained contender. Michael, does that sound 
sensible? Does it have working PDMA?

Another thing, should we look at merging sun3_NCR5380.c and 
atari_NCR5380.c? The diff is huge, but that is because of the code style 
and formatting cleanups in atari_NCR5380.c. The functional differencess 
are few and far between.

If we can get to a working, common sun3/atari/mac core, I could then look 
at minimising C preprocessor abuse in favour of a cleaner link-time/ops 
struct abstraction layer -- with some assistance from Micheal and Sam: I'm 
assuming that there is a cut somewhere that would make for a broadly 
useful interface. Does this make sense?

It makes sense, I think.  I'm trying to remember what hackery I had
to do which led me to fork the driver in the first place -- I'm fairly
sure that the main differences were related to the dma controller on
the OBIO sun3's (50/60) being very picky about what bus phases you
programmed the DMA controller during, and this not working well with
the model in place in the version of atari_NCR5380 which I started
with (it's only been 9 years, you'd think I'd know this... :)

I can't actually recall what the requirments are at the moment.  most
of the sun3* function calls seem to be centered around making sure DMA
is configured in the CMDOUT phase and started in the DATAIN/DATAOUT
phases (is this why I commented out merge_contiguous_buffers() in
NCR5380_transfer_dma?)

Let me know if you start making progress, I'll be happy to let ya know
anything else I can rememeber, or to try to bring a kernel up on real
hardware (I think a couple of them still boot...  :)

-- Sam
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

  Powered by Linux