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

Commit 044cb69c authored by Alistair Popple's avatar Alistair Popple Committed by Benjamin Herrenschmidt
Browse files

powerpc: Little endian fix for arch/powerpc/platforms/powernv/pci.c

parent 1cc79bc8
Loading
Loading
Loading
Loading
+5 −4
Original line number Original line Diff line number Diff line
@@ -462,8 +462,8 @@ void pnv_pci_setup_iommu_table(struct iommu_table *tbl,
static struct iommu_table *pnv_pci_setup_bml_iommu(struct pci_controller *hose)
static struct iommu_table *pnv_pci_setup_bml_iommu(struct pci_controller *hose)
{
{
	struct iommu_table *tbl;
	struct iommu_table *tbl;
	const __be64 *basep, *swinvp;
	const __be64 *basep;
	const __be32 *sizep;
	const __be32 *sizep, *swinvp;


	basep = of_get_property(hose->dn, "linux,tce-base", NULL);
	basep = of_get_property(hose->dn, "linux,tce-base", NULL);
	sizep = of_get_property(hose->dn, "linux,tce-size", NULL);
	sizep = of_get_property(hose->dn, "linux,tce-size", NULL);
@@ -484,8 +484,9 @@ static struct iommu_table *pnv_pci_setup_bml_iommu(struct pci_controller *hose)
	swinvp = of_get_property(hose->dn, "linux,tce-sw-invalidate-info",
	swinvp = of_get_property(hose->dn, "linux,tce-sw-invalidate-info",
				 NULL);
				 NULL);
	if (swinvp) {
	if (swinvp) {
		tbl->it_busno = swinvp[1];
		tbl->it_busno = of_read_ulong(&swinvp[1], 2);
		tbl->it_index = (unsigned long)ioremap(swinvp[0], 8);
		tbl->it_index =
			(unsigned long)ioremap(of_read_number(swinvp, 2), 8);
		tbl->it_type = TCE_PCI_SWINV_CREATE | TCE_PCI_SWINV_FREE;
		tbl->it_type = TCE_PCI_SWINV_CREATE | TCE_PCI_SWINV_FREE;
	}
	}
	return tbl;
	return tbl;