AM263Px MCU+ SDK: APIs for SOC Specific Functions

| AM263Px MCU+ SDK 26.00.00 |

Sub Modules | Functions | Macros
APIs for SOC Specific Functions
APIs for SOC Specific Device Drivers

## Introduction

For more details and example usage, see SOC

## Sub Modules
| APIs for SOC Reset and Clock Functions
| APIs for SOC Xbars

## Functions
static int32_t | MCSPI_lld_isBaseAddrValid (uint32_t baseAddr)
| API to validate MCSPI base address. More...
static int32_t | MMCSD_lld_isBaseAddrValid (uint32_t baseAddr)
| API to validate MMCSD base addresses. More...
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...
void | SOC_setMultipleEpwmTbClk (uint32_t epwmMask, uint32_t enable)
| Enable or disable Multiple ePWM time base clock from Control MMR. More...
void | SOC_enableAdcReference (uint32_t adcInstance)
| Enable ADC references by writing to Control MMR. More...
void | SOC_enableAdcInternalReference (uint32_t adcInstance, uint32_t enable)
| Enables the ADC internal reference. More...
void | SOC_enableAdcReferenceMonitor (uint32_t adcInstance, uint32_t enable)
| Enable ADC reference Monitors by writing to Control MMR. More...
uint32_t | SOC_getAdcReferenceStatus (uint32_t adcInstance)
| Gets the Reference status. More...
void | SOC_enableAdcOsdChannel (uint32_t adcInstance, uint32_t channel, uint32_t enable)
| Enable or disable the OSD circuit over the ADC channels. More...
void | SOC_setAdcOsdConfig (uint32_t adcInstance, uint32_t config)
| Sets the ADC OSD Configuration. More...
void | SOC_enableAdcGlobalForce (uint32_t adcInstance, uint32_t enable)
| Enable or Disable the ADC instnace for Gloabl SW force. More...
void | SOC_adcSocGlobalForce (uint32_t socNumber)
| Triggers a global force for the SOC in enabled ADCs the ADCs may be enabled by using SOC_enableAdcGlobalForce() API. More...
void | SOC_selectAdcExtChXbar (uint32_t extChXbarOut, uint32_t extChXbarIn)
| Selects the ADC External Channel Select bit for the output from each xbar out. More...
void | SOC_selextAdcExtChDelay (uint32_t delay)
| Mux select to choose delay for ADC Extchsel. More...
void | SOC_enableAdcDacLoopback (uint32_t enable)
| Enable or Disable the ADC CAL Pin to loopback with DAC. More...
void | SOC_enableCmpssaDacLoopBack (uint32_t cmpssaInstance, uint32_t dacType, uint32_t enable)
| Enable or disable the CMPSS - DAC Loop Back configuration. More...
void | SOC_enableCmpssbDacLoopBack (uint32_t cmpssbInstance, uint32_t dacType, uint32_t enable)
| Enable or disable the CMPSS - DAC Loop Back configuration. More...
void | SOC_setEpwmGroup (uint32_t epwmInstance, uint32_t group)
| Configure the ePWM group. More...
void | SOC_selectSdfm1Clk0Source (uint8_t source)
| Select the SDFM1 CLK0 source. More...
void | SOC_sdfmClkLoopBackConfig (uint32_t sdfmInstance, uint32_t clkInstance, uint32_t defaultValue)
| Sets the configuraion for the loopback control. More...
void | SOC_gateEpwmClock (uint32_t epwmInstance)
| Gate the ePWM clock. More...
void | SOC_ungateEpwmClock (uint32_t epwmInstance)
| Ungate the ePWM clock. More...
void | SOC_gateFsitxClock (uint32_t fsitxInstance)
| Gate the FSI-TX clock. More...
void | SOC_gateFsirxClock (uint32_t fsirxInstance)
| Gate the FSI-RX clock. More...
void | SOC_gateCmpssaClock (uint32_t cmpssaInstance)
| Gate the CMPSS-A clock. More...
void | SOC_ungateCmpssaClock (uint32_t cmpssaInstance)
| Ungate the CMPSS-A clock. More...
void | SOC_gateCmpssbClock (uint32_t cmpssbInstance)
| Gate the CMPSS-B clock. More...
void | SOC_ungateCmpssbClock (uint32_t cmpssbInstance)
| Ungate the CMPSS-B clock. More...
void | SOC_gateEcapClock (uint32_t ecapInstance)
| Gate the ECAP clock. More...
void | SOC_ungateEcapClock (uint32_t ecapInstance)
| Ungate the ECAP clock. More...
void | SOC_gateEqepClock (uint32_t eqepInstance)
| Gate the EQEP clock. More...
void | SOC_ungateEqepClock (uint32_t eqepInstance)
| Ungate the EQEP clock. More...
void | SOC_gateSdfmClock (uint32_t sdfmInstance)
| Gate the SDFM clock. More...
void | SOC_ungateSdfmClock (uint32_t sdfmInstance)
| Ungate the SDFM clock. More...
void | SOC_gateDacClock (void)
| Gate the DAC clock. More...
void | SOC_ungateDacClock (void)
| Ungate the DAC clock. More...
void | SOC_gateAdcClock (uint32_t adcInstance)
| Gate the ADC clock. More...
void | SOC_ungateAdcClock (uint32_t adcInstance)
| ungate the ADC clock More...
void | SOC_gateRdcClock (uint32_t rdcInstance)
| Gate the HW_RESOLVER clock. More...
void | SOC_ungateRdcClock (uint32_t rdcInstance)
| Ungate the HW_RESOLVER clock. More...
void | SOC_gateOttoClock (uint32_t ottoInstance)
| Gate the OTTO clock. More...
void | SOC_ungateOttoClock (uint32_t ottoInstance)
| Ungate the OTTO clock. More...
void | SOC_gateSdfmPllClock (uint32_t sdfmInstance)
| Gate the SDFM PLL clock. More...
void | SOC_ungateSdfmPllClock (uint32_t sdfmInstance)
| Ungate the SDFM PLL clock. More...
void | SOC_gateFsiPllClock (uint32_t fsiInstance)
| Gate the FSI-TX PLL clock. More...
void | SOC_generateEpwmReset (uint32_t ePWMInstance)
| Generate ePWM reset. More...
void | SOC_generateFsiTxReset (uint32_t fsitxInstance)
| Generate FSI-TX reset. More...
void | SOC_generateFsiRxReset (uint32_t fsirxInstance)
| Generate FSI-RX reset. More...
void | SOC_generateCmpssaReset (uint32_t cmpssaInstance)
| Generate CMPSS-A reset. More...
void | SOC_generateCmpssbReset (uint32_t cmpssbInstance)
| Generate CMPSS-B reset. More...
void | SOC_generateEcapReset (uint32_t ecapInstance)
| Generate ECAP reset. More...
void | SOC_generateEqepReset (uint32_t eqepInstance)
| Generate EQEP reset. More...
void | SOC_generateSdfmReset (uint32_t sdfmInstance)
| Generate SDFM reset. More...
void | SOC_generateDacReset (void)
| Generate DAC reset. More...
void | SOC_generateAdcReset (uint32_t adcInstance)
| Generate ADC reset. More...
void | SOC_generateRdcReset (uint32_t rdcInstance)
| Generate RDC reset. More...
void | Soc_enableEPWMHalt (uint32_t epwmInstance)
| Halt EPWM with corresponding cPU. More...
void | Soc_disableEPWMHalt (uint32_t epwmInstance)
| Halt EPWM with corresponding cPU. More...
void | Soc_enableECAPHalt (uint32_t ecapInstance)
| Halt ECAP with corresponding cPU. More...
void | Soc_disableECAPHalt (uint32_t ecapInstance)
| Halt ECAP with corresponding cPU. More...
void | SOC_generateOttoReset (uint32_t ottoInstance)
| Generate OTTO reset. More...
void | SOC_selectIcssGpiMux (uint8_t pru_instance, uint32_t mask)
| Selection of ICSS GPI MUX. 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...
uint32_t | SOC_getFlashDataBaseAddr (void)
| This function gets the SOC mapped data base address of the flash. More...
void | SOC_sendSoftwareInterrupt (uint16_t coreId)
| Send SOC level software triggered address. More...
static int32_t | UART_IsBaseAddrValid (uint32_t baseAddr)
| API to validate UART base address. More...

