lineage_kernel_xcoverpro/drivers/soc/samsung/cal-if/pmucal_system.h

51 lines
1.1 KiB
C
Raw Normal View History

2023-06-18 22:53:49 +00:00
#ifndef __PMUCAL_SYSTEM_H__
#define __PMUCAL_SYSTEM_H__
#include "pmucal_common.h"
struct pmucal_lpm {
u32 id;
struct pmucal_seq *enter;
struct pmucal_seq *save;
struct pmucal_seq *exit;
struct pmucal_seq *early_wakeup;
u32 num_enter;
u32 num_save;
u32 num_exit;
u32 num_early_wakeup;
};
/* Chip-independent enumeration for low-power mode
* All power modes should be described in here.
*/
enum sys_powerdown {
SYS_SICD,
SYS_SICD_CPD,
SYS_AFTR,
SYS_STOP,
SYS_LPD,
SYS_LPA,
SYS_ALPA,
SYS_DSTOP,
SYS_SLEEP,
SYS_SLEEP_VTS_ON,
SYS_SLEEP_AUD_ON,
SYS_FAPO,
SYS_SLEEP_USB_ON,
NUM_SYS_POWERDOWN,
};
/* APIs to be supported to PWRCAL interface */
extern int pmucal_system_enter(int mode);
extern int pmucal_system_exit(int mode);
extern int pmucal_system_earlywakeup(int mode);
extern int pmucal_system_init(void);
extern struct pmucal_seq pmucal_lpm_init[];
extern struct pmucal_lpm pmucal_lpm_list[];
extern unsigned int pmucal_lpm_init_size;
extern unsigned int pmucal_lpm_list_size;
#ifdef CONFIG_FLEXPMU
extern unsigned int pmucal_sys_powermode[];
#endif
#endif