Data Structures | Macros | Typedefs | Enumerations
enet_mod_timesync.h File Reference

This file contains the type definitions and helper macros for the Enet Time Synchronization module interface. More...

#include <stdint.h>
#include <ti/drv/enet/include/core/enet_types.h>
#include <ti/drv/enet/include/core/enet_mod.h>

Data Structures

struct  EnetTimeSync_TimestampAdj_s
 Timestamp adjustment. More...
 
struct  EnetTimeSync_GetEthTimestampInArgs_s
 Input args for ENET_TIMESYNC_IOCTL_GET_ETH_RX_TIMESTAMP and ENET_TIMESYNC_IOCTL_GET_ETH_TX_TIMESTAMP commands. More...
 

Macros

#define ENET_TIMESYNC_PUBLIC_IOCTL(x)   (ENET_IOCTL_TIMESYNC_BASE | ENET_IOCTL_MIN(x))
 Helper macro to create IOCTL commands for TIMESYNC module.
 

Typedefs

typedef enum EnetTimeSync_Ioctl_e EnetTimeSync_Ioctl
 TimeSync module IOCTL commands.
 
typedef enum EnetTimeSync_MsgType_e EnetTimeSync_MsgType
 TimeSync Ethernet message type.
 
typedef enum EnetTimeSync_AdjMode_e EnetTimeSync_AdjMode
 TimeSync adjustment mode.
 
typedef enum EnetTimeSync_AdjDir_e EnetTimeSync_AdjDir
 TimeSync adjustment direction.
 
typedef struct
EnetTimeSync_TimestampAdj_s 
EnetTimeSync_TimestampAdj
 Timestamp adjustment.
 
typedef struct
EnetTimeSync_GetEthTimestampInArgs_s 
EnetTimeSync_GetEthTimestampInArgs
 Input args for ENET_TIMESYNC_IOCTL_GET_ETH_RX_TIMESTAMP and ENET_TIMESYNC_IOCTL_GET_ETH_TX_TIMESTAMP commands.
 

Enumerations

enum  EnetTimeSync_Ioctl_e {
  ENET_TIMESYNC_IOCTL_GET_VERSION = ENET_TIMESYNC_PUBLIC_IOCTL(0U), ENET_TIMESYNC_IOCTL_PRINT_REGS = ENET_TIMESYNC_PUBLIC_IOCTL(1U), ENET_TIMESYNC_IOCTL_PRINT_STATS = ENET_TIMESYNC_PUBLIC_IOCTL(2U), ENET_TIMESYNC_IOCTL_GET_CURRENT_TIMESTAMP = ENET_TIMESYNC_PUBLIC_IOCTL(3U),
  ENET_TIMESYNC_IOCTL_SET_TIMESTAMP = ENET_TIMESYNC_PUBLIC_IOCTL(4U), ENET_TIMESYNC_IOCTL_SET_ADJUST_TIMESTAMP = ENET_TIMESYNC_PUBLIC_IOCTL(5U), ENET_TIMESYNC_IOCTL_GET_ETH_RX_TIMESTAMP = ENET_TIMESYNC_PUBLIC_IOCTL(6U), ENET_TIMESYNC_IOCTL_GET_ETH_TX_TIMESTAMP = ENET_TIMESYNC_PUBLIC_IOCTL(7U),
  ENET_TIMESYNC_IOCTL_RESET = ENET_TIMESYNC_PUBLIC_IOCTL(8U)
}
 TimeSync module IOCTL commands. More...
 
enum  EnetTimeSync_MsgType_e {
  ENET_TIMESYNC_MESSAGE_SYNC = 0x00U, ENET_TIMESYNC_MESSAGE_DELAY_REQ = 0x01U, ENET_TIMESYNC_MESSAGE_PDELAY_REQ = 0x02U, ENET_TIMESYNC_MESSAGE_PDELAY_RESP = 0x03U,
  ENET_TIMESYNC_MESSAGE_FOLLOW_UP = 0x08U, ENET_TIMESYNC_MESSAGE_DELAY_RESP = 0x09U, ENET_TIMESYNC_MESSAGE_PDELAY_RESP_FOLLOW_UP = 0x0AU, ENET_TIMESYNC_MESSAGE_ANNOUNCE = 0x0BU,
  ENET_TIMESYNC_MESSAGE_SIGNALING = 0x0CU, ENET_TIMESYNC_MESSAGE_MANAGEMENT = 0x0DU, ENET_TIMESYNC_MESSAGE_INVALID = -1
}
 TimeSync Ethernet message type. More...
 
enum  EnetTimeSync_AdjMode_e { ENET_TIMESYNC_ADJMODE_DISABLE = 0U, ENET_TIMESYNC_ADJMODE_PPM, ENET_TIMESYNC_ADJMODE_PPH }
 TimeSync adjustment mode. More...
 
enum  EnetTimeSync_AdjDir_e { ENET_TIMESYNC_ADJDIR_INCREASE = 0U, ENET_TIMESYNC_ADJDIR_DECREASE }
 TimeSync adjustment direction. More...
 

Detailed Description

This file contains the type definitions and helper macros for the Enet Time Synchronization module interface.


Copyright 2020, Texas Instruments Incorporated