linux-mips
[Top] [All Lists]

Re: ISA

To: Jim Paris <jim@jtan.com>
Subject: Re: ISA
From: "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>
Date: Wed, 19 Dec 2001 02:28:32 +0100 (MET)
Cc: linux-mips@oss.sgi.com
In-reply-to: <20011218172456.A12735@neurosis.mit.edu>
Organization: Technical University of Gdansk
Sender: owner-linux-mips@oss.sgi.com
On Tue, 18 Dec 2001, Jim Paris wrote:

> So I should modify ioremap to return (addr+isa_slot_offset) when
> CONFIG_ISA is defined and the given I/O address is in the 16 MB ISA
> range.  That will make things work according to Linus' description of
> how they should.

 Yep.

> Okay, point.  So the i82365 driver is at fault when it calls
> check_mem_region(ISA_address).  How should I fix that?  Should it
> call check_mem_region(ioremap(ISA_address)) instead?  

 Hmm, it looks no ISA device driver bothers to handle iomem resources.  I
believe check_mem_region(virt_to_phys(ioremap(ISA_address)), ...) should
work, but I haven't checked.  Note that you should probably look at the
*_resource() functions (as declared in <linux/ioport.h>) as *_region() 
ones seem to be doomed obsolete. 

> Or should /proc/iomap contain physical addresses, which the i82365
> driver has no way of knowing without breaking abstractions?  (And if
> that's the case, how should I do it?  Create isa_check_mem_region?)

 /proc/iomem (I suppose it is what you meant) does contain physical
addresses. 

-- 
+  Maciej W. Rozycki, Technical University of Gdansk, Poland   +
+--------------------------------------------------------------+
+        e-mail: macro@ds2.pg.gda.pl, PGP key available        +


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