## Macros
#define | MSS_CTRL_PARTITION0 (1)
#define | TOP_CTRL_PARTITION0 (2)
#define | CONTROLSS_CTRL_PARTITION0 (3)
#define | MSS_RCM_PARTITION0 (4)
#define | TOP_RCM_PARTITION0 (5)
#define | KICK_LOCK_VAL (0x00000000U)
#define | KICK0_UNLOCK_VAL (0x01234567U)
#define | KICK1_UNLOCK_VAL (0x0FEDCBA8U)
#define | ADC0_EXTCHSEL_BIT0 (0U)
#define | ADC0_EXTCHSEL_BIT1 (1U)
#define | ADC1_EXTCHSEL_BIT0 (2U)
#define | ADC1_EXTCHSEL_BIT1 (3U)
#define | ADC2_EXTCHSEL_BIT0 (4U)
#define | ADC2_EXTCHSEL_BIT1 (5U)
#define | ADC3_EXTCHSEL_BIT0 (6U)
#define | ADC3_EXTCHSEL_BIT1 (7U)
#define | ADC4_EXTCHSEL_BIT0 (8U)
#define | ADC4_EXTCHSEL_BIT1 (9U)
#define | ADC_R0_EXTCHSEL_BIT0 (10U)
#define | ADC_R0_EXTCHSEL_BIT1 (11U)
#define | ADC_R1_EXTCHSEL_BIT0 (12U)
#define | ADC_R2_EXTCHSEL_BIT1 (13U)
#define | ADC_EXTCHSELCT_DELAY_3_CYCLES (0U)
#define | ADC_EXTCHSELCT_DELAY_6_CYCLES (1U)
#define | CMPSS_LOOP_BACK_INH (0U)
#define | CMPSS_LOOP_BACK_INL (1U)
#define | IS_I2C_BASE_ADDR_VALID(baseAddr)
#define | IS_OSPI_BASE_ADDR_VALID(baseAddr) (baseAddr == CSL_FLASH_CONFIG_REG8_U_BASE)
| Macro to check if the OSPI base address is valid. More...
#define | IS_OSPI_DATA_BASE_ADDR_VALID(baseAddr)
| Macro to check if the OSPI base address is valid. More...

