On Mon, 29 May 2000, Dennis wrote:

> At 06:36 PM 5/27/00 -0700, Mike Smith wrote:
> >> Existing bus abstractions tend to let think that the same software driver
> >> can deal with different buses, bridges or IO methods without having to
> >> care about how these things actually behave, notably regarding buffering
> >> and ordering rules. This is untrue.
> >
> >A good bus abstraction lets you care as much or as little as necessary.  
> >The NetBSD framework (which we use) allows you to do this.
> 
> The best "portable" coding method is with memory-mapped registers, which
> seems to  have been omitted from this "implementation", which is the gripe
> here. Perhaps "portable" within the OS was your goal, but in the mean time
> "portable" between very different OSs has been tainted. After an OS
> specific initialization, the driver can be completely OS independent (as
> are our LINUX and FreeBSD drivers) using memory-mapped registers.

Using normal C pointers to memory-mapped registers is not portable.

-- 
Doug Rabson                             Mail:  [EMAIL PROTECTED]
Nonlinear Systems Ltd.                  Phone: +44 20 8442 9037




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to