47 #ifndef ENET_MOD_TAS_H_ 48 #define ENET_MOD_TAS_H_ 66 #define ENET_TAS_PUBLIC_IOCTL(x) (ENET_IOCTL_TYPE_PUBLIC | \ 67 ENET_IOCTL_TAS_BASE | \ 71 #define ENET_TAS_GATE_MASK(tc7, tc6, tc5, tc4, tc3, tc2, tc1, tc0) \ 72 (((((tc7) != 0U) ? 1U : 0U) << 7U) | \ 73 ((((tc6) != 0U) ? 1U : 0U) << 6U) | \ 74 ((((tc5) != 0U) ? 1U : 0U) << 5U) | \ 75 ((((tc4) != 0U) ? 1U : 0U) << 4U) | \ 76 ((((tc3) != 0U) ? 1U : 0U) << 3U) | \ 77 ((((tc2) != 0U) ? 1U : 0U) << 2U) | \ 78 ((((tc1) != 0U) ? 1U : 0U) << 1U) | \ 79 ((((tc0) != 0U) ? 1U : 0U) << 0U)) 82 #define ENET_TAS_MAX_CMD_LISTS (16) 85 #define ENET_TAS_MAX_NUM_QUEUES (8) 88 #define ENET_TAS_MIN_CYCLE_TIME_NS (1000000) 91 #define ENET_TAS_MIN_WINDOW_DURATION_NS (10000) 100 typedef enum EnetTas_Ioctl_e
198 typedef struct EnetTas_GenericInArgs_s
207 typedef enum EnetTas_OperStatus_s
219 typedef enum EnetTas_TasState_s
234 typedef struct EnetTas_GateCmdEntry_s
246 typedef struct EnetTas_MaxSDUTable_s
254 typedef struct EnetTas_ControlList_s
277 typedef struct EnetTas_ConfigStatus_s
297 typedef struct EnetTas_SetAdminListInArgs_s
309 typedef struct EnetTas_SetStateInArgs_s
Get the TAS config change status parameters.
Definition: enet_mod_tas.h:192
Generic input args.
Definition: enet_mod_tas.h:198
uint64_t cycleTime
Definition: enet_mod_tas.h:265
Definition: enet_mod_tas.h:228
Input args for ENET_TAS_IOCTL_SET_STATE commands.
Definition: enet_mod_tas.h:309
EnetTas_ControlList adminList
Definition: enet_mod_tas.h:303
uint8_t configChange
Definition: enet_mod_tas.h:291
EnetTas_TasState
TAS state types.
Definition: enet_mod_tas.h:219
#define ENET_TAS_MAX_CMD_LISTS
Maximum number of gate command entries in each list.
Definition: enet_mod_tas.h:82
Set the State of the TAS module.
Definition: enet_mod_tas.h:148
#define ENET_TAS_MAX_NUM_QUEUES
Maximum number of transmit queues supported by implementation.
Definition: enet_mod_tas.h:85
Get the State of the TAS module.
Definition: enet_mod_tas.h:159
uint8_t listLength
Definition: enet_mod_tas.h:268
Get the operational list parameters of the TAS module.
Definition: enet_mod_tas.h:181
Gate control list. See IEEE Std 802.1Q-2018 8.6.8.4.
Definition: enet_mod_tas.h:234
Get the status of the operational list update.
Definition: enet_mod_tas.h:137
Get the admin list parameters of the TAS module.
Definition: enet_mod_tas.h:170
Max SDU table. See IEEE Std 802.1Q-2018 12.29.1.1.
Definition: enet_mod_tas.h:246
Definition: enet_mod_tas.h:225
Definition: enet_mod_tas.h:213
Gate control list. See IEEE Std 802.1Q-2018 8.6.9.4 D3-1.
Definition: enet_mod_tas.h:254
Enet_MacPort macPort
Definition: enet_mod_tas.h:300
EnetTas_MaxSDUTable sduTable
Definition: enet_mod_tas.h:271
uint64_t baseTime
Definition: enet_mod_tas.h:259
EnetTas_OperStatus
ICSSG TAS state types.
Definition: enet_mod_tas.h:207
EnetTas_TasState state
Definition: enet_mod_tas.h:315
Config state machine variables. See IEEE Std 802.1Q-2018 8.6.8.4.
Definition: enet_mod_tas.h:277
uint8_t gateStateMask
Definition: enet_mod_tas.h:240
EnetTas_Ioctl
TAS module IOCTL commands.
Definition: enet_mod_tas.h:100
uint32_t configChangeErrorCounter
Definition: enet_mod_tas.h:284
Get the hardware version of the TAS module.
Definition: enet_mod_tas.h:111
uint64_t configChangeTime
Definition: enet_mod_tas.h:280
uint8_t configPending
Definition: enet_mod_tas.h:287
Enet_MacPort macPort
Definition: enet_mod_tas.h:201
uint32_t timeInterval
Definition: enet_mod_tas.h:237
Enet_MacPort
MAC port.
Definition: enet_types.h:405
Definition: enet_mod_tas.h:210
Input args for ENET_TAS_IOCTL_SET_ADMIN_LIST commands.
Definition: enet_mod_tas.h:297
Set the admin list parameters of the TAS module.
Definition: enet_mod_tas.h:122
Definition: enet_mod_tas.h:222
#define ENET_TAS_PUBLIC_IOCTL(x)
Helper macro to create IOCTL commands for TAS module.
Definition: enet_mod_tas.h:66
This file contains the type definitions and helper macros for the Enet Module interface.
Enet_MacPort macPort
Definition: enet_mod_tas.h:312