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

Commit 6f82b6eb authored by Matt Fleming's avatar Matt Fleming
Browse files

sh: Use ioremap_fixmed to map the SM501 DRAM config register



We need to write to the DRAM config register very early and at such an
early stage ioremap() is not available. So use ioremap_fixed() to map
the register.

The reason that we are avoiding using the legacy P2 mapping is that
there will come a day when the legacy P2 mappings no longer exist.

Signed-off-by: default avatarMatt Fleming <matt@console-pimps.org>
parent 4d35b93a
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -332,8 +332,15 @@ static void __init sh7785lcr_setup(char **cmdline_p)
	pm_power_off = sh7785lcr_power_off;

	/* sm501 DRAM configuration */
	sm501_reg = (void __iomem *)0xb3e00000 + SM501_DRAM_CONTROL;
	writel(0x000307c2, sm501_reg);
	sm501_reg = ioremap_fixed(SM107_REG_ADDR, SM501_DRAM_CONTROL,
				  PAGE_KERNEL);
	if (!sm501_reg) {
		printk(KERN_ERR "%s: ioremap error.\n", __func__);
		return;
	}

	writel(0x000307c2, sm501_reg + SM501_DRAM_CONTROL);
	iounmap_fixed(sm501_reg);
}

/* Return the board specific boot mode pin configuration */