Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f1b7cc3e authored by Gavin Shan's avatar Gavin Shan Committed by Benjamin Herrenschmidt
Browse files

powerpc/powernv: Fetch PHB bus range from dev-tree



The patch enables fetching bus range from device-tree for the
specific PHB. If we can't get that from device-tree, the default
range [0 255] will be used.

Signed-off-by: default avatarGavin Shan <shangw@linux.vnet.ibm.com>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent 58d714ec
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -1109,6 +1109,7 @@ void __init pnv_pci_init_ioda_phb(struct device_node *np,
	unsigned long size, m32map_off, iomap_off, pemap_off;
	const u64 *prop64;
	const u32 *prop32;
	int len;
	u64 phb_id;
	void *aux;
	long rc;
@@ -1140,9 +1141,15 @@ void __init pnv_pci_init_ioda_phb(struct device_node *np,
	}

	spin_lock_init(&phb->lock);
	/* XXX Use device-tree */
	prop32 = of_get_property(np, "bus-range", &len);
	if (prop32 && len == 8) {
		hose->first_busno = prop32[0];
		hose->last_busno = prop32[1];
	} else {
		pr_warn("  Broken <bus-range> on %s\n", np->full_name);
		hose->first_busno = 0;
		hose->last_busno = 0xff;
	}
	hose->private_data = phb;
	phb->hub_id = hub_id;
	phb->opal_id = phb_id;