iLLD_TC27xD  1.0
Cpu Core Functions
Collaboration diagram for Cpu Core Functions:

Functions

IFX_INLINE IfxCpu_ResourceCpu IfxCpu_getCoreId (void)
 API to get core id of the CPU of the caller. Caution: Core id of the cpus may not be continguous and shouldn't be used to index cpu. Use IfxCpu_getCoreIndex() to get cpu no. More...
 
IFX_INLINE IfxCpu_ResourceCpu IfxCpu_getCoreIndex (void)
 API to get cpu index of the caller CPU. Note: This api can be used whereever cpu no/index is needed. More...
 
IFX_INLINE void IfxCpu_initCSA (uint32 *csaBegin, uint32 *csaEnd)
 API to initialize the context save area of the CPU where this is called. More...
 
IFX_INLINE void IfxCpu_setSafetyTaskIdentifier (boolean safetyId)
 Set/Clear safety task identifier (PSW.S) on current CPU. More...
 
IFX_INLINE void IfxCpu_triggerSwReset (void)
 Triggers Software Reset. More...
 
IFX_EXTERN Ifx_CPU * IfxCpu_getAddress (IfxCpu_ResourceCpu cpu)
 API to get the address for CPU HW module register memory map. More...
 
IFX_EXTERN IfxCpu_CoreMode IfxCpu_getCoreMode (Ifx_CPU *cpu)
 API to get current mode of CPU. More...
 
IFX_EXTERN IfxCpu_ResourceCpu IfxCpu_getIndex (Ifx_CPU *cpu)
 API to get current mode of CPU. More...
 
IFX_EXTERN boolean IfxCpu_setCoreMode (Ifx_CPU *cpu, IfxCpu_CoreMode mode)
 API to set mode of the CPU. More...
 
IFX_EXTERN boolean IfxCpu_setProgramCounter (Ifx_CPU *cpu, uint32 programCounter)
 API to set the program counter for the CPU specified. More...
 
IFX_EXTERN boolean IfxCpu_startCore (Ifx_CPU *cpu, uint32 programCounter)
 API to set the program counter for the CPU specified and start the CPU. More...
 

Detailed Description

Function Documentation

IFX_EXTERN Ifx_CPU* IfxCpu_getAddress ( IfxCpu_ResourceCpu  cpu)

API to get the address for CPU HW module register memory map.

Parameters
cpuResource index of the CPU
Returns
CPU module register address

Definition at line 57 of file IfxCpu.c.

Referenced by IfxCpu_setProgramCounter().

IFX_INLINE IfxCpu_ResourceCpu IfxCpu_getCoreId ( void  )

API to get core id of the CPU of the caller. Caution: Core id of the cpus may not be continguous and shouldn't be used to index cpu. Use IfxCpu_getCoreIndex() to get cpu no.

Returns
Resource index of the CPU.

Definition at line 674 of file IfxCpu.h.

Referenced by IfxCpu_Trap_extractTrapInfo(), IfxEth_RxDescr_setBuffer(), and IfxEth_TxDescr_setBuffer().

IFX_EXTERN IfxCpu_CoreMode IfxCpu_getCoreMode ( Ifx_CPU *  cpu)

API to get current mode of CPU.

Parameters
cpuPointer to the CPU HW module (register memory map)
Returns
Current mode of the CPU

Definition at line 74 of file IfxCpu.c.

Referenced by IfxCpu_setCoreMode(), and IfxCpu_startCore().

IFX_EXTERN IfxCpu_ResourceCpu IfxCpu_getIndex ( Ifx_CPU *  cpu)

API to get current mode of CPU.

Parameters
cpuPointer to the CPU HW module (register memory map)
Returns
Resource index of the CPU

Definition at line 128 of file IfxCpu.c.

Referenced by IfxCpu_getCoreMode(), and IfxCpu_setCoreMode().

IFX_INLINE void IfxCpu_initCSA ( uint32 csaBegin,
uint32 csaEnd 
)

API to initialize the context save area of the CPU where this is called.

This API can initialize the CSA of the host CPU where this API is called. This API shall not be used to initialize the CSA of another CPU

Parameters
csaBeginPointer to start of context save area
csaEndPointer to end of context save area
Returns
None

Definition at line 720 of file IfxCpu.h.

Referenced by _Core0_start(), _Core1_start(), and _Core2_start().

IFX_EXTERN boolean IfxCpu_setCoreMode ( Ifx_CPU *  cpu,
IfxCpu_CoreMode  mode 
)

API to set mode of the CPU.

Parameters
cpuPointer to the CPU HW module (register memory map)
modeCPU mode to be set by this API
Returns
Success status of the activity (setting the core mode).
Return values
TRUE,:If the activity successfully be performed.
FALSE,:If the activity can't be performed.

Definition at line 263 of file IfxCpu.c.

Referenced by _Core0_start(), and IfxCpu_startCore().

IFX_EXTERN boolean IfxCpu_setProgramCounter ( Ifx_CPU *  cpu,
uint32  programCounter 
)

API to set the program counter for the CPU specified.

Parameters
cpuPointer to the CPU HW module (register memory map)
programCounterProgram counter value to be set
Returns
success status of the activity (setting program counter value).
Return values
TRUE,:If the activity successfully be performed.
FALSE,:If the activity can't be performed

Definition at line 404 of file IfxCpu.c.

Referenced by IfxCpu_startCore().

IFX_INLINE void IfxCpu_setSafetyTaskIdentifier ( boolean  safetyId)

Set/Clear safety task identifier (PSW.S) on current CPU.

Returns
None

Definition at line 854 of file IfxCpu.h.

IFX_EXTERN boolean IfxCpu_startCore ( Ifx_CPU *  cpu,
uint32  programCounter 
)

API to set the program counter for the CPU specified and start the CPU.

Parameters
cpuPointer to the CPU HW module (register memory map)
programCounterProgram counter value to start the CPU
Returns
success status of the activity (setting program counter value).
Return values
TRUE,:If the activity successfully be performed.
FALSE,:If the activity can't be performed

Definition at line 449 of file IfxCpu.c.

Referenced by _Core0_start().

IFX_INLINE void IfxCpu_triggerSwReset ( void  )

Triggers Software Reset.

Returns
None

Definition at line 899 of file IfxCpu.h.