AM62L FreeRTOS SDK  11.00.00
APIs for SOC Specific Functions

Introduction

For more details and example usage, see SOC

Functions

int32_t SOC_moduleClockEnable (uint32_t moduleId, uint32_t enable)
 Enable clock to specified module. More...
 
int32_t SOC_moduleSetClockFrequency (uint32_t moduleId, uint32_t clkId, uint64_t clkRate)
 Set module clock to specified frequency. More...
 
int32_t SOC_moduleGetClockFrequency (uint32_t moduleId, uint32_t clkId, uint64_t *clkRate)
 Get module clock frequency. More...
 
const char * SOC_getCoreName (uint16_t coreId)
 Convert a core ID to a user readable name. More...
 
uint64_t SOC_getSelfCpuClk (void)
 Get the clock frequency in Hz of the CPU on which the driver is running. More...
 
void SOC_setEpwmTbClk (uint32_t epwmInstance, uint32_t enable)
 
void SOC_setDevStat (uint32_t bootMode)
 Change boot mode by setting devstat register. More...
 
void SOC_generateSwWarmResetMainDomain (void)
 Generate SW Warm Reset Main Domain. More...
 
uint32_t SOC_getWarmResetCauseMainDomain (void)
 Get the reset reason source for Main Domain. More...
 
void SOC_setFSSCtrlFlashBootSize (void)
 Update the boot block size for FSS subsystem. More...
 
void SOC_controlModuleLockMMR (uint32_t domainId, uint32_t partition)
 Lock control module partition to prevent writes into control MMRs. More...
 
void SOC_controlModuleUnlockMMR (uint32_t domainId, uint32_t partition)
 Unlock control module partition to allow writes into control MMRs. More...
 
uint64_t Soc_getPhyAddr (uint64_t virtAddr)
 Get Physical Address from virtual address. More...
 

Macros

#define SOC_BOOTMODE_MMCSD   (0X36C3)
 Switch value for SD card boot mode. More...
 

SOC Domain ID

#define SOC_DOMAIN_ID_MAIN   (0U)
 
#define SOC_DOMAIN_ID_WKUP   (1U)
 
#define SOC_PSC_DOMAIN_ID_MAIN   (0U)
 

SOC PSC Module State

#define SOC_PSC_SYNCRESETDISABLE   (0x0U)
 
#define SOC_PSC_SYNCRESET   (0x1U)
 
#define SOC_PSC_DISABLE   (0x2U)
 
#define SOC_PSC_ENABLE   (0x3U)
 

SOC PSC Domain State

#define SOC_PSC_DOMAIN_OFF   (0x0U)
 
#define SOC_PSC_DOMAIN_ON   (0x1U)
 

Macro Definition Documentation

◆ SOC_DOMAIN_ID_MAIN

#define SOC_DOMAIN_ID_MAIN   (0U)

◆ SOC_DOMAIN_ID_WKUP

#define SOC_DOMAIN_ID_WKUP   (1U)

◆ SOC_PSC_DOMAIN_ID_MAIN

#define SOC_PSC_DOMAIN_ID_MAIN   (0U)

\ SOC PSC Domain ID

◆ SOC_PSC_SYNCRESETDISABLE

#define SOC_PSC_SYNCRESETDISABLE   (0x0U)

◆ SOC_PSC_SYNCRESET

#define SOC_PSC_SYNCRESET   (0x1U)

◆ SOC_PSC_DISABLE

#define SOC_PSC_DISABLE   (0x2U)

◆ SOC_PSC_ENABLE

#define SOC_PSC_ENABLE   (0x3U)

◆ SOC_PSC_DOMAIN_OFF

#define SOC_PSC_DOMAIN_OFF   (0x0U)

◆ SOC_PSC_DOMAIN_ON

#define SOC_PSC_DOMAIN_ON   (0x1U)

◆ SOC_BOOTMODE_MMCSD

#define SOC_BOOTMODE_MMCSD   (0X36C3)

Switch value for SD card boot mode.

Function Documentation

◆ SOC_moduleClockEnable()

int32_t SOC_moduleClockEnable ( uint32_t  moduleId,
uint32_t  enable 
)

Enable clock to specified module.

Parameters
moduleId[in] see list of device ID's
enable[in] 1: enable clock to the module, 0: disable clock to the module
Returns
SystemP_SUCCESS Module clock is enabled
SystemP_FAILURE Module clock could not be enabled

◆ SOC_moduleSetClockFrequency()

int32_t SOC_moduleSetClockFrequency ( uint32_t  moduleId,
uint32_t  clkId,
uint64_t  clkRate 
)

Set module clock to specified frequency.

Parameters
moduleId[in] see list of module ID's
clkId[in] see list of clocks associated with the specified module ID
clkRate[in] Frequency to set in Hz
Returns
SystemP_SUCCESS Module clock is enabled
SystemP_FAILURE Module clock could not be enabled

◆ SOC_moduleGetClockFrequency()

int32_t SOC_moduleGetClockFrequency ( uint32_t  moduleId,
uint32_t  clkId,
uint64_t *  clkRate 
)

Get module clock frequency.

Parameters
moduleId[in] see list of module ID's
clkId[in] see list of clocks associated with the specified module ID
clkRate[out] Frequency of the clock
Returns
SystemP_SUCCESS on success, else failure

◆ SOC_getCoreName()

const char* SOC_getCoreName ( uint16_t  coreId)

Convert a core ID to a user readable name.

Parameters
coreId[in] see CSL_CoreID
Returns
name as a string

◆ SOC_getSelfCpuClk()

uint64_t SOC_getSelfCpuClk ( void  )

Get the clock frequency in Hz of the CPU on which the driver is running.

Returns
Clock frequency in Hz

◆ SOC_setEpwmTbClk()

void SOC_setEpwmTbClk ( uint32_t  epwmInstance,
uint32_t  enable 
)

◆ SOC_setDevStat()

void SOC_setDevStat ( uint32_t  bootMode)

Change boot mode by setting devstat register.

Parameters
bootMode[IN] Boot mode switch value

◆ SOC_generateSwWarmResetMainDomain()

void SOC_generateSwWarmResetMainDomain ( void  )

Generate SW Warm Reset Main Domain.

◆ SOC_getWarmResetCauseMainDomain()

uint32_t SOC_getWarmResetCauseMainDomain ( void  )

Get the reset reason source for Main Domain.

Returns
Reset Reason Source Main Domain

◆ SOC_setFSSCtrlFlashBootSize()

void SOC_setFSSCtrlFlashBootSize ( void  )

Update the boot block size for FSS subsystem.

Selects the size of the boot block to be used for the OSPI flash interface. Default value is 1'b0 - S0_BOOT_SIZE_64MB for the MMR register. Set 1'b1 - S0_BOOT_SIZE_128MB to update the value.

◆ SOC_controlModuleLockMMR()

void SOC_controlModuleLockMMR ( uint32_t  domainId,
uint32_t  partition 
)

Lock control module partition to prevent writes into control MMRs.

Parameters
domainId[in] See SOC_DomainId_t
partition[in] Partition number to unlock

◆ SOC_controlModuleUnlockMMR()

void SOC_controlModuleUnlockMMR ( uint32_t  domainId,
uint32_t  partition 
)

Unlock control module partition to allow writes into control MMRs.

Parameters
domainId[in] See SOC_DomainId_t
partition[in] Partition number to unlock

◆ Soc_getPhyAddr()

uint64_t Soc_getPhyAddr ( uint64_t  virtAddr)

Get Physical Address from virtual address.

Parameters
virtAddr[IN] : Virtual Address(Alias)
Returns
Physical Address