Christian Ehrhardt <ehrhardt <at> genua.de> writes: 
> > However, host bridges that are handled e.g. in arch/i386/pci/pchb.c
> > can appear downstream of another bridge but use bus numbers that are
> > outside of the upstream bridge's bus number range.

What I understood from the discussion, there is a possibility
of kinda "multi-path" within pci discovery. Right?

No being a pci guru, I did some work on azalia(4) in the past.

azalia(4) also need to deal with multi-path, but for signal
flow: audio codec has numerous one-to-one, one-to-many or
many-to-many connected nodes (dacs, adcs, mixers) which
signal should pass through.

Some signal paths are dead-end, some aren't.

azalia(4) uses so called "traversing" mechanism do detect
right signal flow and mark dead nodes as dead. So the result
of traversing is a tree-like structure (I'm simplifying here)
containing right signal path.

That's the principle: do traverse first, than operate.

pci bus structure is also tree-like and maybe it is better
to do traversing first, remove duplicated nodes and than do
actual device attachments.

Doing traversing may involve different bus discovery methods
(bios, acpi etc).

Just a raw idea.

Reply via email to