PDK API Guide for J721E
csl_cpts.h File Reference

Introduction

Header file containing various enumerations, structure definitions and function declarations for the Time synchronization submodule of EMAC.



(C) Copyright 2017-2019, Texas Instruments, Inc.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

Neither the name of Texas Instruments Incorporated nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Go to the source code of this file.

Data Structures

struct  CSL_CPTS_CONTROL
 Holds the CPTS control register info. More...
 

Macros

#define CPTS_TS_OUTPUT_BIT_DISABLED   ((uint32_t) 0U)
 
#define CPTS_TS_OUTPUT_BIT_17   ((uint32_t) 1U)
 
#define CPTS_TS_OUTPUT_BIT_18   ((uint32_t) 2U)
 
#define CPTS_TS_OUTPUT_BIT_19   ((uint32_t) 3U)
 
#define CPTS_TS_OUTPUT_BIT_20   ((uint32_t) 4U)
 
#define CPTS_TS_OUTPUT_BIT_21   ((uint32_t) 5U)
 
#define CPTS_TS_OUTPUT_BIT_22   ((uint32_t) 6U)
 
#define CPTS_TS_OUTPUT_BIT_23   ((uint32_t) 7U)
 
#define CPTS_TS_OUTPUT_BIT_24   ((uint32_t) 8U)
 
#define CPTS_TS_OUTPUT_BIT_25   ((uint32_t) 9U)
 
#define CPTS_TS_OUTPUT_BIT_26   ((uint32_t) 10U)
 
#define CPTS_TS_OUTPUT_BIT_27   ((uint32_t) 11U)
 
#define CPTS_TS_OUTPUT_BIT_28   ((uint32_t) 12U)
 
#define CPTS_TS_OUTPUT_BIT_29   ((uint32_t) 13U)
 
#define CPTS_TS_OUTPUT_BIT_30   ((uint32_t) 14U)
 
#define CPTS_TS_OUTPUT_BIT_31   ((uint32_t) 15U)
 
#define CSL_CPTS_TS_PPM_DIR_INCREASE   ((uint32_t) 0U)
 
#define CSL_CPTS_TS_PPM_DIR_DECREASE   ((uint32_t) 1U)
 

Typedefs

typedef uint32_t CSL_CPTS_TS_OUTPUT_BIT
 Defines CPTS timestamp output bits. More...
 
typedef uint32_t CSL_CPTS_TS_PPM_DIR
 Defines PPM Correction Direction. More...
 

Functions

void CSL_CPTS_getCptsVersionInfo (const CSL_cptsRegs *pCptsRegs, CSL_CPTS_VERSION *pVersionInfo)
 
uint32_t CSL_CPTS_isCptsEnabled (const CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_enableCpts (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_disableCpts (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_getCntlReg (const CSL_cptsRegs *pCptsRegs, CSL_CPTS_CONTROL *pCntlCfg)
 
void CSL_CPTS_setCntlReg (CSL_cptsRegs *pCptsRegs, const CSL_CPTS_CONTROL *pCntlCfg)
 
void CSL_CPTS_getRFTCLKSelectReg (const CSL_cptsRegs *pCptsRegs, uint32_t *pRefClockSelect)
 
void CSL_CPTS_setRFTCLKSelectReg (CSL_cptsRegs *pCptsRegs, uint32_t refClockSetVal)
 
void CSL_CPTS_TSEventPush (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_getTSLoadValReg (const CSL_cptsRegs *pCptsRegs, uint32_t *pTSLoadVal)
 
void CSL_CPTS_setTSLoadValReg (CSL_cptsRegs *pCptsRegs, uint32_t tsLoadValLo, uint32_t tsLoadValHi)
 
void CSL_CPTS_setTSVal (CSL_cptsRegs *pCptsRegs, uint32_t tsValLo, uint32_t tsValHi)
 
void CSL_CPTS_setTSCompVal (CSL_cptsRegs *pCptsRegs, uint32_t tsCompValLo, uint32_t tsCompValHi, uint32_t tsCompLen)
 
void CSL_CPTS_setTSCompNudge (CSL_cptsRegs *pCptsRegs, int32_t tsCompNudge)
 
uint32_t CSL_CPTS_getTSAddVal (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_setTSAddVal (CSL_cptsRegs *pCptsRegs, uint32_t tsAddVal)
 
void CSL_CPTS_setTSNudge (CSL_cptsRegs *pCptsRegs, int32_t tsNudge)
 
void CSL_CPTS_getTSPpm (const CSL_cptsRegs *pCptsRegs, uint32_t tsPpmVal[2])
 
void CSL_CPTS_setTSPpm (CSL_cptsRegs *pCptsRegs, uint32_t tsPpmValLo, uint32_t tsPpmValHi, CSL_CPTS_TS_PPM_DIR tsPpmDir)
 
uint32_t CSL_CPTS_isRawInterruptStatusBitSet (const CSL_cptsRegs *pCptsRegs)
 
uint32_t CSL_CPTS_isMaskedInterruptStatusBitSet (const CSL_cptsRegs *pCptsRegs)
 
uint32_t CSL_CPTS_isInterruptEnabled (const CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_enableInterrupt (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_disableInterrupt (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_popEvent (CSL_cptsRegs *pCptsRegs)
 
void CSL_CPTS_getEventInfo (const CSL_cptsRegs *pCptsRegs, CSL_CPTS_EVENTINFO *pEventInfo)
 
int32_t CSL_CPTS_getGENFnLength (CSL_cptsRegs *pCptsRegs, uint32_t genfIndex, uint32_t *pGenfLength)
 
int32_t CSL_CPTS_setupGENFn (CSL_cptsRegs *pCptsRegs, uint32_t genfIndex, uint32_t length, uint64_t compare, uint32_t polarityInv, uint64_t ppmAdjust, CSL_CPTS_TS_PPM_DIR ppmDir)
 
int32_t CSL_CPTS_setGENFnNudge (CSL_cptsRegs *pCptsRegs, uint32_t genfIndex, int32_t tsNudge)
 
int32_t CSL_CPTS_getESTFnLength (CSL_cptsRegs *pCptsRegs, uint32_t estfIndex, uint32_t *pEstfLength)
 
int32_t CSL_CPTS_setupESTFn (CSL_cptsRegs *pCptsRegs, uint32_t estfIndex, uint32_t length, uint64_t compare, uint32_t polarityInv, uint64_t ppmAdjust, CSL_CPTS_TS_PPM_DIR ppmDir)
 
int32_t CSL_CPTS_setESTFnNudge (CSL_cptsRegs *pCptsRegs, uint32_t estfIndex, int32_t tsNudge)