## SOC Domain ID
#define | SOC_DOMAIN_ID_MAIN (0U)

## Macro Definition Documentation

## ◆ SOC_DOMAIN_ID_MAIN

#define SOC_DOMAIN_ID_MAIN (0U)

## ◆ MSS_CTRL_PARTITION0

#define MSS_CTRL_PARTITION0 (1)

## ◆ TOP_CTRL_PARTITION0

#define TOP_CTRL_PARTITION0 (2)

## ◆ CONTROLSS_CTRL_PARTITION0

#define CONTROLSS_CTRL_PARTITION0 (3)

## ◆ MSS_RCM_PARTITION0

#define MSS_RCM_PARTITION0 (4)

## ◆ TOP_RCM_PARTITION0

#define TOP_RCM_PARTITION0 (5)

## ◆ KICK_LOCK_VAL

#define KICK_LOCK_VAL (0x00000000U)

## ◆ KICK0_UNLOCK_VAL

#define KICK0_UNLOCK_VAL (0x01234567U)

## ◆ KICK1_UNLOCK_VAL

#define KICK1_UNLOCK_VAL (0x0FEDCBA8U)

## ◆ ADC0_EXTCHSEL_BIT0

#define ADC0_EXTCHSEL_BIT0 (0U)

## ◆ ADC0_EXTCHSEL_BIT1

#define ADC0_EXTCHSEL_BIT1 (1U)

## ◆ ADC1_EXTCHSEL_BIT0

#define ADC1_EXTCHSEL_BIT0 (2U)

## ◆ ADC1_EXTCHSEL_BIT1

#define ADC1_EXTCHSEL_BIT1 (3U)

## ◆ ADC2_EXTCHSEL_BIT0

#define ADC2_EXTCHSEL_BIT0 (4U)

## ◆ ADC2_EXTCHSEL_BIT1

#define ADC2_EXTCHSEL_BIT1 (5U)

## ◆ ADC3_EXTCHSEL_BIT0

#define ADC3_EXTCHSEL_BIT0 (6U)

## ◆ ADC3_EXTCHSEL_BIT1

#define ADC3_EXTCHSEL_BIT1 (7U)

## ◆ ADC4_EXTCHSEL_BIT0

#define ADC4_EXTCHSEL_BIT0 (8U)

## ◆ ADC4_EXTCHSEL_BIT1

#define ADC4_EXTCHSEL_BIT1 (9U)

## ◆ ADC_R0_EXTCHSEL_BIT0

#define ADC_R0_EXTCHSEL_BIT0 (10U)

## ◆ ADC_R0_EXTCHSEL_BIT1

#define ADC_R0_EXTCHSEL_BIT1 (11U)

## ◆ ADC_R1_EXTCHSEL_BIT0

#define ADC_R1_EXTCHSEL_BIT0 (12U)

## ◆ ADC_R2_EXTCHSEL_BIT1

#define ADC_R2_EXTCHSEL_BIT1 (13U)

## ◆ ADC_EXTCHSELCT_DELAY_3_CYCLES

