Messages in this thread |  | | Date | Wed, 25 Sep 1996 11:22:51 +0300 (EET DST) | From | Linus Torvalds <> | Subject | Re: pre 2.1: Neat Oops with ncrBsd |
| |
Oops, sorry for this confusion, but the "PAGE_ADDRESS" below should obviously be "PAGE_OFFSET" in case anybody actually tests this out..
Linus
On Wed, 25 Sep 1996, Linus Torvalds wrote: > > Hmm, I think I have an idea. > > The readb() (and other macros) right now use __va() to change the address > into a virtual one. But on the x86 we'd actually be better off with a new > "__io()" macro, which instead of adding PAGE_OFFSET would do a logical OR > operation. > > Could you test this change: > > - in include/asm-i386/io.h, add a macro like this: > > #define __io(x) ((void *)(PAGE_ADDRESS | (unsigned long)(x))) > > - in the same file, change all uses of "__va" to "__io". > > That should make things work, and we can easily make it work on the alpha too > (by making "vremap()" a NULL operation on the alpha, as we don't need any > remapping, and we can just return the original address) > > Linus >
|  |