AM273x MCU+ SDK  08.02.00
APIs for SOC Specific Functions

Introduction

For more details and example usage, see SOC

Sub Modules

 APIs for SOC Reset and Clock Functions
 

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...
 
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_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...
 
void SOC_setEpwmTbClk (uint32_t epwmInstance, uint32_t enable)
 Enable or disable ePWM time base clock from Control MMR. More...
 
uint64_t SOC_virtToPhy (void *virtAddr)
 SOC Virtual (CPU) to Physical address translation function. More...
 
void * SOC_phyToVirt (uint64_t phyAddr)
 Physical to Virtual (CPU) address translation function. More...
 
void SOC_logAllClockHz ()
 Print's module clock info to the console. More...
 

SOC Domain ID

#define SOC_DOMAIN_ID_MSS_TOP_RCM   (0U)
 
#define SOC_DOMAIN_ID_MSS_RCM   (1U)
 
#define SOC_DOMAIN_ID_DSS_RCM   (2U)
 
#define SOC_DOMAIN_ID_RCSS_RCM   (3U)
 
#define SOC_DOMAIN_ID_MSS_CTRL   (4U)
 
#define SOC_DOMAIN_ID_DSS_CTRL   (5U)
 
#define SOC_DOMAIN_ID_RCSS_CTRL   (6U)
 
#define SOC_DOMAIN_ID_MSS_IOMUX   (7U)
 

Macro Definition Documentation

◆ SOC_DOMAIN_ID_MSS_TOP_RCM

#define SOC_DOMAIN_ID_MSS_TOP_RCM   (0U)

◆ SOC_DOMAIN_ID_MSS_RCM

#define SOC_DOMAIN_ID_MSS_RCM   (1U)

◆ SOC_DOMAIN_ID_DSS_RCM

#define SOC_DOMAIN_ID_DSS_RCM   (2U)

◆ SOC_DOMAIN_ID_RCSS_RCM

#define SOC_DOMAIN_ID_RCSS_RCM   (3U)

◆ SOC_DOMAIN_ID_MSS_CTRL

#define SOC_DOMAIN_ID_MSS_CTRL   (4U)

◆ SOC_DOMAIN_ID_DSS_CTRL

#define SOC_DOMAIN_ID_DSS_CTRL   (5U)

◆ SOC_DOMAIN_ID_RCSS_CTRL

#define SOC_DOMAIN_ID_RCSS_CTRL   (6U)

◆ SOC_DOMAIN_ID_MSS_IOMUX

#define SOC_DOMAIN_ID_MSS_IOMUX   (7U)

Function Documentation

◆ SOC_moduleClockEnable()

int32_t SOC_moduleClockEnable ( uint32_t  moduleId,
uint32_t  enable 
)

Enable clock to specified module.

Parameters
moduleId[in] module 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] module ID's
clkId[in] 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_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_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_setEpwmTbClk()

void SOC_setEpwmTbClk ( uint32_t  epwmInstance,
uint32_t  enable 
)

Enable or disable ePWM time base clock from Control MMR.

Parameters
epwmInstance[in] ePWM instance number [0 - (CSL_EPWM_PER_CNT-1)]
enable[in] TRUE to enable and FALSE to disable

◆ SOC_virtToPhy()

uint64_t SOC_virtToPhy ( void *  virtAddr)

SOC Virtual (CPU) to Physical address translation function.

Parameters
virtAddr[IN] Virtual/CPU address
Returns
Corresponding SOC physical address

◆ SOC_phyToVirt()

void* SOC_phyToVirt ( uint64_t  phyAddr)

Physical to Virtual (CPU) address translation function.

Parameters
phyAddr[IN] Physical address
Returns
Corresponding virtual/CPU address

◆ SOC_logAllClockHz()

void SOC_logAllClockHz ( )

Print's module clock info to the console.