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

Commit 31c9efde authored by Paul Mundt's avatar Paul Mundt
Browse files

sh: Kill off broken PHYSADDR() usage in sh4_flush_dcache_page().



PHYSADDR() runs in to issues in 32-bit mode when we do not have the
legacy P1/P2 areas mapped, as such, we need to use page_to_phys()
directly, which also happens to do the right thing in legacy 29-bit mode.

Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
parent 654d364e
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -123,12 +123,12 @@ static void sh4_flush_dcache_page(void *arg)
	else
#endif
	{
		unsigned long phys = PHYSADDR(page_address(page));
		unsigned long phys = page_to_phys(page);
		unsigned long addr = CACHE_OC_ADDRESS_ARRAY;
		int i, n;

		/* Loop all the D-cache */
		n = boot_cpu_data.dcache.n_aliases;
		n = boot_cpu_data.dcache.way_incr >> 12;
		for (i = 0; i < n; i++, addr += 4096)
			flush_cache_4096(addr, phys);
	}