#define ADC_EXTCHSELCT_DELAY_3_CYCLES (0U)

## ◆ ADC_EXTCHSELCT_DELAY_6_CYCLES

#define ADC_EXTCHSELCT_DELAY_6_CYCLES (1U)

## ◆ CMPSS_LOOP_BACK_INH

#define CMPSS_LOOP_BACK_INH (0U)

## ◆ CMPSS_LOOP_BACK_INL

#define CMPSS_LOOP_BACK_INL (1U)

## ◆ IS_I2C_BASE_ADDR_VALID

#define IS_I2C_BASE_ADDR_VALID | ( |  | baseAddr | ) |

Value:
((baseAddr == CSL_I2C0_U_BASE) || \
(baseAddr == CSL_I2C1_U_BASE) || \
(baseAddr == CSL_I2C2_U_BASE) || \
(baseAddr == CSL_I2C3_U_BASE))

## ◆ IS_OSPI_BASE_ADDR_VALID

#define IS_OSPI_BASE_ADDR_VALID | ( |  | baseAddr | ) | (baseAddr == CSL_FLASH_CONFIG_REG8_U_BASE)

Macro to check if the OSPI base address is valid.

## ◆ IS_OSPI_DATA_BASE_ADDR_VALID

#define IS_OSPI_DATA_BASE_ADDR_VALID | ( |  | baseAddr | ) |

Value:
((baseAddr == CSL_FLASH_DATA_REG0_U_BASE) || \
(baseAddr == CSL_FLASH_DATA_REG1_U_BASE) || \
(baseAddr == CSL_FLASH_DATA_REG3_U_BASE))

Macro to check if the OSPI base address is valid.

## Function Documentation

## ◆ MCSPI_lld_isBaseAddrValid()

static int32_t MCSPI_lld_isBaseAddrValid | ( | uint32_t | baseAddr | ) |
| inlinestatic

API to validate MCSPI base address.

## ◆ MMCSD_lld_isBaseAddrValid()

static int32_t MMCSD_lld_isBaseAddrValid | ( | uint32_t | baseAddr | ) |
| inlinestatic

API to validate MMCSD base addresses.

## ◆ SOC_moduleClockEnable()

int32_t SOC_moduleClockEnable | ( | uint32_t | moduleId,
|  | uint32_t | enable
| ) |  |

Enable clock to specified module.

Parameters

  moduleId | [in] see SOC_RcmPeripheralId for list of 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] see SOC_RcmPeripheralId for list of module ID's
  clkId | [in] see SOC_RcmPeripheralClockSource for list of clocks
  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_setMultipleEpwmTbClk()

void SOC_setMultipleEpwmTbClk | ( | uint32_t | epwmMask,
|  | uint32_t | enable
| ) |  |

Enable or disable Multiple ePWM time base clock from Control MMR.

Parameters

  epwmMask | [in] ePWM instance Mask [1 - CSL_CONTROLSS_CTRL_EPWM_CLKSYNC_BIT_MAX]
  enable | [in] TRUE to enable and FALSE to disable

## ◆ SOC_enableAdcReference()

void SOC_enableAdcReference | ( | uint32_t | adcInstance | ) |

Enable ADC references by writing to Control MMR.

Parameters

  adcInstance | [in] ADC instance number [0 - (CSL_ADC_PER_CNT-1)]

## ◆ SOC_enableAdcInternalReference()

void SOC_enableAdcInternalReference | ( | uint32_t | adcInstance,
|  | uint32_t | enable
| ) |  |

Enables the ADC internal reference.

Parameters

  adcInstance | [in] ADC instance number [0 - (CSL_ADC_PER_CNT-1)]
  enable | [in] TRUE to enable internal reference - FALSE to disable.

## ◆ SOC_enableAdcReferenceMonitor()

void SOC_enableAdcReferenceMonitor | ( | uint32_t | adcInstance,
|  | uint32_t | enable
| ) |  |

Enable ADC reference Monitors by writing to Control MMR.

Parameters

  adcInstance | [in] ADC instance number [0 - (CSL_ADC_PER_CNT-1)]
  enable | [in] TRUE to enable internal reference Monitor - FALSE to disable.

## ◆ SOC_getAdcReferenceStatus()

uint32_t SOC_getAdcReferenceStatus | ( | uint32_t | adcInstance | ) |

Gets the Reference status.

Parameters

  adcInstance | [in] ADC instance number [0 - (CSL_ADC_PER_CNT-1)]

Returns
  TRUE - reference OK. FALSE - reference NOT OK.

