GK SDK 源码库: XMIPCLinuxV100R005C00SPC030 (kernel/tools/open_source excluded)
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
/*
|
||||
* Copyright (c) 2015-2020, Renesas Electronics Corporation. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
||||
#ifndef PWRC_H
|
||||
#define PWRC_H
|
||||
|
||||
#define PPOFFR_OFF 0x0
|
||||
#define PPONR_OFF 0x4
|
||||
#define PCOFFR_OFF 0x8
|
||||
#define PWKUPR_OFF 0xc
|
||||
#define PSYSR_OFF 0x10
|
||||
|
||||
#define PWKUPR_WEN (1ull << 31)
|
||||
|
||||
#define PSYSR_AFF_L2 (1U << 31)
|
||||
#define PSYSR_AFF_L1 (1 << 30)
|
||||
#define PSYSR_AFF_L0 (1 << 29)
|
||||
#define PSYSR_WEN (1 << 28)
|
||||
#define PSYSR_PC (1 << 27)
|
||||
#define PSYSR_PP (1 << 26)
|
||||
|
||||
#define PSYSR_WK_SHIFT (24)
|
||||
#define PSYSR_WK_MASK (0x3)
|
||||
#define PSYSR_WK(x) (((x) >> PSYSR_WK_SHIFT) & PSYSR_WK_MASK)
|
||||
|
||||
#define WKUP_COLD 0x0
|
||||
#define WKUP_RESET 0x1
|
||||
#define WKUP_PPONR 0x2
|
||||
#define WKUP_GICREQ 0x3
|
||||
|
||||
#define RCAR_INVALID (0xffffffffU)
|
||||
#define PSYSR_INVALID 0xffffffff
|
||||
|
||||
#define RCAR_CLUSTER_A53A57 (0U)
|
||||
#define RCAR_CLUSTER_CA53 (1U)
|
||||
#define RCAR_CLUSTER_CA57 (2U)
|
||||
|
||||
extern u_register_t rcar_boot_mpidr;
|
||||
|
||||
#ifndef __ASSEMBLER__
|
||||
void rcar_pwrc_disable_interrupt_wakeup(u_register_t mpidr);
|
||||
void rcar_pwrc_enable_interrupt_wakeup(u_register_t mpidr);
|
||||
void rcar_pwrc_all_disable_interrupt_wakeup(void);
|
||||
void rcar_pwrc_clusteroff(u_register_t mpidr);
|
||||
void rcar_pwrc_cpuoff(u_register_t mpidr);
|
||||
void rcar_pwrc_cpuon(u_register_t mpidr);
|
||||
int32_t rcar_pwrc_cpu_on_check(u_register_t mpidr);
|
||||
void rcar_pwrc_setup(void);
|
||||
|
||||
uint32_t rcar_pwrc_get_cpu_wkr(u_register_t mpidr);
|
||||
uint32_t rcar_pwrc_status(u_register_t mpidr);
|
||||
uint32_t rcar_pwrc_get_cluster(void);
|
||||
uint32_t rcar_pwrc_get_mpidr_cluster(u_register_t mpidr);
|
||||
uint32_t rcar_pwrc_get_cpu_num(uint32_t cluster_type);
|
||||
void rcar_pwrc_restore_timer_state(void);
|
||||
void plat_secondary_reset(void);
|
||||
|
||||
void rcar_pwrc_code_copy_to_system_ram(void);
|
||||
|
||||
#if !PMIC_ROHM_BD9571
|
||||
void rcar_pwrc_system_reset(void);
|
||||
#endif
|
||||
|
||||
#if RCAR_SYSTEM_SUSPEND
|
||||
void rcar_pwrc_go_suspend_to_ram(void);
|
||||
void rcar_pwrc_set_suspend_to_ram(void);
|
||||
void rcar_pwrc_init_suspend_to_ram(void);
|
||||
void rcar_pwrc_suspend_to_ram(void);
|
||||
#endif
|
||||
|
||||
extern uint32_t rcar_pwrc_switch_stack(uintptr_t jump, uintptr_t stack,
|
||||
void *arg);
|
||||
#endif
|
||||
|
||||
#endif /* PWRC_H */
|
||||
Reference in New Issue
Block a user