> Jeff, what sorts of things were you having to change for Titan?
> It feels wrong that you'd have to have reverse mappings at all.
> But then again, no one claimed that the X pci code is designed
> so much as evolved...
The big thing that I needed for multi-hose X on Titan was to be able
to find out whether a hose exists and, if so, what its root bus number
is without knowing where any devices were on that hose. This is
because X is doing it's own bus probe looking for video cards and relies
on the platform-specific pci init code to lay out the basic bus
structure for it. For now, I'm using IOBASE_ROOT_BUS as a
pciconfig_iobase query and added an IOBASE_FROM_HOSE flag to the query
to indicate that I was passing a hose number instead of a bus and devfn.
Beyond that, it's basically having X track separate bus bases for
different entities. For most addressing, HostToBus and BusToHost are
enough. vgahw and int10 needed extra work since they operated on
hardwired I/O addresses.
Right now, I'm actually running X quad-headed with a Matrox Millenium on
hose 0 (primary PCI), Permedia 2 cards on hoses 1 and 3 (66MHz PCI), and
a TNT2 on hose 2 (AGP).
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to firstname.lastname@example.org
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Jun 23 2000 - 21:00:23 EST