 |
AM263Px INDUSTRIAL COMMUNICATIONS SDK
10.02.00
|
|
Go to the documentation of this file.
32 #ifndef ICSS_EIP_DRIVER_H_
33 #define ICSS_EIP_DRIVER_H_
81 #define IEP_CMP_DEFAULT_VAL 0x11
82 #define IEP_CMP4_DEFAULT_VAL 0x5000
83 #define IEP_CMP0_DEFAULT_VAL 0xffffffff
86 #define PRU_IEP_CMP_CFG_REG 0x40
88 #define PRU_IEP_CMP0_REG 0x48
91 #define EIP_TICK_PERIOD 1
92 #define LOOPBK_PKT_SEND_PERIOD 1000
94 #define DEFAULT_BC_PKT_SIZE 60
96 #define ONE_SECOND_INTERVAL 1000
97 #define TWO_MINUTE_INTERVAL 120000
100 #define CRS_STATUS_MASK 0x2
102 #define CRS_STATUS_SHIFT 0x1
105 #define PTP_PROT_TYPE 0x88F7
106 #define DLR_MDIO_PHY0 1
107 #define DLR_MDIO_PHY1 2
110 #define PHYBMSR_OFFSET 0x1
111 #define PHYSTS_OFFSET 0x10
113 #define PHY_LINK_STATUS_MASK 0x4
114 #define PHY_LINK_STATUS_SHIFT 0x2
118 #define LLDP_FORWARDING_ENABLED_OFFSET (0x2018U)
146 uint8_t clockIdentity[8];
190 uint8_t portProfileIdentity[8];
200 uint8_t physicalProtocol[16];
202 uint8_t portPhysicalAddress[16];
214 uint8_t portProtocolAddress[16];
278 uint8_t manufacturerIdentity[4];
305 typedef struct eip_Config_s
clockType
Type of clock supported by PTP Implementation. This is not specified by standard.
Definition: icss_eip_driver.h:126
uint16_t currentUTCOffset
Definition: icss_eip_driver.h:158
uint16_t networkProtocol
Definition: icss_eip_driver.h:212
TimeSync_ParamsHandle_t timeSyncHandle
Definition: icss_eip_driver.h:309
struct ICSS_EMAC_Config_s * ICSS_EMAC_Handle
Alias for ICSS EMAC Handle containing base addresses and modules.
Definition: icss_emac.h:467
uint16_t portNumber
Definition: icss_eip_driver.h:211
port_State
Port States, from IEEE 1588v2.
Definition: icss_timeSyncApi.h:142
clockClass_t parentClkInfo
Definition: icss_eip_driver.h:250
sysTimeOffset_t timeOffset
Definition: icss_eip_driver.h:297
void EIP_drvInit(EIP_Handle icssEipHandle)
Initialization routine for Ethernet/IP driver functions.
struct dlr_Config_s * EIP_DLRHandle
Definition: icss_dlr.h:208
PRUICSS_Handle pruicssHandle
Definition: icss_eip_driver.h:307
struct eip_Config_s * EIP_Handle
Definition: icss_eip_driver.h:120
CIP Sync configuration. Instance Attribute for PTP Class (Class Code 0x43. CIP Spec Vol 1)
Definition: icss_eip_driver.h:232
uint16_t numberOfPorts
Definition: icss_eip_driver.h:254
uint64_t systemOffset
Definition: icss_eip_driver.h:224
uint8_t domainNumber
Definition: icss_eip_driver.h:274
Specifies the physical protocol and physical address (e.g. IEEE 802.3) of each port of the device (e....
Definition: icss_eip_driver.h:199
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...
uint32_t size
Definition: icss_eip_driver.h:180
Definition: icss_eip_driver.h:306
uint16_t observedOffsetScaledLogVariance
Definition: icss_eip_driver.h:166
void EIP_drvStart(EIP_Handle icssEipHandle)
EIP driver start API.
uint16_t sizeOfAddress
Definition: icss_eip_driver.h:201
int64_t meanPathDelayToMaster
Definition: icss_eip_driver.h:246
void EIP_drvStop(EIP_Handle icssEipHandle)
EIP driver stop API.
uint16_t timeAccuracy
Definition: icss_eip_driver.h:150
uint16_t offsetScaledLogVariance
Definition: icss_eip_driver.h:153
descr_t revData
Definition: icss_eip_driver.h:282
clockClass_t localClkInfo
Definition: icss_eip_driver.h:252
uint16_t timeSource
Definition: icss_eip_driver.h:162
#define ICSS_EMAC_MAXMTU
Maximum Valid size (incl header + VLAN TAG..., no CRC)
Definition: icss_emac.h:261
uint16_t timePropertyFlags
Definition: icss_eip_driver.h:160
@ BOUNDARY_CLOCK
Definition: icss_eip_driver.h:132
uint8_t IsSynchronized
Definition: icss_eip_driver.h:236
void EIP_processProtocolFrames(uint32_t *queue_number, void *userArg)
API to process the real time Packets.
uint64_t systemTimeMicrosec
Definition: icss_eip_driver.h:238
clockClass_t grandMasterClkInfo
Definition: icss_eip_driver.h:248
@ TRANSPARENT_CLOCK
Definition: icss_eip_driver.h:130
ICSS_EMAC_Handle emacHandle
Definition: icss_eip_driver.h:308
uint64_t systemTimeNanosec
Definition: icss_eip_driver.h:240
uint64_t maxOffsetFromMaster
Definition: icss_eip_driver.h:244
uint8_t priority2
Definition: icss_eip_driver.h:271
Specifies the properties of a clock.
Definition: icss_eip_driver.h:144
EIP_DLRHandle dlrHandle
Definition: icss_eip_driver.h:313
uint8_t ifPTPEnable
Definition: icss_eip_driver.h:234
Specifies the system time in microseconds and the Offset to the local clock value.
Definition: icss_eip_driver.h:222
clockType clockType
Definition: icss_eip_driver.h:276
uint64_t systemTime
Definition: icss_eip_driver.h:223
uint16_t clockClass
Definition: icss_eip_driver.h:148
cipSyncConfig_t cipSyncObj
Definition: icss_eip_driver.h:310
Description in unicode.
Definition: icss_eip_driver.h:178
uint16_t observedPhaseChangeRate
Definition: icss_eip_driver.h:170
descr_t userDesc
Definition: icss_eip_driver.h:284
uint16_t addressSize
Definition: icss_eip_driver.h:213
uint8_t priority1
Definition: icss_eip_driver.h:269
@ ORDINARY_CLOCK
Definition: icss_eip_driver.h:128
int32_t EIP_configureLLDPFwdHelper(uint32_t pruBaseAddress, uint8_t val)
API to configure the value stored at the required offset in ICSS SMEM.
descr_t productType
Definition: icss_eip_driver.h:280
Specifies the specifies the network and protocol address of each port of the device (e....
Definition: icss_eip_driver.h:210
struct TimeSync_ParamsHandle_s * TimeSync_ParamsHandle_t
Definition: icss_timeSyncApi.h:985
Specifies the PTP profile of each port of the device.
Definition: icss_eip_driver.h:189
int32_t EIP_configureLLDPForwarding(EIP_Handle icssEipHandle, uint8_t enableFeature)
API to configure the LLDP forwarding to the other port.
uint16_t stepsRemoved
Definition: icss_eip_driver.h:295
int64_t offsetFromMaster
Definition: icss_eip_driver.h:242
#define ICSS_EMAC_MAX_PORTS_PER_INSTANCE
Maximum number of Ports in a single ICSS
Definition: icss_emac.h:66