コード例 #1
0
ファイル: pm33xx.c プロジェクト: nanocad-lab/JIT-RFTS
static int am43xx_suspend_init(void)
{
	int ret = 0;
	ret = am43xx_map_scu();
	if (ret) {
			pr_err("PM: Could not ioremap SCU\n");
			return ret;
	}

	susp_params.l2_base_virt = omap4_get_l2cache_base();

	susp_params.cke_override_virt =
		ioremap(AM43XX_CTRL_CKE_OVERRIDE, SZ_4);

	if (!susp_params.cke_override_virt) {
		pr_err("PM: Could not ioremap CKE override in Control Module\n");
		return -ENOMEM;
	}

	/* Physical resume address to be used by ROM code */
	am33xx_pm->ipc.reg0 = (AM33XX_OCMC_END -
		am43xx_do_wfi_sz + am43xx_resume_offset + 0x4);

	return ret;
}
コード例 #2
0
ファイル: omap-mpuss-lowpower.c プロジェクト: kkus/linux
static void save_l2x0_context(void)
{
	u32 val;
	void __iomem *l2x0_base = omap4_get_l2cache_base();

	val = __raw_readl(l2x0_base + L2X0_AUX_CTRL);
	__raw_writel(val, sar_base + L2X0_AUXCTRL_OFFSET);
	val = __raw_readl(l2x0_base + L2X0_PREFETCH_CTRL);
	__raw_writel(val, sar_base + L2X0_PREFETCH_CTRL_OFFSET);
}
コード例 #3
0
ファイル: omap-mpuss-lowpower.c プロジェクト: zhouswei/myrep
static void __init save_l2x0_context(void)
{
	void __iomem *l2x0_base = omap4_get_l2cache_base();

	if (l2x0_base && sar_base) {
		writel_relaxed(l2x0_saved_regs.aux_ctrl,
			       sar_base + L2X0_AUXCTRL_OFFSET);
		writel_relaxed(l2x0_saved_regs.prefetch_ctrl,
			       sar_base + L2X0_PREFETCH_CTRL_OFFSET);
	}
}