Subject: Re: bus.h style question
To: None <firstname.lastname@example.org>
From: Wolfgang Solfrank <email@example.com>
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