[Top] [All Lists]

Re: Proposal: non-PC ISA bus support

To: Geert Uytterhoeven <>
Subject: Re: Proposal: non-PC ISA bus support
From: Richard Henderson <>
Date: Wed, 21 Jun 2000 16:57:44 -0700
Cc: Linux kernel <>, Linux/PPC Development <>, Linux/MIPS Development <>
In-reply-to: <>
References: <>
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.


<Prev in Thread] Current Thread [Next in Thread>