Re: clean way to support >32bit addr on 32bit CPU

Linus Torvalds
2005-01-11T18:23:42Z

On Tue, 11 Jan 2005, Randy.Dunlap wrote:
>
> > Ahh, yes. That's required on pretty much all platforms except x86 and
> > x86-64.
>
> OK, I don't get it, sorry. What's different about ARM & MIPS here
> (for PCMCIA)? Is this historical (so that I'm just missing it)
> or is it a data types difference?

Nothing is different. Pretty much every architecture - except for x86 and
ilk - will at least have the _potential_ for IO ports encoded above the
16-bit mark.

But a lot of architectures won't have PCMCIA (or if they do, they end up
having the whole ISA mapping, and for compatibility reasons they'll end up
making the ports visible to the kernel in the low 16 bits, even if the
actual hw has some other physical translation - I think that's true on
ppc, at least).

So what makes ARM and MIPS special is just the fact that they have PCMCIA,
but don't necessarily have the traditional ISA mappings. Embedded devices
and all that. Others either try to hide the fact that they look different,
or just never cared.

But the right thing is definitely to make an IO port pointer be "unsigned
int" or even "unsigned long".

Linus