Subject: Re: bus.h style question
To: None <ignatios@cs.uni-bonn.de>
From: Wolfgang Solfrank <ws@kurt.tools.de>
List: tech-kern
Date: 08/20/1997 17:53:23
> > [i.s. wrote:]
> > > a) On machines, which _can_ have alien-endianness busses (more corretly: 
> > > busses handled by bus_space_xxx of different endiannesses), the only
> > > functions which _can_ be implemented as efficient inline macros are 
> > > bus_space_xxx_1().
> > 
> > Well, this depends on the implementation, as there are cpus that can access
> > memory (or io for that matter) with special instructions that do the byte
> > swapping on the fly.
> 
> I don't believe its possible at all. How do you propose to switch the
> accesses byte-swapping between the ISA and the, say, ZBUS incantation of
> the chipset driver? (Except, of course, if _all_ your bus bridges do provide
> all necessary byte swapping functions in hardware))

Or all the busses in the machine need the same swapping.  Or you could do
something similar to the way I/O and memory is distinguished in the i386 
bus.h implementation using a tag that could be determined at compile time.

Anyway, this tends to become rather academic, until you really do a port to
such a machine and can determine what is or is not possible given the
particular processor, busses and bus bridges.
-- 
ws@TooLs.DE     (Wolfgang Solfrank, TooLs GmbH) 	+49-228-985800