Subject: Re: ncr53cxxx driver design issues
To: None <tech-kern@netbsd.org>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: tech-kern
Date: 04/18/2000 18:47:05
On Mon, Apr 17, 2000 at 06:34:13PM -0700, Jason R Thorpe wrote:
> On Sun, Apr 16, 2000 at 09:49:48PM +0200, Manuel Bouyer wrote:
> 
>  > So I think a more natural way of doing thing is to have a driver for
>  > the 720, 810, 815 and 860; and another one for the 825, 875 and 895.
> 
> I think I agree with your assessment.  I can even suggest names for the
> drivers:
> 
> 	osiop -- NCR 53c710
> 	siop  -- NCR 53c720, NCR 53c810, NCR 53c815, NCR 53c860
> 	esiop -- NCR 53c825, SYM 53c875, SYM 53c895, SYM 53c896
> 
> They're "old siop", "siop", and "enhanced siop", respectively :-)

Good, I've always been bad at choosing names :) Thanks !

> 
>  > Another issue is endianess: all 53c8xx are assumed to be little endian (as
>  > they live behind a PCI bus); but I guess the 720 can be either big or little
>  > depending on which bus it's connected. A flag set by the bus front end
>  > will probably be needed so that the bus-independant part can use htole/htobe
>  > as appropriate.
> 
> While I completely understand where Eduardo is coming from, we already have
> some ways to deal with the byte-order problem in DMA'd data structures, of
> sorts...

yes, the htole*() and htobe*().
Maybe something more formalised would be better, which could avoid those
#if BIG_ENDIAN/#if LITTLE_ENDIAN ?

I also understand the issues raised by "intelligent" bus controllers which
can do endian-swapping if asked, but I'm not there yet :)

--
Manuel Bouyer, LIP6, Universite Paris VI.           Manuel.Bouyer@lip6.fr
--