cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

pm-common.h (1105B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * Copyright (C) 2013 Samsung Electronics Co., Ltd.
      4 *	Tomasz Figa <t.figa@samsung.com>
      5 * Copyright (c) 2004 Simtec Electronics
      6 *	http://armlinux.simtec.co.uk/
      7 *	Written by Ben Dooks, <ben@simtec.co.uk>
      8 */
      9
     10#ifndef __PLAT_SAMSUNG_PM_COMMON_H
     11#define __PLAT_SAMSUNG_PM_COMMON_H __FILE__
     12
     13#include <linux/irq.h>
     14#include <linux/soc/samsung/s3c-pm.h>
     15
     16/* sleep save info */
     17
     18/**
     19 * struct sleep_save - save information for shared peripherals.
     20 * @reg: Pointer to the register to save.
     21 * @val: Holder for the value saved from reg.
     22 *
     23 * This describes a list of registers which is used by the pm core and
     24 * other subsystem to save and restore register values over suspend.
     25 */
     26struct sleep_save {
     27	void __iomem	*reg;
     28	unsigned long	val;
     29};
     30
     31#define SAVE_ITEM(x) \
     32	{ .reg = (x) }
     33
     34/* helper functions to save/restore lists of registers. */
     35
     36extern void s3c_pm_do_save(struct sleep_save *ptr, int count);
     37extern void s3c_pm_do_restore(const struct sleep_save *ptr, int count);
     38extern void s3c_pm_do_restore_core(const struct sleep_save *ptr, int count);
     39
     40#endif