Subject: Re: graphics hardware
To: NetBSD port-sparc64 mailing list <port-sparc64@NetBSD.org>
From: Pavel Cahyna <pavel@NetBSD.org>
List: port-sparc64
Date: 11/24/2007 16:35:28
On Sat, Nov 24, 2007 at 09:55:21AM -0500, Michael wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hello,
>
> On Nov 24, 2007, at 07:13, Pavel Cahyna wrote:
>
> >On Fri, Nov 23, 2007 at 09:13:09AM -0500, Michael Lorenz wrote:
> >>
> >>Hello,
> >>
> >>On Nov 23, 2007, at 03:47, Pavel Cahyna wrote:
> >>
> >>>On Thu, Nov 22, 2007 at 05:55:01PM -0500, Michael Lorenz wrote:
> >>>>With PCI graphics cards it's more complicated. Cards based on ATI Mach64
> >>>>chips
> >>>>should work as long as they use a Rage II or Rage Pro ( also used on U5/U10
> >>>>and
> >>>>a few other mainboards ). Cards based on Rage XL chips are untested but
> >>>>should
> >>>>work, I have a Rage XL but with PC firmware so it's not very useful here.
> >>>
> >>>When I have tried machfb with a Rage XL card last time, it crashed during
> >>>boot. That was on alpha and the card works fine with XFree86.
> >>
> >>Machfb attaches but misdetects a whole bunch of things ( like memory size ) -
> >>kind of similar to machfb attaching to a Rage 128 ( the XL has a 64MB
> >>aperture,
> >>unlike older mach64 which use only 16MB ) - I wonder if the XL is some sort
> >>of
> >>unholy bastard between the two. Guess I should read more driver source to see
> >>where they special-case the XL.
> >
> >the panic message is:
> >machfb0 at pci0 dev 9 function 0: ATI Technologies Rage XL (rev. 0x27)
> >panic
>
> Please mail me the card's pcictl dump output.
PCI configuration registers:
Common header:
0x00: 0x47521002 0x02900087 0x03000027 0x00000000
Vendor Name: ATI Technologies (0x1002)
Device Name: Rage XL (0x4752)
Command register: 0x0087
I/O space accesses: on
Memory space accesses: on
Bus mastering: on
Special cycles: off
MWI transactions: off
Palette snooping: off
Parity error checking: off
Address/data stepping: on
System error (SERR): off
Fast back-to-back transactions: off
Interrupt disable: off
Status register: 0x0290
Capability List support: on
66 MHz capable: off
User Definable Features (UDF) support: off
Fast back-to-back capable: on
Data parity error detected: off
DEVSEL timing: medium (0x1)
Slave signaled Target Abort: off
Master received Target Abort: off
Master received Master Abort: off
Asserted System Error (SERR): off
Parity error detected: off
Class Name: display (0x03)
Subclass Name: VGA (0x00)
Interface: 0x00
Revision ID: 0x27
BIST: 0x00
Header Type: 0x00 (0x00)
Latency Timer: 0x00
Cache Line Size: 0x00
Type 0 ("normal" device) header:
0x10: 0x82000000 0x00001201 0x83082000 0x00000000
0x20: 0x00000000 0x00000000 0x00000000 0x80081002
0x30: 0x83060000 0x0000005c 0x00000000 0x00080103
Base address register at 0x10
type: 32-bit nonprefetchable memory
base: 0x82000000, not sized
Base address register at 0x14
type: i/o
base: 0x00001200, not sized
Base address register at 0x18
type: 32-bit nonprefetchable memory
base: 0x83082000, not sized
Base address register at 0x1c
not implemented(?)
Base address register at 0x20
not implemented(?)
Base address register at 0x24
not implemented(?)
Cardbus CIS Pointer: 0x00000000
Subsystem vendor ID: 0x1002
Subsystem ID: 0x8008
Expansion ROM Base Address: 0x83060000
Capability list pointer: 0x5c
Reserved @ 0x38: 0x00000000
Maximum Latency: 0x00
Minimum Grant: 0x08
Interrupt pin: 0x01 (pin A)
Interrupt line: 0x03
Capability register at 0x5c
type: 0x01 (Power Management, rev. 1.0)
Device-dependent header:
0x40: 0x0000000c 0x00000000 0x00000000 0x00000000
0x50: 0x00105c02 0xff000001 0x00000000 0x06020001
0x60: 0x00000000 0x00000000 0x00000000 0x00000000
0x70: 0x00000000 0x00000000 0x00000000 0x00000000
0x80: 0x00000000 0x00000000 0x00000000 0x00000000
0x90: 0x00000000 0x00000000 0x00000000 0x00000000
0xa0: 0x00000000 0x00000000 0x00000000 0x00000000
0xb0: 0x00000000 0x00000000 0x00000000 0x00000000
0xc0: 0x00000000 0x00000000 0x00000000 0x00000000
0xd0: 0x00000000 0x00000000 0x00000000 0x00000000
0xe0: 0x00000000 0x00000000 0x00000000 0x00000000
0xf0: 0x00000000 0x00000000 0x00000000 0x00000000
> Is your alpha somehow limited in how much PCI memory it can map? I've seen my
> SS20 run out of page entries with too many SBus graphics boards.
I don't think so - how would XFree86 work? Alpha does not have "page
entries" whatever it is, AFAIK. It has TLB entries, but I don't think that
a mapping has to be fully covered by them.
Pavel