----- Original Message -----
From: "Geert Uytterhoeven" <firstname.lastname@example.org>
To: "Bradley D. LaRonde" <email@example.com>
Cc: "Jun Sun" <firstname.lastname@example.org>; "Jim Paris" <email@example.com>; "Alan Cox"
<firstname.lastname@example.org>; "Maciej W. Rozycki" <email@example.com>;
"Linux/MIPS Development" <firstname.lastname@example.org>
Sent: Wednesday, January 02, 2002 4:41 AM
Subject: Re: ISA
> On Tue, 1 Jan 2002, Bradley D. LaRonde wrote:
> > ----- Original Message -----
> > From: "Jun Sun" <email@example.com>
> > To: "Jim Paris" <firstname.lastname@example.org>
> > Cc: "Alan Cox" <email@example.com>; "Geert Uytterhoeven"
> > <Geert.Uytterhoeven@sonycom.com>; "Maciej W. Rozycki"
> > "Linux/MIPS Development" <firstname.lastname@example.org>
> > Sent: Tuesday, January 01, 2002 2:22 PM
> > Subject: Re: ISA
> > > 1. each address space has an id.
> > > 2. kernel pre-defines a couple of well-known ones, 0 for CPU physical,
> > > 1 for virtual, etc.
> > > 3. When drivers discover the devices, they get the address and also
> > > the address space id where the address resides.
> > > 4. there are a set of macro's that converts/maps an address or an
> > > address region from one space to another.
> > The first thing that jumps out at me is that now every bus access has an
> > added switch in it.
> > Either that or drivers would get back access function pointers, but that
> > eliminates the chance to inline trivial bus accesses.
> Not completely. ioremap() and friends can handle the address space ID and
> return an appropriate pointer. That pointer can still be handled by
Yup. I forgot about having to run all bus addresses through ioremap.