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

Commit b87bb40b authored by Sergei Shtylyov's avatar Sergei Shtylyov Committed by Ralf Baechle
Browse files

[MIPS] Alchemy: fix off by two error in __fixup_bigphys_addr()



the PCI specific code in this function doesn't check for the address range
being under the upper bound of the PCI memory window correctly -- fix this,
somewhat beautifying the code around the check, while at it...

Signed-off-by: default avatarSergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent dd99d966
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -137,12 +137,11 @@ phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size)

#ifdef CONFIG_PCI
	{
		u32 start, end;
		u32 start = (u32)Au1500_PCI_MEM_START;
		u32 end   = (u32)Au1500_PCI_MEM_END;

		start = (u32)Au1500_PCI_MEM_START;
		end = (u32)Au1500_PCI_MEM_END;
		/* check for pci memory window */
		if ((phys_addr >= start) && ((phys_addr + size) < end))
		/* Check for PCI memory window */
		if (phys_addr >= start && (phys_addr + size - 1) <= end)
			return (phys_t)
			       ((phys_addr - start) + Au1500_PCI_MEM_START);
	}