AM64x MCU+ SDK  08.02.00
cpsw_cpts.h File Reference

Introduction

This file contains private type definitions and helper macros for the CPSW CPTS module.

Go to the source code of this file.

Data Structures

struct  CpswCpts_Event
 CPTS event. More...
 
struct  CpswCpts_RegisterStackInArgs
 Input args for CPSW_CPTS_IOCTL_REGISTER_STACK command. More...
 
struct  CpswCpts_RegisterHwPushCbInArgs
 Input args for CPSW_CPTS_IOCTL_REGISTER_HWPUSH_CALLBACK command. More...
 
struct  CpswCpts_SetCompValInArgs
 Input args for CPSW_CPTS_IOCTL_SET_COMP command. More...
 
struct  CpswCpts_SetFxnGenInArgs
 Input args for CPSW_CPTS_IOCTL_SET_GENF and CPSW_CPTS_IOCTL_SET_ESTF commands. More...
 
struct  CpswCpts_SetFxnGenNudgeInArgs
 Input args for CPSW_CPTS_IOCTL_SET_GENF_NUDGE and CPSW_CPTS_IOCTL_SET_ESTF_NUDGE commands. More...
 
struct  CpswCpts_Cfg
 CPTS configuration. More...
 

Macros

#define CPSW_CPTS_PUBLIC_IOCTL(x)
 Helper macro to create IOCTL commands for CPSW CPTS module. More...
 
#define CPSW_CPTS_NUDGE_MIN_VAL   (-128)
 Minimum nudge value. More...
 
#define CPSW_CPTS_NUDGE_MAX_VAL   (127)
 Maximum nudge value. More...
 
#define CPSW_CPTS_HWPUSH_COUNT_MAX   ((uint32_t)CPSW_CPTS_HWPUSH_LAST)
 Max number of hardware push instances. More...
 
#define CPSW_CPTS_HWPUSH_NORM(x)   ((uint32_t)((x) - CPSW_CPTS_HWPUSH_FIRST))
 Helper macro to normalize CpswCpts_HwPush values. More...
 

Typedefs

typedef void(* CpswCpts_EventNotifyCb) (void *eventNotifyCbArg, CpswCpts_Event *eventInfo)
 CPTS event notify callback. More...
 
typedef void(* CpswCpts_HwPushNotifyCb) (void *hwPushNotifyCbArg, CpswCpts_HwPush hwPushNum)
 CPTS hardware push notify callback/. More...
 

Enumerations

enum  CpswCpts_Ioctl {
  CPSW_CPTS_IOCTL_REGISTER_STACK = CPSW_CPTS_PUBLIC_IOCTL(0U), CPSW_CPTS_IOCTL_UNREGISTER_STACK = CPSW_CPTS_PUBLIC_IOCTL(1U), CPSW_CPTS_IOCTL_REGISTER_HWPUSH_CALLBACK = CPSW_CPTS_PUBLIC_IOCTL(2U), CPSW_CPTS_IOCTL_UNREGISTER_HWPUSH_CALLBACK = CPSW_CPTS_PUBLIC_IOCTL(3U),
  CPSW_CPTS_IOCTL_SET_TS_NUDGE = CPSW_CPTS_PUBLIC_IOCTL(4U), CPSW_CPTS_IOCTL_SET_COMP = CPSW_CPTS_PUBLIC_IOCTL(5U), CPSW_CPTS_IOCTL_SET_COMP_NUDGE = CPSW_CPTS_PUBLIC_IOCTL(6U), CPSW_CPTS_IOCTL_SET_GENF = CPSW_CPTS_PUBLIC_IOCTL(7U),
  CPSW_CPTS_IOCTL_SET_GENF_NUDGE = CPSW_CPTS_PUBLIC_IOCTL(8U), CPSW_CPTS_IOCTL_SET_ESTF = CPSW_CPTS_PUBLIC_IOCTL(9U), CPSW_CPTS_IOCTL_SET_ESTF_NUDGE = CPSW_CPTS_PUBLIC_IOCTL(10U), CPSW_CPTS_IOCTL_SELECT_TS_OUTPUT_BIT = CPSW_CPTS_PUBLIC_IOCTL(11U),
  CPSW_CPTS_IOCTL_LOOKUP_EVENT = CPSW_CPTS_PUBLIC_IOCTL(12U)
}
 CPSW CPTS IOCTL commands. More...
 