## ◆ SOC_enableAdcOsdChannel()

void SOC_enableAdcOsdChannel | ( | uint32_t | adcInstance,
|  | uint32_t | channel,
|  | uint32_t | enable
| ) |  |

Enable or disable the OSD circuit over the ADC channels.

Parameters

  adcInstance | [in] ADC instance [0 - 4] ADC_R instance [5,6]
  channel | [in] Channel number for the ADC. [0 - 5]
  enable | [in] TRUE to enable and FALSE to disable the OSD circuit.

## ◆ SOC_setAdcOsdConfig()

void SOC_setAdcOsdConfig | ( | uint32_t | adcInstance,
|  | uint32_t | config
| ) |  |

Sets the ADC OSD Configuration.

Parameters

  adcInstance | [in] ADC instance [0 - 4] ADC_R instance [5,6]
  config | [in] configuration to be enabled of the OSD circuit.

It is recommended to wait for atleast 1uS after configuration, before sampling

config | function | Impedance | Voltage on 5K | Voltage on 7K
--- | --- | --- | --- | ---
0 | Zero Scale | 5K // 7K | VSSA | VSSA
------— | ------------— | --------— | ------------— | --------—
1 | Zero Scale | 5K | VSSA | OPEN
------— | ------------— | --------— | ------------— | --------—
2 | Zero Scale | 7K | OPEN | VSSA
------— | ------------— | --------— | ------------— | --------—
3 | Full Scale | 5K // 7K | VDD | VDD
------— | ------------— | --------— | ------------— | --------—
4 | Full Scale | 5K | VDD | OPEN
------— | ------------— | --------— | ------------— | --------—
5 | Full Scale | 7K | OPEN | VDD
------— | ------------— | --------— | ------------— | --------—
6 | 5/12 Scale | 5K // 7K | VSSA | VDD
------— | ------------— | --------— | ------------— | --------—
7 | 5/12 Scale | 5K // 7K | VDD | VSSA
------— | ------------— | --------— | ------------— | --------—

## ◆ SOC_enableAdcGlobalForce()

void SOC_enableAdcGlobalForce | ( | uint32_t | adcInstance,
|  | uint32_t | enable
| ) |  |

Enable or Disable the ADC instnace for Gloabl SW force.

Parameters

  adcInstance | [in] ADC instances [0 - 4] ADC_R instance [ 5 - 6]
  enable | [in] TRUE to enable and FALSE to disable the GLobal Force Selection

## ◆ SOC_adcSocGlobalForce()

void SOC_adcSocGlobalForce | ( | uint32_t | socNumber | ) |

Triggers a global force for the SOC in enabled ADCs the ADCs may be enabled by using SOC_enableAdcGlobalForce() API.

Parameters

  socNumber | [in] SOC Number [0 - 15]

## ◆ SOC_selectAdcExtChXbar()

void SOC_selectAdcExtChXbar | ( | uint32_t | extChXbarOut,
|  | uint32_t | extChXbarIn
| ) |  |

Selects the ADC External Channel Select bit for the output from each xbar out.

Parameters

  extChXbarOut | [in] selects the ADC_EXTCHSEL_XBAR_OUTx x in [0 - 9]
  extChXbarIn | [in] Valid Values are the following ADC0_EXTCHSEL_BIT0 ADC0_EXTCHSEL_BIT1 ADC1_EXTCHSEL_BIT0 ADC1_EXTCHSEL_BIT1 ADC2_EXTCHSEL_BIT0 ADC2_EXTCHSEL_BIT1 ADC3_EXTCHSEL_BIT0 ADC3_EXTCHSEL_BIT1 ADC4_EXTCHSEL_BIT0 ADC4_EXTCHSEL_BIT1 ADC_R0_EXTCHSEL_BIT0 ADC_R0_EXTCHSEL_BIT1 ADC_R1_EXTCHSEL_BIT0 ADC_R2_EXTCHSEL_BIT1

## ◆ SOC_selextAdcExtChDelay()

void SOC_selextAdcExtChDelay | ( | uint32_t | delay | ) |

Mux select to choose delay for ADC Extchsel.

Parameters

  delay | [in] 3 Cycle Delay or 6 Cycle Delay Valid Values are ADC_EXTCHSELCT_DELAY_3_CYCLES ADC_EXTCHSELCT_DELAY_6_CYCLES

## ◆ SOC_enableAdcDacLoopback()

void SOC_enableAdcDacLoopback | ( | uint32_t | enable | ) |

Enable or Disable the ADC CAL Pin to loopback with DAC.

