![Logo](ti_logo.svg) |
AM243x MCU+ SDK
08.00.00
|
|
Go to the documentation of this file.
32 #ifndef ICSS_EIP_DRIVER_H_
33 #define ICSS_EIP_DRIVER_H_
64 #include <networking/icss_timesync/icss_timeSyncApi.h>
70 #define IEP_CMP_DEFAULT_VAL 0x11
71 #define IEP_CMP4_DEFAULT_VAL 0x5000
72 #define IEP_CMP0_DEFAULT_VAL 0xffffffff
75 #define PRU_IEP_CMP_CFG_REG 0x40
77 #define PRU_IEP_CMP0_REG 0x48
80 #define EIP_TICK_PERIOD 1
81 #define LOOPBK_PKT_SEND_PERIOD 1000
83 #define DEFAULT_BC_PKT_SIZE 60
85 #define ONE_SECOND_INTERVAL 1000
86 #define TWO_MINUTE_INTERVAL 120000
89 #define CRS_STATUS_MASK 0x2
91 #define CRS_STATUS_SHIFT 0x1
94 #define PTP_PROT_TYPE 0x88F7
95 #define DLR_MDIO_PHY0 1
96 #define DLR_MDIO_PHY1 2
99 #define PHYBMSR_OFFSET 0x1
100 #define PHYSTS_OFFSET 0x10
102 #define PHY_LINK_STATUS_MASK 0x4
103 #define PHY_LINK_STATUS_SHIFT 0x2
131 uint8_t clockIdentity[8];
175 uint8_t portProfileIdentity[8];
185 uint8_t physicalProtocol[16];
187 uint8_t portPhysicalAddress[16];
199 uint8_t portProtocolAddress[16];
263 uint8_t manufacturerIdentity[4];
290 typedef struct eip_Config_s
uint16_t currentUTCOffset
Definition: icss_eip_driver.h:143
uint16_t networkProtocol
Definition: icss_eip_driver.h:197
TimeSync_ParamsHandle_t timeSyncHandle
Definition: icss_eip_driver.h:293
struct ICSS_EMAC_Config_s * ICSS_EMAC_Handle
Alias for ICSS EMAC Handle containing base addresses and modules.
Definition: icss_emac.h:366
struct eip_Config_s * EIP_Handle
Definition: icss_eip_driver.h:105
uint16_t portNumber
Definition: icss_eip_driver.h:196
clockClass_t parentClkInfo
Definition: icss_eip_driver.h:235
sysTimeOffset_t timeOffset
Definition: icss_eip_driver.h:282
void EIP_drvInit(EIP_Handle icssEipHandle)
Initialization routine for Ethernet/IP driver functions.
struct dlr_Config_s * EIP_DLRHandle
Definition: icss_dlr.h:202
CIP Sync configuration. Instance Attribute for PTP Class (Class Code 0x43. CIP Spec Vol 1)
Definition: icss_eip_driver.h:217
uint16_t numberOfPorts
Definition: icss_eip_driver.h:239
uint64_t systemOffset
Definition: icss_eip_driver.h:209
uint8_t domainNumber
Definition: icss_eip_driver.h:259
Specifies the physical protocol and physical address (e.g. IEEE 802.3) of each port of the device (e....
Definition: icss_eip_driver.h:184
int8_t EIP_initializeCIPSync(EIP_Handle icssEipHandle)
API to initialize the CIP Sync objects in the EIP handle Initialize CIP Sync member variables based o...
clockType
Type of clock supported by PTP Implementation. This is not specified by standard.
Definition: icss_eip_driver.h:111
uint32_t size
Definition: icss_eip_driver.h:165
Definition: icss_eip_driver.h:291
uint16_t observedOffsetScaledLogVariance
Definition: icss_eip_driver.h:151
@ TRANSPARENT_CLOCK
Definition: icss_eip_driver.h:115
void EIP_drvStart(EIP_Handle icssEipHandle)
EIP driver start API.
uint16_t sizeOfAddress
Definition: icss_eip_driver.h:186
int64_t meanPathDelayToMaster
Definition: icss_eip_driver.h:231
void EIP_drvStop(EIP_Handle icssEipHandle)
EIP driver stop API.
uint16_t timeAccuracy
Definition: icss_eip_driver.h:135
uint16_t offsetScaledLogVariance
Definition: icss_eip_driver.h:138
descr_t revData
Definition: icss_eip_driver.h:267
clockClass_t localClkInfo
Definition: icss_eip_driver.h:237
uint16_t timeSource
Definition: icss_eip_driver.h:147
#define ICSS_EMAC_MAXMTU
Maximum Valid size (incl header + VLAN TAG..., no CRC)
Definition: icss_emac.h:176
uint16_t timePropertyFlags
Definition: icss_eip_driver.h:145
uint8_t IsSynchronized
Definition: icss_eip_driver.h:221
void EIP_processProtocolFrames(uint32_t *queue_number, void *userArg)
API to process the real time Packets.
uint64_t systemTimeMicrosec
Definition: icss_eip_driver.h:223
clockClass_t grandMasterClkInfo
Definition: icss_eip_driver.h:233
ICSS_EMAC_Handle emacHandle
Definition: icss_eip_driver.h:292
uint64_t systemTimeNanosec
Definition: icss_eip_driver.h:225
uint64_t maxOffsetFromMaster
Definition: icss_eip_driver.h:229
uint8_t priority2
Definition: icss_eip_driver.h:256
Specifies the properties of a clock.
Definition: icss_eip_driver.h:129
EIP_DLRHandle dlrHandle
Definition: icss_eip_driver.h:297
uint8_t ifPTPEnable
Definition: icss_eip_driver.h:219
@ ORDINARY_CLOCK
Definition: icss_eip_driver.h:113
Specifies the system time in microseconds and the Offset to the local clock value.
Definition: icss_eip_driver.h:207
clockType clockType
Definition: icss_eip_driver.h:261
uint64_t systemTime
Definition: icss_eip_driver.h:208
uint16_t clockClass
Definition: icss_eip_driver.h:133
cipSyncConfig_t cipSyncObj
Definition: icss_eip_driver.h:294
Description in unicode.
Definition: icss_eip_driver.h:163
@ BOUNDARY_CLOCK
Definition: icss_eip_driver.h:117
uint16_t observedPhaseChangeRate
Definition: icss_eip_driver.h:155
descr_t userDesc
Definition: icss_eip_driver.h:269
uint16_t addressSize
Definition: icss_eip_driver.h:198
uint8_t priority1
Definition: icss_eip_driver.h:254
descr_t productType
Definition: icss_eip_driver.h:265
Specifies the specifies the network and protocol address of each port of the device (e....
Definition: icss_eip_driver.h:195
Specifies the PTP profile of each port of the device.
Definition: icss_eip_driver.h:174
uint16_t stepsRemoved
Definition: icss_eip_driver.h:280
int64_t offsetFromMaster
Definition: icss_eip_driver.h:227
#define ICSS_EMAC_MAX_PORTS_PER_INSTANCE
Maximum number of Ports in a single ICSS
Definition: icss_emac.h:66