coreboot/util
Carl-Daniel Hailfinger c2084e9de3 I managed to break dtc while working on PCI bridges:
dtc only uses dev_fn as identifier for a PCI device. That gets us a name
collision if we have the same dev_fn combination on multiple buses.
Either we add a random unique ID to the struct name or we integrate the
path to the parent device as well.
I decided to go for integration of parent device path.

With the following device tree

/{
        cpus {};
        domain@0 {
                bus@0 {
                        pci@0,0 {
                        };
                        pci@1,1 {
                        };
                        pci@f,0 {
                                bus@1 {
                                        pci@0,0 {
                                        };
                                };
                        };
                };
        };
};


we get the old names:
dev_root
dev_cpus
dev_domain_0
dev_bus_0
dev_pci_0_0
dev_pci_1_1
dev_pci_f_0
dev_bus_1
dev_pci_0_0 COLLISION!!!

and the new names:
dev_root
dev_cpus
dev_domain_0
dev_domain_0_bus_0
dev_domain_0_bus_0_pci_0_0
dev_domain_0_bus_0_pci_1_1
dev_domain_0_bus_0_pci_f_0
dev_domain_0_bus_0_pci_f_0_bus_1
dev_domain_0_bus_0_pci_f_0_bus_1_pci_0_0

Ron would like shorter names because they only have to be
machine-readable. That's left for another patch.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>


git-svn-id: svn://coreboot.org/repository/coreboot-v3@860 f3766cd6-281f-0410-b1cd-43a5c92072e9
2008-09-06 20:39:25 +00:00
..
doxygen doxy: Fix doxygen build by renaming Doxyfile file from .LinuxBIOS to .coreboot, as the reference in build system was already changed to Doxyfile.coreboot back in January 27th 2008-05-22 15:52:33 +00:00
dtc I managed to break dtc while working on PCI bridges: 2008-09-06 20:39:25 +00:00
kconfig small dependency fix, plus make oldconfig & co need libintl, too :) 2008-08-28 22:44:49 +00:00
lar Fix a type warning in printf. 2008-08-24 18:20:31 +00:00
lxregs The Geode has MSRs. LOTS of MSR. I get confused trying to find them. 2008-05-09 16:12:41 +00:00
lzma This very short patch fixes nrv2b compression in lar. 2008-04-14 14:19:09 +00:00
nrv2b This very short patch fixes nrv2b compression in lar. 2008-04-14 14:19:09 +00:00
options Emergency patch so that section checker won't bounce option tables. 2008-08-21 15:49:29 +00:00
picwrapper Fix typo in comment: 2008-08-16 13:27:05 +00:00
sectionchecker Make the section checker executable. 2008-08-21 19:38:32 +00:00
x86emu The named unions in the device tree code are obnoxious and degrade 2008-08-10 00:20:24 +00:00
xcompile Add objdump and readelf to xcompile and use the results. This kills a 2008-08-22 01:22:21 +00:00
Makefile Now version 3: LinuxBIOS -> coreboot rename. 2008-01-27 18:54:57 +00:00