Re: Proposal: non-PC ISA bus support

From: Richard Henderson (rth@twiddle.net)
Date: Wed Jun 21 2000 - 18:57:44 EST


On Tue, Jun 20, 2000 at 01:21:10PM +0200, Geert Uytterhoeven wrote:
>1. ISA I/O space is memory mapped on many platforms (e.g. PPC and MIPS). To
> access it from user space, you cannot plainly use inb() and friends like on
> PC, but you have to mmap() the correct region of /dev/mem first. This
> region depends on the machine type and currently there's no simple way to
> find out from user space.

You may wish to examine the pciconfig_iobase syscall used on Alpha.
It can be used to solve the multiple independant pci bus problem
as well as the ISA base address problem.

>2. ISA memory is not located at physical address 0 on many platforms (e.g. PPC
> and some MIPS boxes). This means you cannot e.g. use
> request_mem_region(0xa0000, 65536) to request the legacy VGA region.

This can be fiddled. Basicly, you pretend that 0 is the base address,
then use ioremap to shift everything up into place. This assumes that
the ISA bus is contained within exactly one PCI hose.

r~

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Jun 23 2000 - 21:00:23 EST