Parameters

  enable | [in] TRUE to enable, FALSE to disable

## ◆ SOC_enableCmpssaDacLoopBack()

void SOC_enableCmpssaDacLoopBack | ( | uint32_t | cmpssaInstance,
|  | uint32_t | dacType,
|  | uint32_t | enable
| ) |  |

Enable or disable the CMPSS - DAC Loop Back configuration.

Parameters

  cmpssaInstance | Instance number of CMPSS TYPE A
  dacType | determines which CMPSS input line Valid values are CMPSS_LOOP_BACK_INH CMPSS_LOOP_BACK_INL
  enable |

## ◆ SOC_enableCmpssbDacLoopBack()

void SOC_enableCmpssbDacLoopBack | ( | uint32_t | cmpssbInstance,
|  | uint32_t | dacType,
|  | uint32_t | enable
| ) |  |

Enable or disable the CMPSS - DAC Loop Back configuration.

Parameters

  cmpssbInstance | Instance number of CMPSS TYPE B
  dacType | determines which CMPSS input line Valid values are CMPSS_LOOP_BACK_INH CMPSS_LOOP_BACK_INL
  enable |

## ◆ SOC_setEpwmGroup()

void SOC_setEpwmGroup | ( | uint32_t | epwmInstance,
|  | uint32_t | group
| ) |  |

Configure the ePWM group.

Parameters

  epwmInstance | [in] ePWM instance number [0 - (CSL_EPWM_PER_CNT-1)]
  group | [in] The group for this ePWM instance [0 - 3]

## ◆ SOC_selectSdfm1Clk0Source()

void SOC_selectSdfm1Clk0Source | ( | uint8_t | source | ) |

Select the SDFM1 CLK0 source.

Parameters

  source | [in] Source of SDFM1 CLK0. 0: source is SDFM1 CK0 from Pinmux. 1: source is SDFM0 CK0 from Pinmux

## ◆ SOC_sdfmClkLoopBackConfig()

void SOC_sdfmClkLoopBackConfig | ( | uint32_t | sdfmInstance,
|  | uint32_t | clkInstance,
|  | uint32_t | defaultValue
| ) |  |

Sets the configuraion for the loopback control.

Parameters

  sdfmInstance | [in] SDFM instance number [0,1]
  clkInstance | [in] SDFM Clock number [0 - 3]
  defaultValue | [in] TRUE to set the default Loopback control loopback FALSE to set alternate Loopback control

Note
  this API doesn't configure the PinMux if the loopback clock is required to be routed to the pin, the pinMux should be configured with the Output override enabled.

## ◆ SOC_gateEpwmClock()

void SOC_gateEpwmClock | ( | uint32_t | epwmInstance | ) |

Gate the ePWM clock.

Parameters

  epwmInstance | [in] ePWM instance number [0 - (CSL_EPWM_PER_CNT-1)]

## ◆ SOC_ungateEpwmClock()

void SOC_ungateEpwmClock | ( | uint32_t | epwmInstance | ) |

Ungate the ePWM clock.

Parameters

  epwmInstance | [in] ePWM instance number [0 - (CSL_EPWM_PER_CNT-1)]

## ◆ SOC_gateFsitxClock()

void SOC_gateFsitxClock | ( | uint32_t | fsitxInstance | ) |

Gate the FSI-TX clock.

Parameters

  fsitxInstance | [in] FSITX instance number [0 - 3]

## ◆ SOC_gateFsirxClock()

void SOC_gateFsirxClock | ( | uint32_t | fsirxInstance | ) |

Gate the FSI-RX clock.

Parameters

  fsirxInstance | [in] FSIRX instance number [0 - 3]

## ◆ SOC_gateCmpssaClock()

void SOC_gateCmpssaClock | ( | uint32_t | cmpssaInstance | ) |

Gate the CMPSS-A clock.

Parameters

  cmpssaInstance | [in] CMPSS-A instance number [0 - 9]

## ◆ SOC_ungateCmpssaClock()

void SOC_ungateCmpssaClock | ( | uint32_t | cmpssaInstance | ) |

Ungate the CMPSS-A clock.

Parameters

  cmpssaInstance | [in] CMPSS-A instance number [0 - 9]

## ◆ SOC_gateCmpssbClock()

void SOC_gateCmpssbClock | ( | uint32_t | cmpssbInstance | ) |

Gate the CMPSS-B clock.

Parameters

  cmpssbInstance | [in] CMPSS-B instance number [0 - 9]

## ◆ SOC_ungateCmpssbClock()

void SOC_ungateCmpssbClock | ( | uint32_t | cmpssbInstance | ) |

