Functions | |
uint32_t | Cy_SysGetCM55Status (MXCM55_Type *CM55Base) |
Returns the Cortex-M55 core power mode. More... | |
void | Cy_SysEnableCM55 (MXCM55_Type *CM55Base, uint32_t vectorTableOffset, uint32_t waitus) |
Sets vector table base address and enables the Cortex-M55 core. More... | |
void | Cy_SysDisableCM55 (void) |
Disables CM55. More... | |
void | Cy_SysResetCM55 (MXCM55_Type *CM55Base, uint32_t waitus) |
Resets the Cortex-M55 core and waits for the mode to take the effect. More... | |
void | Cy_SysEnableSOCMEM (bool enable) |
Enables SOCMEM IP. More... | |
void | Cy_System_EnablePD1 (void) |
Safely Enables the PD1 Power Domain. More... | |
void | Cy_System_DisablePD1 (void) |
Safely Disables the PD1 Power Domain. | |
void | Cy_System_SetCM55DbgPort (cy_app_cpu_dbg_port_type_t dbgMode) |
Set APPCPU debug port mode policy. More... | |
void | Cy_SysEnableU55 (bool enable) |
This function enables or disable U55 ML accelerator based on parameter value. More... | |
uint32_t Cy_SysGetCM55Status | ( | MXCM55_Type * | CM55Base | ) |
Returns the Cortex-M55 core power mode.
CM55Base | MXCM55 base address |
void Cy_SysEnableCM55 | ( | MXCM55_Type * | CM55Base, |
uint32_t | vectorTableOffset, | ||
uint32_t | waitus | ||
) |
Sets vector table base address and enables the Cortex-M55 core.
CM55Base | MXCM55 base address |
vectorTableOffset | The offset of the vector table base address from memory address 0x00000000. The offset should be multiple to 1024 bytes. |
waitus | The timeout value in microsecond used to wait for core to be booted. value zero is for infinite wait till the core is booted successfully. |
void Cy_SysDisableCM55 | ( | void | ) |
Disables CM55.
void Cy_SysResetCM55 | ( | MXCM55_Type * | CM55Base, |
uint32_t | waitus | ||
) |
Resets the Cortex-M55 core and waits for the mode to take the effect.
CM55Base | MXCM55 base address |
waitus | The timeout value in microsecond used to wait for core to be reset. value zero is for infinite wait till the core is reset successfully. |
void Cy_SysEnableSOCMEM | ( | bool | enable | ) |
Enables SOCMEM IP.
enable | Enable or disable SOCMEM |
void Cy_System_EnablePD1 | ( | void | ) |
Safely Enables the PD1 Power Domain.
This function implements the sequence required to safely enable PD1 power domain, which includes
As an illustration on when to call this function , refer to below PDCM(Power Dependency Control Matrix)...
Where the table indicates the default PDCM dependencies.
With respect to PD1, table indicates below constraints
1) If APPCPU, SOCMEM and U55 are ON then APPSS needs to be ON.
2) If APPSS is ON then PD1 needs to be ON.
If any of the APPCPU, SOCMEM, U55 and APPSS power domains need to be switched ON, user needs to call this API first to switch ON PD1 safely.
Once PD1 is enabled, switching ON/OFF of individual power domains under PD1 can be done using below API's
void Cy_System_SetCM55DbgPort | ( | cy_app_cpu_dbg_port_type_t | dbgMode | ) |
Set APPCPU debug port mode policy.
dbgMode | debug port policy |
Disable debug port for CM55
Enables invasive debug CM55
Enables all trace and non-invasive debug features
Enables invasive debug & all trace and non-invasive enable for CM55
Invalid value passed
void Cy_SysEnableU55 | ( | bool | enable | ) |
This function enables or disable U55 ML accelerator based on parameter value.
In Enable case function will enable clock, PPU and SCTL register. In Disable case it will disable PPU and SCTL, clock will not be disabled.
enable | Enable or disable U55 |