Secondary or subordinate bus cannot be zero. Zero value could indicate
either invalid secondary bus value or the fact that secondary bus value was
not filled or indicates non-compliant PCI-to-PCI bridge. This change makes
tree output better readable when bus numbers are not known or not provided.
for (b=&host_bridge; b; b=b->chain)
if (b->br_dev == d)
{
- if (b->secondary == b->subordinate)
+ if (b->secondary == 0)
+ p = tree_printf(line, p, "-");
+ else if (b->secondary == b->subordinate)
p = tree_printf(line, p, "-[%02x]-", b->secondary);
else
p = tree_printf(line, p, "-[%02x-%02x]-", b->secondary, b->subordinate);