Ungate the CMPSS-B clock.

Parameters

  cmpssbInstance | [in] CMPSS-B instance number [0 - 9]

## ◆ SOC_gateEcapClock()

void SOC_gateEcapClock | ( | uint32_t | ecapInstance | ) |

Gate the ECAP clock.

Parameters

  ecapInstance | [in] ECAP instance number [0 - 9]

## ◆ SOC_ungateEcapClock()

void SOC_ungateEcapClock | ( | uint32_t | ecapInstance | ) |

Ungate the ECAP clock.

Parameters

  ecapInstance | [in] ECAP instance number [0 - 9]

## ◆ SOC_gateEqepClock()

void SOC_gateEqepClock | ( | uint32_t | eqepInstance | ) |

Gate the EQEP clock.

Parameters

  eqepInstance | [in] EQEP instance number [0 - 2]

## ◆ SOC_ungateEqepClock()

void SOC_ungateEqepClock | ( | uint32_t | eqepInstance | ) |

Ungate the EQEP clock.

Parameters

  eqepInstance | [in] EQEP instance number [0 - 2]

## ◆ SOC_gateSdfmClock()

void SOC_gateSdfmClock | ( | uint32_t | sdfmInstance | ) |

Gate the SDFM clock.

Parameters

  sdfmInstance | [in] SDFM instance number [0 - 1]

## ◆ SOC_ungateSdfmClock()

void SOC_ungateSdfmClock | ( | uint32_t | sdfmInstance | ) |

Ungate the SDFM clock.

Parameters

  sdfmInstance | [in] SDFM instance number [0 - 1]

## ◆ SOC_gateDacClock()

void SOC_gateDacClock | ( | void |  | ) |

Gate the DAC clock.

## ◆ SOC_ungateDacClock()

void SOC_ungateDacClock | ( | void |  | ) |

Ungate the DAC clock.

## ◆ SOC_gateAdcClock()

void SOC_gateAdcClock | ( | uint32_t | adcInstance | ) |

Gate the ADC clock.

Parameters

  adcInstance | [in] ADC instance number [0 - 4] or ADC_R instance [5 - 6]

## ◆ SOC_ungateAdcClock()

void SOC_ungateAdcClock | ( | uint32_t | adcInstance | ) |

ungate the ADC clock

Parameters

  adcInstance | [in] ADC instance number [0 - 4] or ADC_R instance [5 - 6]

## ◆ SOC_gateRdcClock()

void SOC_gateRdcClock | ( | uint32_t | rdcInstance | ) |

Gate the HW_RESOLVER clock.

Parameters

  rdcInstance | [in] HW_RESOLVER instance number [0]

## ◆ SOC_ungateRdcClock()

void SOC_ungateRdcClock | ( | uint32_t | rdcInstance | ) |

Ungate the HW_RESOLVER clock.

Parameters

  rdcInstance | [in] HW_RESOLVER instance number [0]

## ◆ SOC_gateOttoClock()

void SOC_gateOttoClock | ( | uint32_t | ottoInstance | ) |

Gate the OTTO clock.

Parameters

  ottoInstance | [in] OTTO instance number [0 - 3]

## ◆ SOC_ungateOttoClock()

void SOC_ungateOttoClock | ( | uint32_t | ottoInstance | ) |

Ungate the OTTO clock.

Parameters

  ottoInstance | [in] OTTO instance number [0 - 3]

## ◆ SOC_gateSdfmPllClock()

void SOC_gateSdfmPllClock | ( | uint32_t | sdfmInstance | ) |

Gate the SDFM PLL clock.

Parameters

  sdfmInstance | [in] SDFM instance number [0 - 1]

## ◆ SOC_ungateSdfmPllClock()

void SOC_ungateSdfmPllClock | ( | uint32_t | sdfmInstance | ) |

Ungate the SDFM PLL clock.

Parameters

  sdfmInstance | [in] SDFM instance number [0 - 1]

## ◆ SOC_gateFsiPllClock()

void SOC_gateFsiPllClock | ( | uint32_t | fsiInstance | ) |

Gate the FSI-TX PLL clock.

Parameters

  fsiInstance | [in] FSI instance number [0 - 3]

## ◆ SOC_generateEpwmReset()

void SOC_generateEpwmReset | ( | uint32_t | ePWMInstance | ) |

Generate ePWM reset.

Parameters

  ePWMInstance | [in] ePWM instance number [0 - 31]

## ◆ SOC_generateFsiTxReset()

void SOC_generateFsiTxReset | ( | uint32_t | fsitxInstance | ) |

