[lkml]   [2000]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: VGA PCI IO port reservations
Followup to:  <>
By author: Russell King <>
In newsgroup:
> I've been looking at a number of VGA cards recently, and I've started
> wondering out the Linux resource management as far as allocation of
> IO ports. I've come to the conclusion that it does not contain all
> information necessary to allow allocations to be made safely.
> Thus far, VGA cards that I've looked at scatter extra registers through
> out the PCI IO memory region without appearing in the PCI BARs. In fact,
> for some cards there wouldn't be enough BARs to list them all.

This (and ISA) is why PCs usually allocate only addresses that match
the following equation for PCI IO:

(port >= 0x1000 && (port & 0x0300) == 0).

As you can see, the ports you list below all violate the second
criterion, they are thus "ISA equivalent ports".

The downside is that it's impossible to allocate more than 256
consecutive ports.

> For example, S3 cards typically use:
> 0x0102, 0x42e8, 0x46e8, 0x4ae8, 0x8180 - 0x8200, 0x82e8, 0x86e8,
> 0x8ae8, 0x8ee8, 0x92e8, 0x96e8, 0x9ae8, 0x9ee8, 0xa2e8, 0xa6e8,
> 0xaae8, 0xaee8, 0xb2e8, 0xb6e8, 0xbae8, 0xbee8, 0xe2e8,
> 0xff00 - 0xff44
> And Trident TGUI9440 uses:
> 0x2120, 0x43c4
> Cyber2000-type cards use:
> 0x0102, 0x46e8

<> at work, <> in private!
"Unix gives you enough rope to shoot yourself in the foot."
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

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