[parisc-linux] Matrox Millenium II in C240
Grant Grundler
grundler@dsl2.external.hp.com
Mon, 6 Jan 2003 10:00:59 -0700
On Sun, Jan 05, 2003 at 01:10:37PM +0000, Matthew Wilcox wrote:
> Yep. Thought that was part of the PCI spec, though maybe I'm confused with
> 66MHz.
I think you are. 66Mhz operation requires 3.3v signaling.
AFAIK, both dino and cujo only run at 33Mhz *OR SLOWER* (eg 30Mhz).
However, HP did support only 3.3v for quite a while (at least on paper)
and I'm never quite sure which slots are 5v vs 3.3v.
> > SCSI is accessed that way. tulip driver can be tweaked to use MMIO
> > if you don't have any 100BT GSC (card-mode Dino) cards.
>
> umm.. I thought cardmode MMIO was working now on B/C/J class machines.
> I think D/K/R still have resource management issues.
I don't recall all the details for card-mode.
My main point was the default is IO port space (CONFIG_TULIP_MMIO).
...
> > It's interesting one device has MMIO at both 0xf2800000
> > and 0xf9000000 since it would imply one PCI controller is supposed
> > to forward the entire range of addresses. But Dino only forwards
> > (any number of) 8MB chunks between 0xf0800000 and 0xff800000 (except
> > the first and last 8MB chunks).
>
> I think this may well be the problem. I bet Dino hasn't been programmed
> to forward the 16MB range at f900'0000, and Linux has just found an
> unused bit of address space and allocated it to the Matrox card.
Hmmm. /proc/iomem should tell us which ranges dino/cujo are forwarding.
But looking at dino.c, it's clear the code is not handling multiple
ranges correctly even if firmware did program it right.
res = &dino_dev->hba.lmmio_space;
lmmio_space needs to be an array.
In HP speak, this is an "unsupported configuration".
Elroy (lba_pci.c) suffers a similar problem with "directed ranges"
(code currently only handles "distributed ranges"). At some point
I'll get back to working on the lba code since it has a few other
minor oustanding issues as well.
grant