AM64x MCU+ SDK  09.02.01
gptpbasetypes.h File Reference

Introduction

File contains base datatypes used, as per IEEE 802.1AS Standard Documentation.

Go to the source code of this file.

Data Structures

struct  PortIdentity
 The portIdentity identifies a port of a time-aware system. More...
 
struct  ClockQuality
 The clock quality represents quality of clock. More...
 
struct  UInteger48
 48bit variable, lsb is 32 bits More...
 
struct  UInteger48m32
 48bit variable, msb is 32 bits More...
 
struct  UInteger112
 UInteger112 (802.1AS, 10.3.2 systemIdentity) More...
 
struct  UInteger224
 UInteger224 (802.1AS, 10.3.4 time-synchronization spanning tree priority vectors ) More...
 
struct  ScaledNs
 The ScaledNs type represents signed values of time and time interval in units of 2e-16 ns. More...
 
struct  UScaledNs
 The ScaledNs type represents unsigned values of time and time interval in units of 2^-16 ns. More...
 
struct  TimeInterval
 
struct  Timestamp
 The Timestamp type represents a positive time with respect to the epoch. More...
 
struct  ExtendedTimestamp
 The ExtendTimestamp type represents a positive time with respect to the epoch. The fractionalNanoseconds member is the fractional portion of the timestamp in units of 2^16 ns. More...
 

Macros

#define MAX_PATH_TRACE_N   179
 Macro to define maximum path trace. More...
 
#define CLOCK_IDENTITY_LENGTH   8
 Macro which defines Clock Identity Length. More...
 
#define SCALEDNS_FACTOR   0x10000
 
#define VALUE_DISABLED   0u
 
#define VALUE_ENABLED   1u
 

Typedefs

typedef uint8_t ClockIdentity[CLOCK_IDENTITY_LENGTH]
 
typedef uint8_t Nibble
 Primitive data types specifications for IEEE 802.1AS. All non-primitive data types are derived from the primitive types, signed integers are represented as two's complement form. More...
 
typedef uint8_t Octet
 
typedef uint8_t Octet2[2]
 
typedef uint8_t Octet3[3]
 
typedef uint8_t Octet4[4]
 
typedef uint8_t Enumeration2
 
typedef uint8_t Enumeration4
 
typedef uint8_t Enumeration8
 
typedef uint16_t Enumeration16
 
typedef uint32_t Enumeration24
 
typedef uint8_t UInteger4
 

Enumerations

enum  TimeSource {
  ATOMIC_CLOCK = 0x10, GPS = 0x20, TERRESTRIAL_RADIO = 0x30, PTP = 0x40,
  NTP = 0x50, HAND_SET = 0x60, OTHER = 0x90, INTERNAL_OSCILLATOR = 0xA0
}
 the type of source of time used by a ClockMaster(802.1AS, 8.6.2.7 timeSource) More...
 
enum  PTPPortState { DisabledPort = 3, MasterPort = 6, PassivePort = 7, SlavePort = 9 }
 value of the port state (802.1AS 14.8.3 portState) More...
 
enum  gmsync_status_t { GMSYNC_UNSYNC =0, GMSYNC_SYNC, GMSYNC_SYNC_STABLE }
 

Functions

struct UInteger112 __attribute__ ((packed, aligned(1))) UInteger112
 UInteger112 (802.1AS, 10.3.2 systemIdentity) More...
 

Variables

uint8_t priority1
 
uint8_t clockClass
 
uint8_t clockAccuracy
 
uint16_t offsetScaledLogVariance
 
uint8_t priority2
 
ClockIdentity clockIdentity
 
UInteger112 rootSystemIdentity
 
uint16_t stepsRemoved
 
PortIdentity sourcePortIdentity
 
uint16_t portNumber
 

Variable Documentation

◆ priority1

uint8_t priority1

◆ clockClass

uint8_t clockClass

◆ clockAccuracy

uint8_t clockAccuracy

◆ offsetScaledLogVariance

uint16_t offsetScaledLogVariance

◆ priority2

uint8_t priority2

◆ clockIdentity

ClockIdentity clockIdentity

◆ rootSystemIdentity

UInteger112 rootSystemIdentity

◆ stepsRemoved

uint16_t stepsRemoved

◆ sourcePortIdentity

PortIdentity sourcePortIdentity

◆ portNumber

uint16_t portNumber