lkml.org 
[lkml]   [2000]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: VGA PCI IO port reservations
Date
Brian Gerst writes:
> This is an artifact from the ISA 10-bit IO bus. Many ISA cards do not
> decode all 16 address bits so you get aliases of the 0x100-0x3ff region
> throughout IO space. PCI cards should only use the first 256 ports of
> any 1k block to avoid aliases unless they claim the base alias. For
> example, all the xxe8 addresses for the S3 are aliases of 0x02e8 to an
> ISA card. Video cards are an exception to the general rule because they
> have to support all the legacy VGA crap.

No. All xxe8 addresses access specific registers. For example:

0x9ea8 is the drawing command
0xa2e8 is the background colour register
0xa6e8 is the foreground colour register

So, as you see they aren't aliases.

> /*
> * We need to avoid collisions with `mirrored' VGA ports
> * and other strange ISA hardware, so we always want the
> * addresses to be allocated in the 0x000-0x0ff region
> * modulo 0x400.
> *
> * Why? Because some silly external IO cards only decode
> * the low 10 bits of the IO address. The 0x00-0xff region
> * is reserved for motherboard devices that decode all 16
> * bits, so it's ok to allocate at, say, 0x2800-0x28ff,
> * but we want to try to avoid allocating at 0x2900-0x2bff
> * which might have be mirrored at 0x0100-0x03ff..
> */

Ah ha, I'll nick that for the ARM stuff then. Thanks for pointing it out.
_____
|_____| ------------------------------------------------- ---+---+-
| | Russell King rmk@arm.linux.org.uk --- ---
| | | | http://www.arm.linux.org.uk/personal/aboutme.html / / |
| +-+-+ --- -+-
/ | THE developer of ARM Linux |+| /|\
/ | | | --- |
+-+-+ ------------------------------------------------- /\\\ |
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:47    [W:0.109 / U:3.368 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site