Yes, here it is attached. It is copied and modified from AMD Tilapia mainboard, because that seemed to be a close relative.
Thanks.
Meanwhile, I added call to it8712f_kill_watchdog() , like Rudolf Marek suggested. That changed the behavior so that the machine no longer reboots in the middle of iterating through PCI busses and devices, but instead it seems to go on iterating infinitely, or presumably until malloc runs out of memory.
OK
Perhaps I should start out with a very minimalist devicetree and then add parts as needed?
Yes. Instead of commenting out devices from the Tilapia board, I think you should turn them off. The exception to that is: #device pci 18.0 on end #device pci 18.0 on end
Those are the HyperTransport links. There is no explicit way to set a link number in the device tree, so multiple copies of the device are added. If you move those around, your devices will be on different links. In other words, if you move both of those lines (not commented out) above the other device pci 18.0 on, then your devices will be on link 2 instead of link 0.
Is there a way to derive the correct contents, or at least the outline, of devicetree.cb from "lspci" dumps?
You can look at lspci -xxx from the factory BIOS and look at the register settings to determine which link is being used, or you can just try moving those lines around.
Thanks, Myles