Generate FSI-TX reset.

Parameters

  fsitxInstance | [in] FSI instance number [0 - 3]

## ◆ SOC_generateFsiRxReset()

void SOC_generateFsiRxReset | ( | uint32_t | fsirxInstance | ) |

Generate FSI-RX reset.

Parameters

  fsirxInstance | [in] FSI instance number [0 - 3]

## ◆ SOC_generateCmpssaReset()

void SOC_generateCmpssaReset | ( | uint32_t | cmpssaInstance | ) |

Generate CMPSS-A reset.

Parameters

  cmpssaInstance | [in] CMPSS-A instance number [0 - 9]

## ◆ SOC_generateCmpssbReset()

void SOC_generateCmpssbReset | ( | uint32_t | cmpssbInstance | ) |

Generate CMPSS-B reset.

Parameters

  cmpssbInstance | [in] CMPSS-B instance number [0 - 9]

## ◆ SOC_generateEcapReset()

void SOC_generateEcapReset | ( | uint32_t | ecapInstance | ) |

Generate ECAP reset.

Parameters

  ecapInstance | [in] ECAP instance number [0 - 9]

## ◆ SOC_generateEqepReset()

void SOC_generateEqepReset | ( | uint32_t | eqepInstance | ) |

Generate EQEP reset.

Parameters

  eqepInstance | [in] EQEP instance number [0 - 2]

## ◆ SOC_generateSdfmReset()

void SOC_generateSdfmReset | ( | uint32_t | sdfmInstance | ) |

Generate SDFM reset.

Parameters

  sdfmInstance | [in] SDFM instance number [0 - 1]

## ◆ SOC_generateDacReset()

void SOC_generateDacReset | ( | void |  | ) |

Generate DAC reset.

## ◆ SOC_generateAdcReset()

void SOC_generateAdcReset | ( | uint32_t | adcInstance | ) |

Generate ADC reset.

Parameters

  adcInstance | [in] ADC instance number [0 - 4]

## ◆ SOC_generateRdcReset()

void SOC_generateRdcReset | ( | uint32_t | rdcInstance | ) |

Generate RDC reset.

Parameters

  rdcInstance |

## ◆ Soc_enableEPWMHalt()

void Soc_enableEPWMHalt | ( | uint32_t | epwmInstance | ) |

Halt EPWM with corresponding cPU.

Parameters

  epwmInstance | [in] EPWM instance number [0 - 31]

## ◆ Soc_disableEPWMHalt()

void Soc_disableEPWMHalt | ( | uint32_t | epwmInstance | ) |

Halt EPWM with corresponding cPU.

Parameters

  epwmInstance | [in] EPWM instance number [0 - 31]

## ◆ Soc_enableECAPHalt()

void Soc_enableECAPHalt | ( | uint32_t | ecapInstance | ) |

Halt ECAP with corresponding cPU.

Parameters

  ecapInstance | [in] ECAP instance number [0 - 15]

## ◆ Soc_disableECAPHalt()

void Soc_disableECAPHalt | ( | uint32_t | ecapInstance | ) |

Halt ECAP with corresponding cPU.

Parameters

  ecapInstance | [in] ECAP instance number [0 - 15]

## ◆ SOC_generateOttoReset()

void SOC_generateOttoReset | ( | uint32_t | ottoInstance | ) |

Generate OTTO reset.

Parameters

  ottoInstance | [in] OTTO instance number [0 - 3]

## ◆ SOC_selectIcssGpiMux()

void SOC_selectIcssGpiMux | ( | uint8_t | pru_instance,
|  | uint32_t | mask
| ) |  |

Selection of ICSS GPI MUX.

Parameters

  pru_instance | [in] PRU instance number [0 - 1]
  mask | [in] Bitwise selection of ICSSM GPI source. GPI or PWMXBar select for ICSSM port 0/1. 0-GPI, 1-PWMXBAR

## ◆ 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_getFlashDataBaseAddr()

uint32_t SOC_getFlashDataBaseAddr | ( | void |  | ) |

This function gets the SOC mapped data base address of the flash.

Returns
  Data BaseAddress of the flash

## ◆ SOC_sendSoftwareInterrupt()

void SOC_sendSoftwareInterrupt | ( | uint16_t | coreId | ) |

Send SOC level software triggered address.

Parameters

  coreId | [in] see CSL_CoreID

## ◆ UART_IsBaseAddrValid()

static int32_t UART_IsBaseAddrValid | ( | uint32_t | baseAddr | ) |
| inlinestatic

API to validate UART base address.