 |
AM62L FreeRTOS SDK
11.00.00
|
|
Go to the documentation of this file.
68 #define PSCI_BASE_FUNC (uint32_t) 0x84000000U
69 #define PSCI_FUNC(n) (PSCI_BASE_FUNC + (n))
70 #define PSCI_FUNC_OFF_64BIT (uint32_t) 0x40000000U
71 #define PSCI_BASE_FUNC_64BIT \
72 (PSCI_BASE_FUNC + PSCI_FUNC_OFF_64BIT)
73 #define PSCI_FUNC_64BIT(n) (PSCI_BASE_FUNC_64BIT + (n))
75 #define PSCI_FUNC_PSCI_VERSION PSCI_FUNC(0)
76 #define PSCI_FUNC_CPU_OFF PSCI_FUNC(2)
77 #define PSCI_FUNC_SYSTEM_RESET PSCI_FUNC(9)
78 #define PSCI_FUNC_CPU_ON_64BIT PSCI_FUNC_64BIT(3)
79 #define PSCI_FUNC_PSCI_FEATURES PSCI_FUNC(10)
82 #define PSCI_MAJOR_VERSION_SHIFT (16U)
83 #define PSCI_MINOR_VERSION_MASK \
84 ((1U << PSCI_MAJOR_VERSION_SHIFT) - 1)
85 #define PSCI_MAJOR_VERSION_MASK ~PSCI_MINOR_VERSION_MASK
86 #define PSCI_MAJOR_VERSION(ver) \
87 (((ver) & PSCI_MAJOR_VERSION_MASK) >> PSCI_MAJOR_VERSION_SHIFT)
88 #define PSCI_MINOR_VERSION(ver) \
89 ((ver) & PSCI_MINOR_VERSION_MASK)
92 #define PSCI_SUCCESS (0)
93 #define PSCI_NOT_SUPPORTED (-1)
94 #define PSCI_INVALID_PARAMS (-2)
95 #define PSCI_DENIED (-3)
96 #define PSCI_ALREADY_ON (-4)
97 #define PSCI_ON_PENDING (-5)
98 #define PSCI_INTERNAL_FAILURE (-6)
99 #define PSCI_NOT_PRESENT (-7)
100 #define PSCI_DISABLED (-8)
101 #define PSCI_INVALID_ADDRESS (-9)
115 typedef struct PSCI_Object_s
133 typedef struct PSCI_Config_s
void PSCI_init(void)
Initialize the PSCI module.
struct PSCI_Config_s * PSCI_Handle
A handle that is returned from a PSCI_open() call.
Definition: scp/psci/v0/psci.h:110
PSCI Global Configuration.
Definition: scp/psci/v0/psci.h:134
int32_t PSCI_cpuOn(PSCI_Handle handle, uint32_t cpuId, uint32_t entryPoint)
Power on the CPU required.
PSCI_Handle PSCI_getHandle(uint32_t driverInstanceIndex)
This function returns the handle of an open PSCI Instance from the instance index.
int32_t PSCI_systemReset(PSCI_Handle handle)
Cold reset of the entire system.
int32_t PSCI_getFeatures(PSCI_Handle handle, uint32_t functionId, uint32_t *feature)
Get the features of a PSCI function.
int32_t PSCI_cpuOff(PSCI_Handle handle)
Power off the calling CPU.
PSCI_Object * object
Definition: scp/psci/v0/psci.h:136
uint32_t PSCI_getInitDriverIndex(void)
This function returns the initialised instance index.
PSCI_Handle PSCI_open(uint32_t idx)
Open the PSCI at index idx.
int32_t PSCI_getPSCIVersion(PSCI_Handle handle, uint32_t *psciVer)
Get the PSCI version.
SemaphoreP_Object mutex
Definition: scp/psci/v0/psci.h:118
void PSCI_close(PSCI_Handle handle)
Function to close the PSCI instance specified by the handle.
PSCI driver object.
Definition: scp/psci/v0/psci.h:116
Opaque semaphore object used with the semaphore APIs.
Definition: SemaphoreP.h:59
void PSCI_deinit(void)
Deinitialize the PSCI module.
bool isOpen
Definition: scp/psci/v0/psci.h:120