enum  CpswCpts_RftClkFreq {
  CPSW_CPTS_RFTCLK_FREQ_1000MHZ = 0U, CPSW_CPTS_RFTCLK_FREQ_500MHZ = 1U, CPSW_CPTS_RFTCLK_FREQ_333_33MHZ = 2U, CPSW_CPTS_RFTCLK_FREQ_250MHZ = 3U,
  CPSW_CPTS_RFTCLK_FREQ_200MHZ = 4U, CPSW_CPTS_RFTCLK_FREQ_166_66MHZ = 5U, CPSW_CPTS_RFTCLK_FREQ_142_85MHZ = 6U, CPSW_CPTS_RFTCLK_FREQ_125MHZ = 7U
}
 CPTS clock frequency add value. More...
 
enum  CpswCpts_EventType {
  CPSW_CPTS_EVENTTYPE_TS_PUSH = 0U, CPSW_CPTS_EVENTTYPE_TS_ROLLOVER, CPSW_CPTS_EVENTTYPE_TS_HALFROLLOVER, CPSW_CPTS_EVENTTYPE_HW_TS_PUSH,
  CPSW_CPTS_EVENTTYPE_ETH_RECEIVE, CPSW_CPTS_EVENTTYPE_ETH_TRANSMIT, CPSW_CPTS_EVENTTYPE_TS_COMP, CPSW_CPTS_EVENTTYPE_TS_HOST_TX,
  CPSW_CPTS_EVENTTYPE_INVALID = -1
}
 CPTS event type. More...
 
enum  CpswCpts_OutputBitSel {
  CPSW_CPTS_TS_OUTPUT_BIT_DISABLED = 0U, CPSW_CPTS_TS_OUTPUT_BIT_17, CPSW_CPTS_TS_OUTPUT_BIT_18, CPSW_CPTS_TS_OUTPUT_BIT_19,
  CPSW_CPTS_TS_OUTPUT_BIT_20, CPSW_CPTS_TS_OUTPUT_BIT_21, CPSW_CPTS_TS_OUTPUT_BIT_22, CPSW_CPTS_TS_OUTPUT_BIT_23,
  CPSW_CPTS_TS_OUTPUT_BIT_24, CPSW_CPTS_TS_OUTPUT_BIT_25, CPSW_CPTS_TS_OUTPUT_BIT_26, CPSW_CPTS_TS_OUTPUT_BIT_27,
  CPSW_CPTS_TS_OUTPUT_BIT_28, CPSW_CPTS_TS_OUTPUT_BIT_29, CPSW_CPTS_TS_OUTPUT_BIT_30, CPSW_CPTS_TS_OUTPUT_BIT_31
}
 CPTS time stamp output bit. More...
 
enum  CpswCpts_HwPush {
  CPSW_CPTS_HWPUSH_FIRST = 1U, CPSW_CPTS_HWPUSH_1 = CPSW_CPTS_HWPUSH_FIRST, CPSW_CPTS_HWPUSH_2, CPSW_CPTS_HWPUSH_3,
  CPSW_CPTS_HWPUSH_4, CPSW_CPTS_HWPUSH_5, CPSW_CPTS_HWPUSH_6, CPSW_CPTS_HWPUSH_7,
  CPSW_CPTS_HWPUSH_8, CPSW_CPTS_HWPUSH_LAST = CPSW_CPTS_HWPUSH_8, CPSW_CPTS_HWPUSH_INVALID = -1
}
 CPTS Hardware push instances. More...
 

Functions

void CpswCpts_initCfg (CpswCpts_Cfg *cptsCfg)
 Initialize CPSW CPTS configuration parameters. More...