Subject: Re: m68k comman part (was Re: mips ports ...)
To: None <current-users@NetBSD.ORG>
From: Carsten Hammer <chammer@phyd2hammer.uni-bielefeld.de>
List: current-users
Date: 03/22/1996 10:30:15
> 
> >    In order to really do this properly, the m68k ports should probably 
> >    implement the <machine/bus.h> interface designed by cgd...then, it might 
> >    even be possible to share things like the 8390 driver with the i386 port...
> > 
> > No.  On the i386, the cards are mapped through I/O space; on the
> > others, they're mapped in memory space.  Chris's interface does not
> > deal with such conflicts.
> 
> Nor can it, without imposing unnecessary speed penalties on devices
> that don't need to deal with that case.
> 
> i figure, if you're writing a device that has to deal with that case,
> and you _really_ _really_ _really_ want it to work with both memory
> and I/O spaces, you'll do one of two things:
> 	(1) #ifdef, which is plenty fast, but will only let you
> 	    use one method, in any given kernel, or
> 	(2) run-time test a flag, which is slower, but which will
> 	    let you do whatever you want.

as far as i understand it something similar has been done by Niklas
Halquist using inline functions for inb/outb and friends when he wrote 
support for isa cards in Amigas with bridgeboards for NetBSD 2 years ago. 

It was possible to compile
some of isa drivers in NetBSD-Amiga and successfully use them.
Last i heard was that he began to integrate some of the neccessary
changes to the interrupt system into openbsd.
Unfortunatly it never made it into NetBSD.
ciao
Carsten