iLLD_TC27xD  1.0
IfxScuCcu.c File Reference

SCU basic functionality. More...

#include "IfxScuCcu.h"

Go to the source code of this file.

Functions

boolean IfxScuCcu_calculateSysPllDividers (IfxScuCcu_Config *cfg, uint32 fPll)
 The api calculates the system PLL divider values P, N, K based on given xtal frequency and PLL frequency. More...
 
float32 IfxScuCcu_getBaud1Frequency (void)
 API to get BAUD1 divider frequency. This API returns the based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getBaud2Frequency (void)
 API to get BAUD2 divider frequency. This API returns the Baud2 frequency based on the divider value in CCUCON register and the fMAX. More...
 
float32 IfxScuCcu_getBbbFrequency (void)
 API to get BBB divider frequency. This API returns the BBBDivider frequency based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getCpuFrequency (const IfxCpu_ResourceCpu cpu)
 This API returns the Cpu frequency based on the divider value in CCUCON register and fSource frequency. More...
 
float32 IfxScuCcu_getFsi2Frequency (void)
 API to get FSI2 divider frequency in Hz. This API returns the fFSI2 frequency based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getFsiFrequency (void)
 API to get FSI divider frequency in Hz. This API returns the fFSI based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getMaxFrequency (void)
 API to get FMAX divider frequency. This API returns the fMax frequency based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getModuleFrequency (void)
 get source frequency fSOURCE. This API returns the source frequency based on the configurations with CCUCON register configuration. More...
 
float32 IfxScuCcu_getOsc0Frequency (void)
 API to get Oscillator 0 frequency. This API returns the fOsc0 frequency based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getOscFrequency (void)
 API to get Oscillator 0 frequency. This API returns the fOsc0 frequency based on the divider value in CCUCON register and the input oscillator. More...
 
float32 IfxScuCcu_getPllErayFrequency (void)
 API to get actual PLL (Eray) frequency. This API returns the based on the divider values in CCUCON, PLLCON registers and the input oscillator. More...
 
float32 IfxScuCcu_getPllErayVcoFrequency (void)
 API to get actual ERAY PLL Voltage Controlled Oscillator frequency. This API returns the based on the divider values in PLLERAYCON registers and the input oscillator. More...
 
float32 IfxScuCcu_getPllFrequency (void)
 API to get actual PLL output frequency. This API returns the based on the divider values in CCUCON, PLLCON registers and the input oscillator. More...
 
float32 IfxScuCcu_getPllVcoFrequency (void)
 API to get actual PLL Voltage Controlled Oscillator frequency. This API returns the based on the divider values in PLLCON registers and the input oscillator. More...
 
float32 IfxScuCcu_getSourceFrequency (void)
 get source frequency fSOURCE. This API returns the source frequency based on the configurations with CCUCON register configuration. More...
 
float32 IfxScuCcu_getSpbFrequency (void)
 API to get SPB divider frequency. This API returns the based on fSOURCE and also on Low power divider mode and/or SPBDIV divider value in CCUCON registers. More...
 
float32 IfxScuCcu_getSriFrequency (void)
 API to get SRI divider frequency. This API returns the Sri frequency based on the divider values in CCUCON registers and fSOURCE. More...
 
boolean IfxScuCcu_init (const IfxScuCcu_Config *cfg)
 API to initialize the SCU Clock Control Unit. This API initialize the PLL with ramp steps, BUS dividers for the configuration provided by the configuration structure. More...
 
void IfxScuCcu_initConfig (IfxScuCcu_Config *cfg)
 Initializes the clock configuration with default values. More...
 
boolean IfxScuCcu_initErayPll (const IfxScuCcu_ErayPllConfig *cfg)
 API to initialize the SCU Eray Pll This API initialize the Eray PLL for the configuration provided by the configuration structure. More...
 
void IfxScuCcu_initErayPllConfig (IfxScuCcu_ErayPllConfig *cfg)
 Initializes the clock configuration with default values. More...
 
float32 IfxScuCcu_setCpuFrequency (IfxCpu_ResourceCpu cpu, float32 cpuFreq)
 API to set CPU frequency (with CPU divider) This API configure CPU divider values in CCUCON registers. The actual frequency is always depends on the feasibility with the divider value. More...
 
float32 IfxScuCcu_setGtmFrequency (float32 gtmFreq)
 API to set GTM frequency (with GTM divider) This API configure GTM divider values in CCUCON registers. The actual frequency always depends on the feasibility with the divider value. More...
 
float32 IfxScuCcu_setPll2ErayFrequency (float32 pll2ErayFreq)
 API to configure PLL2ERAY (K3 Divider for ADC clock) for desired frequency. This API configure K3 divider value in CCUCON. The actual frequency always depends on the feasibility with the divider value. More...
 
float32 IfxScuCcu_setPll2Frequency (float32 pll2Freq)
 API to configure PLL2 (K3 Divider for ADC clock) for desired frequency. This API configure K3 divider value in CCUCON. The actual frequency always depends on the feasibility with the divider value. More...
 
float32 IfxScuCcu_setSpbFrequency (float32 spbFreq)
 API to set SPB frequency (with SPB divider) This API configure SPB divider values in CCUCON registers. The actual frequency always depends on the feasibility with the divider value. More...
 
float32 IfxScuCcu_setSriFrequency (float32 sriFreq)
 API to set SRI frequency (with SRI divider) This API configure Sri divider values in CCUCON registers. The actual frequency always depends on the feasibility with the divider value. More...
 
void IfxScuCcu_switchToBackupClock (const IfxScuCcu_Config *cfg)
 API to switch to Backup clock from the current PLL frequency. More...
 

Variables

const IfxScuCcu_Config IfxScuCcu_defaultClockConfig
 
const IfxScuCcu_ErayPllConfig IfxScuCcu_defaultErayPllConfig
 

Detailed Description

SCU basic functionality.

Version
iLLD_1_0_0_11_0
                            IMPORTANT NOTICE

Infineon Technologies AG (Infineon) is supplying this file for use exclusively with Infineon's microcontroller products. This file can be freely distributed within development tools that are supporting such microcontroller products.

THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.

Definition in file IfxScuCcu.c.

Function Documentation

float32 IfxScuCcu_setGtmFrequency ( float32  gtmFreq)

API to set GTM frequency (with GTM divider) This API configure GTM divider values in CCUCON registers. The actual frequency always depends on the feasibility with the divider value.

Parameters
gtmFreqDesired GTM frequency in Hz
Returns
Actual GTM frequency in HZ

Definition at line 1104 of file IfxScuCcu.c.

Variable Documentation

const IfxScuCcu_Config IfxScuCcu_defaultClockConfig
Initial value:
= {
{
sizeof(IfxScuCcu_aDefaultPllConfigSteps) / sizeof(IfxScuCcu_PllStepsConfig),
(IfxScuCcu_PllStepsConfig *)IfxScuCcu_aDefaultPllConfigSteps,
},
}

Definition at line 73 of file IfxScuCcu.c.

Referenced by IfxScuCcu_initConfig().

const IfxScuCcu_ErayPllConfig IfxScuCcu_defaultErayPllConfig
Initial value:
= {
{(1 - 1), (24 - 1), (6 - 1), 0}
}

Definition at line 84 of file IfxScuCcu.c.

Referenced by IfxScuCcu_initErayPllConfig().