[parisc-linux] RFC: I/O tree design

Grant Grundler grundler@cup.hp.com
Mon, 05 Feb 2001 10:34:48 -0800


Matthew Wilcox wrote:
...
> One advantage of doing this is that `Child' could be a pointer to a
> PCI bus.

I don't think I want that. PCI busses have their own heirarchy
and I would much rather keep them quite seperate. At least for
the moment I would. Future abstraction of native bus access
and mgt methods might make this more interesting.

> > This proposal also calls for a special "root" node at
> 
> And you don't ned a root node, just siblings.

You are right - PCI starts out as a bunch of siblings too.
If it makes the code simpler to have a root node, then
I think it's ok to keep it.

Sometimes, it's convenient to think of the memory controller(s)
as the "parent" of the central bus and memory banks as children
(just like CPU would also be a child). This model works under ccNuma
as well with memory at multiple levels in the I/O tree.

Note that HPUX walks the "PA I/O tree" in a depth-first
fashion like PCI as well. So I expect the "siblings-only
for central bus" would be ok.

grant

Grant Grundler
parisc-linux {PCI|IOMMU|SMP} hacker
+1.408.447.7253