Subject: port-powerpc/26382: accessing PCI IO space on systems without IO instructions
To: None <>
From: None <>
List: netbsd-bugs
Date: 07/20/2004 16:49:48
>Number:         26382
>Category:       port-powerpc
>Synopsis:       accessing PCI IO space on systems without IO instructions
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-powerpc-maintainer
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Tue Jul 20 19:14:00 UTC 2004
>Originator:     Michael Lorenz
>Release:        2.0G
NetBSD Macallan 2.0G NetBSD 2.0G (MACALLAN) #97: Mon Jul 19 21:50:58 EDT 2004  ml@Macallan:/usr/src/sys/arch/macppc/compile/MACALLAN macppc
There's no easy way to find out how to access PCI IO space on PowerPC systems and probably others that lack PCish IO instructions - well, at least I didn't find any. This keeps XFree86 from working with graphics cards that need to use PIO access, like most PCish cards. Since there is no fixed address to map IO space ( at least not on macppc where each bandit apparently has it's own ) and other PCI host-bridges may use different addresses there should be a way to find the physical address where to find the IO space of a given PCI card. I'd suggest adding an ioctl() to /dev/pci to do that, should be fairly easy to add. I'd do it myself but I think this needs a bit more discussion.
Try to use a MatroX Millennium I, II or a Voodoo 3 in a PowerMac - these cards work fine in MacOS and other OSes but fail in NetBSD/XFree86. There are numerous other cards with the same problem.