AM263Px MCU+ SDK: enet_mod_phy.h Source File

| AM263Px MCU+ SDK 26.00.00 |

enet_mod_phy.h
Go to the documentation of this file.
1 /*
2 * Copyright (c) Texas Instruments Incorporated 2020
3 *
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions
6 * are met:
7 *
8 * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
10 *
11 * Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the
14 * distribution.
15 *
16 * Neither the name of Texas Instruments Incorporated nor the names of
17 * its contributors may be used to endorse or promote products derived
18 * from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32
40 #ifndef ENET_MOD_PHY_H_
41 #define ENET_MOD_PHY_H_
42
43 /* ========================================================================== */
44 /* Include Files */
45 /* ========================================================================== */
46
47 #include <stdint.h>
48 #include <include/core/enet_types.h>
49 #include <include/core/enet_ioctl.h>
50 #include <include/phy/enetphy.h>
51
52 #ifdef __cplusplus
53 extern "C" {
54 #endif
55
56 /* ========================================================================== */
57 /* Macros */
58 /* ========================================================================== */
59
61 #define ENET_PHY_PUBLIC_IOCTL(x) (ENET_IOCTL_TYPE_PUBLIC | \
62 ENET_IOCTL_PHY_BASE | \
63 ENET_IOCTL_MIN(x))
64
65 /* ========================================================================== */
66 /* Structures and Enums */
67 /* ========================================================================== */
68
72 enum EnetPhy_Ioctl_e
73 {
81 ENET_PHY_IOCTL_GET_ID = ENET_PHY_PUBLIC_IOCTL(0U),
82
90 ENET_PHY_IOCTL_GET_SUPPORTED_MODES = ENET_PHY_PUBLIC_IOCTL(1U),
91
99 ENET_PHY_IOCTL_GET_LOOPBACK_STATE = ENET_PHY_PUBLIC_IOCTL(2U),
100
108 ENET_PHY_IOCTL_IS_ALIVE = ENET_PHY_PUBLIC_IOCTL(3U),
109
118 ENET_PHY_IOCTL_IS_LINKED = ENET_PHY_PUBLIC_IOCTL(4U),
119
128 ENET_PHY_IOCTL_GET_LINK_MODE = ENET_PHY_PUBLIC_IOCTL(5U),
129
137 ENET_PHY_IOCTL_RESET = ENET_PHY_PUBLIC_IOCTL(6U),
138
146 ENET_PHY_IOCTL_READ_REG = ENET_PHY_PUBLIC_IOCTL(7U),
147
155 ENET_PHY_IOCTL_WRITE_REG = ENET_PHY_PUBLIC_IOCTL(8U),
156
164 ENET_PHY_IOCTL_READ_EXT_REG = ENET_PHY_PUBLIC_IOCTL(9U),
165
173 ENET_PHY_IOCTL_WRITE_EXT_REG = ENET_PHY_PUBLIC_IOCTL(10U),
174
182 ENET_PHY_IOCTL_C45_READ_REG = ENET_PHY_PUBLIC_IOCTL(11U),
183
191 ENET_PHY_IOCTL_C45_WRITE_REG = ENET_PHY_PUBLIC_IOCTL(12U),
192
200 ENET_PHY_IOCTL_PRINT_REGS = ENET_PHY_PUBLIC_IOCTL(13U),
201
209 ENET_PHY_IOCTL_ADJ_PTP_FREQ = ENET_PHY_PUBLIC_IOCTL(14U),
210
218 ENET_PHY_IOCTL_ADJ_PTP_PHASE = ENET_PHY_PUBLIC_IOCTL(15U),
219
227 ENET_PHY_IOCTL_GET_PTP_TIME = ENET_PHY_PUBLIC_IOCTL(16U),
228
236 ENET_PHY_IOCTL_SET_PTP_TIME = ENET_PHY_PUBLIC_IOCTL(17U),
237
245 ENET_PHY_IOCTL_GET_PTP_TXTS = ENET_PHY_PUBLIC_IOCTL(18U),
246
254 ENET_PHY_IOCTL_GET_PTP_RXTS = ENET_PHY_PUBLIC_IOCTL(19U),
255
263 ENET_PHY_IOCTL_WAIT_PTP_TXTS = ENET_PHY_PUBLIC_IOCTL(20U),
264
272 ENET_PHY_IOCTL_PROC_STATUS_FRAME = ENET_PHY_PUBLIC_IOCTL(21U),
273
281 ENET_PHY_IOCTL_GET_STATUS_FRAME_ETHDR = ENET_PHY_PUBLIC_IOCTL(22U),
282
290 ENET_PHY_IOCTL_ENABLE_PTP = ENET_PHY_PUBLIC_IOCTL(23U),
291
299 ENET_PHY_IOCTL_ENABLE_EVENT_CAPTURE = ENET_PHY_PUBLIC_IOCTL(24U),
300
308 ENET_PHY_IOCTL_ENABLE_TRIGGER_OUTPUT = ENET_PHY_PUBLIC_IOCTL(25U),
309
317 ENET_PHY_IOCTL_GET_EVENT_TIMESTAMP = ENET_PHY_PUBLIC_IOCTL(26U),
318
328 ENET_PHY_IOCTL_GET_LINK_STATUS = ENET_PHY_PUBLIC_IOCTL(27U),
329
337 ENET_PHY_IOCTL_CONFIG_MEDIA_CLOCK = ENET_PHY_PUBLIC_IOCTL(28U),
338
346 ENET_PHY_IOCTL_NUDGE_CODEC_CLOCK = ENET_PHY_PUBLIC_IOCTL(29U),
347 };
348
352 typedef struct EnetPhy_GenericInArgs_s
353 {
355 Enet_MacPort macPort;
356 } EnetPhy_GenericInArgs;
357
361 typedef struct EnetPhy_ReadRegInArgs_s
362 {
364 Enet_MacPort macPort;
365
367 uint16_t reg;
368 } EnetPhy_ReadRegInArgs;
369
373 typedef struct EnetPhy_WriteRegInArgs_s
374 {
376 Enet_MacPort macPort;
377
379 uint16_t reg;
380
382 uint16_t val;
383 } EnetPhy_WriteRegInArgs;
384
388 typedef struct EnetPhy_C45ReadRegInArgs_s
389 {
391 Enet_MacPort macPort;
392
394 uint8_t mmd;
395
397 uint16_t reg;
398 } EnetPhy_C45ReadRegInArgs;
399
403 typedef struct EnetPhy_C45WriteRegInArgs_s
404 {
406 Enet_MacPort macPort;
407
409 uint8_t mmd;
410
412 uint16_t reg;
413
415 uint16_t val;
416 } EnetPhy_C45WriteRegInArgs;
417
421 typedef struct EnetPhy_PtpPktTimestampInArgs_s
422 {
423 Enet_MacPort macPort;
424 uint32_t domain;
425 uint32_t msgType;
426 uint32_t seqId;
427 } EnetPhy_PtpPktTimestampInArgs;
428
432 typedef struct EnetPhy_AdjPtpFreqInArgs_s
433 {
434 Enet_MacPort macPort;
435 int64_t ppb;
436 } EnetPhy_AdjPtpFreqInArgs;
437
441 typedef struct EnetPhy_AdjPtpPhaseInArgs_s
442 {
443 Enet_MacPort macPort;
444 int64_t offset;
445 } EnetPhy_AdjPtpPhaseInArgs;
446
450 typedef struct EnetPhy_SetPtpTimeInArgs_s
451 {
452 Enet_MacPort macPort;
453 uint64_t ts64;
454 } EnetPhy_SetPtpTimeInArgs;
455
459 typedef struct EnetPhy_ProcStatusFrameInArgs_s
460 {
461 Enet_MacPort macPort;
462 uint8_t *frame;
463 uint32_t size;
464 } EnetPhy_ProcStatusFrameInArgs;
465
469 typedef struct EnetPhy_ProcStatusFrameOutArgs_s
470 {
471 /* combination of any #ENETPHY_STATUS_FRAME_TYPE_x */
472 uint32_t types;
473 } EnetPhy_ProcStatusFrameOutArgs;
474
478 typedef struct EnetPhy_GetStatusFrameEthdrOutArgs_s
479 {
480 uint8_t *ethhdr;
481 uint32_t size;
482 } EnetPhy_GetStatusFrameEthdrOutArgs;
483
487 typedef struct EnetPhy_EnablePtpInArgs_s
488 {
489 Enet_MacPort macPort;
490 bool on;
491 /* This PHY-specific parameter is used to distinguish status frames
492 * among multiple PHYs connected to the same SoC.
493 * Please check the PHY datasheet for supported value. */
494 uint32_t srcMacStatusFrameType;
495 } EnetPhy_EnablePtpInArgs;
496
500 typedef struct EnetPhy_EnableEventCaptureInArgs_s
501 {
502 Enet_MacPort macPort;
503 uint32_t eventIdx;
504 bool falling;
505 bool on;
506 } EnetPhy_EnableEventCaptureInArgs;
507
511 typedef struct EnetPhy_EnableTriggerOutputInArgs_s
512 {
513 Enet_MacPort macPort;
514 uint32_t triggerIdx;
515 uint64_t startNsec;
516 uint64_t periodNsec;
517 bool repeat;
518 } EnetPhy_EnableTriggerOutputInArgs;
519
523 typedef struct EnetPhy_GetEventTimestampOutArgs_s
524 {
525 uint32_t eventIdx;
526 uint32_t seqId;
527 uint64_t ts64;
528 } EnetPhy_GetEventTimestampOutArgs;
532 typedef struct EnetPhy_ConfigMediaClockInArgs_s
533 {
534 Enet_MacPort macPort;
535 bool isMaster;
536 uint8_t *streamIDMatchValue;
537 bool enTrigOut;
538 }EnetPhy_ConfigMediaClockInArgs;
539
543 typedef struct EnetPhy_NudgeCodecClockInArgs_s
544 {
545 Enet_MacPort macPort;
546 int8_t nudgeValue;
547 }EnetPhy_NudgeCodecClockInArgs;
548
549 /* ========================================================================== */
550 /* Global Variables Declarations */
551 /* ========================================================================== */
552
553 /* None */
554
555 /* ========================================================================== */
556 /* Function Declarations */
557 /* ========================================================================== */
558
559 /* None */
560
561 /* ========================================================================== */
562 /* Deprecated Function Declarations */
563 /* ========================================================================== */
564
565 /* None */
566
567 /* ========================================================================== */
568 /* Static Function Definitions */
569 /* ========================================================================== */
570
571 /* None */
572
573 #ifdef __cplusplus
574 }
575 #endif
576
577 #endif /* ENET_MOD_PHY_H_ */
EnetPhy_GenericInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:355
ENET_PHY_IOCTL_GET_LINK_STATUS
@ ENET_PHY_IOCTL_GET_LINK_STATUS
Get Phy Link status. This IOTCL will not have longterm support and this functionality will eventually...
Definition: enet_mod_phy.h:328
EnetPhy_Ioctl_e
EnetPhy_Ioctl_e
PHY IOCTL commands.
Definition: enet_mod_phy.h:73
EnetPhy_WriteRegInArgs::reg
uint16_t reg
Definition: enet_mod_phy.h:379
EnetPhy_GetStatusFrameEthdrOutArgs::ethhdr
uint8_t * ethhdr
Definition: enet_mod_phy.h:480
ENET_PHY_IOCTL_READ_REG
@ ENET_PHY_IOCTL_READ_REG
Read PHY register.
Definition: enet_mod_phy.h:146
ENET_PHY_IOCTL_NUDGE_CODEC_CLOCK
@ ENET_PHY_IOCTL_NUDGE_CODEC_CLOCK
Nudge Codec Clock.
Definition: enet_mod_phy.h:346
EnetPhy_AdjPtpPhaseInArgs
Input args for ENET_PHY_IOCTL_ADJ_PTP_PHASE command.
Definition: enet_mod_phy.h:442
ENET_PHY_IOCTL_GET_LINK_MODE
@ ENET_PHY_IOCTL_GET_LINK_MODE
Get the link speed and duplexity state after the state machine has reached the LINKED state.
Definition: enet_mod_phy.h:128
EnetPhy_EnableEventCaptureInArgs::eventIdx
uint32_t eventIdx
Definition: enet_mod_phy.h:503
EnetPhy_ProcStatusFrameInArgs::size
uint32_t size
Definition: enet_mod_phy.h:463
EnetPhy_NudgeCodecClockInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:545
EnetPhy_ProcStatusFrameInArgs::frame
uint8_t * frame
Definition: enet_mod_phy.h:462
EnetPhy_AdjPtpPhaseInArgs::offset
int64_t offset
Definition: enet_mod_phy.h:444
ENET_PHY_IOCTL_C45_WRITE_REG
@ ENET_PHY_IOCTL_C45_WRITE_REG
Write PHY register using Clause-45 frame.
Definition: enet_mod_phy.h:191
EnetPhy_C45WriteRegInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:406
ENET_PHY_IOCTL_GET_ID
@ ENET_PHY_IOCTL_GET_ID
Get PHY identification.
Definition: enet_mod_phy.h:81
EnetPhy_WriteRegInArgs
Input args for ENET_PHY_IOCTL_WRITE_EXT_REG command.
Definition: enet_mod_phy.h:374
ENET_PHY_IOCTL_GET_STATUS_FRAME_ETHDR
@ ENET_PHY_IOCTL_GET_STATUS_FRAME_ETHDR
Get PHY status frame header.
Definition: enet_mod_phy.h:281
ENET_PHY_IOCTL_WRITE_REG
@ ENET_PHY_IOCTL_WRITE_REG
Write PHY register.
Definition: enet_mod_phy.h:155
EnetPhy_EnablePtpInArgs::srcMacStatusFrameType
uint32_t srcMacStatusFrameType
Definition: enet_mod_phy.h:494
EnetPhy_C45ReadRegInArgs::reg
uint16_t reg
Definition: enet_mod_phy.h:397
ENET_PHY_IOCTL_RESET
@ ENET_PHY_IOCTL_RESET
Reset PHY.
Definition: enet_mod_phy.h:137
ENET_PHY_IOCTL_READ_EXT_REG
@ ENET_PHY_IOCTL_READ_EXT_REG
Read PHY extended register.
Definition: enet_mod_phy.h:164
EnetPhy_C45WriteRegInArgs::val
uint16_t val
Definition: enet_mod_phy.h:415
ENET_PHY_IOCTL_GET_SUPPORTED_MODES
@ ENET_PHY_IOCTL_GET_SUPPORTED_MODES
Get PHY supported modes by local PHY device.
Definition: enet_mod_phy.h:90
enet_types.h
This file contains the basic types using across the Enet driver.
EnetPhy_EnableTriggerOutputInArgs
Input args for ENET_PHY_IOCTL_ENABLE_TRIGGER_OUTPUT command.
Definition: enet_mod_phy.h:512
EnetPhy_GenericInArgs
Generic input args.
Definition: enet_mod_phy.h:353
Enet_MacPort
Enet_MacPort
MAC port.
Definition: enet_types.h:412
ENET_PHY_IOCTL_ENABLE_EVENT_CAPTURE
@ ENET_PHY_IOCTL_ENABLE_EVENT_CAPTURE
Enable/Disable an event capture on a PHY GPIO pin.
Definition: enet_mod_phy.h:299
EnetPhy_AdjPtpPhaseInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:443
EnetPhy_WriteRegInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:376
EnetPhy_PtpPktTimestampInArgs::seqId
uint32_t seqId
Definition: enet_mod_phy.h:426
enet_ioctl.h
This file contains the type definitions and helper macros for the Enet IOCTL interface.
EnetPhy_ReadRegInArgs::reg
uint16_t reg
Definition: enet_mod_phy.h:367
EnetPhy_EnableTriggerOutputInArgs::startNsec
uint64_t startNsec
Definition: enet_mod_phy.h:515
EnetPhy_C45ReadRegInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:391
EnetPhy_NudgeCodecClockInArgs
Input args for ENET_PHY_IOCTL_NUDGE_CODEC_CLOCK command.
Definition: enet_mod_phy.h:544
EnetPhy_AdjPtpFreqInArgs
Input args for ENET_PHY_IOCTL_ADJ_PTP_FREQ command.
Definition: enet_mod_phy.h:433
EnetPhy_ConfigMediaClockInArgs::enTrigOut
bool enTrigOut
Definition: enet_mod_phy.h:537
EnetPhy_EnableEventCaptureInArgs::falling
bool falling
Definition: enet_mod_phy.h:504
EnetPhy_C45WriteRegInArgs
Input args for ENET_PHY_IOCTL_C45_WRITE_REG command.
Definition: enet_mod_phy.h:404
EnetPhy_ConfigMediaClockInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:534
EnetPhy_C45ReadRegInArgs
Input args for ENET_PHY_IOCTL_C45_READ_REG command.
Definition: enet_mod_phy.h:389
ENET_PHY_IOCTL_GET_PTP_TXTS
@ ENET_PHY_IOCTL_GET_PTP_TXTS
Get PHY PTP TX packet timestamp.
Definition: enet_mod_phy.h:245
enetphy.h
This file contains the type definitions and helper macros for the Ethernet PHY interface.
ENET_PHY_IOCTL_GET_PTP_TIME
@ ENET_PHY_IOCTL_GET_PTP_TIME
Get current PHY PTP clock time.
Definition: enet_mod_phy.h:227
ENET_PHY_IOCTL_WRITE_EXT_REG
@ ENET_PHY_IOCTL_WRITE_EXT_REG
Write PHY extended register.
Definition: enet_mod_phy.h:173
EnetPhy_GetStatusFrameEthdrOutArgs::size
uint32_t size
Definition: enet_mod_phy.h:481
EnetPhy_GetEventTimestampOutArgs::ts64
uint64_t ts64
Definition: enet_mod_phy.h:527
EnetPhy_PtpPktTimestampInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:423
EnetPhy_C45WriteRegInArgs::mmd
uint8_t mmd
Definition: enet_mod_phy.h:409
EnetPhy_GetEventTimestampOutArgs
Output args for ENET_PHY_IOCTL_GET_EVENT_TIMESTAMP command.
Definition: enet_mod_phy.h:524
ENET_PHY_IOCTL_CONFIG_MEDIA_CLOCK
@ ENET_PHY_IOCTL_CONFIG_MEDIA_CLOCK
Config Media Clock.
Definition: enet_mod_phy.h:337
EnetPhy_ProcStatusFrameInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:461
EnetPhy_EnableTriggerOutputInArgs::periodNsec
uint64_t periodNsec
Definition: enet_mod_phy.h:516
EnetPhy_AdjPtpFreqInArgs::ppb
int64_t ppb
Definition: enet_mod_phy.h:435
EnetPhy_ProcStatusFrameInArgs
Input args for ENET_PHY_IOCTL_PROC_STATUS_FRAME command.
Definition: enet_mod_phy.h:460
ENET_PHY_IOCTL_IS_ALIVE
@ ENET_PHY_IOCTL_IS_ALIVE
Check PHY alive status.
Definition: enet_mod_phy.h:108
EnetPhy_EnableTriggerOutputInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:513
ENET_PHY_IOCTL_ADJ_PTP_PHASE
@ ENET_PHY_IOCTL_ADJ_PTP_PHASE
Adjust PHY PTP clock Phase.
Definition: enet_mod_phy.h:218
ENET_PHY_IOCTL_IS_LINKED
@ ENET_PHY_IOCTL_IS_LINKED
Check state-machine link state, that is, whether the state machine has reached the LINKED state.
Definition: enet_mod_phy.h:118
EnetPhy_WriteRegInArgs::val
uint16_t val
Definition: enet_mod_phy.h:382
EnetPhy_EnablePtpInArgs::on
bool on
Definition: enet_mod_phy.h:490
EnetPhy_EnableEventCaptureInArgs::on
bool on
Definition: enet_mod_phy.h:505
EnetPhy_SetPtpTimeInArgs::ts64
uint64_t ts64
Definition: enet_mod_phy.h:453
ENET_PHY_IOCTL_SET_PTP_TIME
@ ENET_PHY_IOCTL_SET_PTP_TIME
Set PHY PTP clock time.
Definition: enet_mod_phy.h:236
EnetPhy_ReadRegInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:364
ENET_PHY_IOCTL_GET_EVENT_TIMESTAMP
@ ENET_PHY_IOCTL_GET_EVENT_TIMESTAMP
Get event timestamp.
Definition: enet_mod_phy.h:317
EnetPhy_PtpPktTimestampInArgs
Input args for ENET_PHY_IOCTL_GET_PTP_TXTS command.
Definition: enet_mod_phy.h:422
ENET_PHY_IOCTL_ADJ_PTP_FREQ
@ ENET_PHY_IOCTL_ADJ_PTP_FREQ
Adjust PHY PTP clock Frequency.
Definition: enet_mod_phy.h:209
EnetPhy_GetStatusFrameEthdrOutArgs
Input args for ENET_PHY_IOCTL_GET_STATUS_FRAME_ETHDR command.
Definition: enet_mod_phy.h:479
EnetPhy_ConfigMediaClockInArgs::isMaster
bool isMaster
Definition: enet_mod_phy.h:535
EnetPhy_EnableTriggerOutputInArgs::triggerIdx
uint32_t triggerIdx
Definition: enet_mod_phy.h:514
EnetPhy_ProcStatusFrameOutArgs::types
uint32_t types
Definition: enet_mod_phy.h:472
EnetPhy_EnableEventCaptureInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:502
ENET_PHY_IOCTL_PRINT_REGS
@ ENET_PHY_IOCTL_PRINT_REGS
Print PHY registers.
Definition: enet_mod_phy.h:200
EnetPhy_EnableEventCaptureInArgs
Input args for ENET_PHY_IOCTL_ENABLE_EVENT_CAPTURE command.
Definition: enet_mod_phy.h:501
EnetPhy_GetEventTimestampOutArgs::seqId
uint32_t seqId
Definition: enet_mod_phy.h:526
EnetPhy_PtpPktTimestampInArgs::msgType
uint32_t msgType
Definition: enet_mod_phy.h:425
EnetPhy_C45ReadRegInArgs::mmd
uint8_t mmd
Definition: enet_mod_phy.h:394
ENET_PHY_IOCTL_WAIT_PTP_TXTS
@ ENET_PHY_IOCTL_WAIT_PTP_TXTS
Add PHY PTP TX packet info to a waiting TX timestamp list.
Definition: enet_mod_phy.h:263
EnetPhy_ReadRegInArgs
Input args for ENET_PHY_IOCTL_READ_EXT_REG command.
Definition: enet_mod_phy.h:362
EnetPhy_EnablePtpInArgs
Input args for ENET_PHY_IOCTL_ENABLE_PTP command.
Definition: enet_mod_phy.h:488
EnetPhy_SetPtpTimeInArgs
Input args for ENET_PHY_IOCTL_SET_PTP_TIME command.
Definition: enet_mod_phy.h:451
ENET_PHY_PUBLIC_IOCTL
#define ENET_PHY_PUBLIC_IOCTL(x)
Helper macro to create PHY IOCTL commands.
Definition: enet_mod_phy.h:61
ENET_PHY_IOCTL_C45_READ_REG
@ ENET_PHY_IOCTL_C45_READ_REG
Read PHY register using Clause-45 frame.
Definition: enet_mod_phy.h:182
EnetPhy_ConfigMediaClockInArgs
Input args for ENET_PHY_IOCTL_CONFIG_MEDIA_CLOCK command.
Definition: enet_mod_phy.h:533
EnetPhy_PtpPktTimestampInArgs::domain
uint32_t domain
Definition: enet_mod_phy.h:424
EnetPhy_ProcStatusFrameOutArgs
Output args for ENET_PHY_IOCTL_PROC_STATUS_FRAME command.
Definition: enet_mod_phy.h:470
ENET_PHY_IOCTL_GET_PTP_RXTS
@ ENET_PHY_IOCTL_GET_PTP_RXTS
Get PHY PTP RX packet timestamp.
Definition: enet_mod_phy.h:254
EnetPhy_EnableTriggerOutputInArgs::repeat
bool repeat
Definition: enet_mod_phy.h:517
EnetPhy_EnablePtpInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:489
EnetPhy_ConfigMediaClockInArgs::streamIDMatchValue
uint8_t * streamIDMatchValue
Definition: enet_mod_phy.h:536
EnetPhy_SetPtpTimeInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:452
ENET_PHY_IOCTL_ENABLE_TRIGGER_OUTPUT
@ ENET_PHY_IOCTL_ENABLE_TRIGGER_OUTPUT
Enable/Disable clock trigger on a GPIO pin.
Definition: enet_mod_phy.h:308
EnetPhy_NudgeCodecClockInArgs::nudgeValue
int8_t nudgeValue
Definition: enet_mod_phy.h:546
EnetPhy_GetEventTimestampOutArgs::eventIdx
uint32_t eventIdx
Definition: enet_mod_phy.h:525
EnetPhy_C45WriteRegInArgs::reg
uint16_t reg
Definition: enet_mod_phy.h:412
ENET_PHY_IOCTL_ENABLE_PTP
@ ENET_PHY_IOCTL_ENABLE_PTP
Enable/Disable PHY PTP module.
Definition: enet_mod_phy.h:290
ENET_PHY_IOCTL_GET_LOOPBACK_STATE
@ ENET_PHY_IOCTL_GET_LOOPBACK_STATE
Check if PHY is in loopback or not.
Definition: enet_mod_phy.h:99
EnetPhy_AdjPtpFreqInArgs::macPort
Enet_MacPort macPort
Definition: enet_mod_phy.h:434
ENET_PHY_IOCTL_PROC_STATUS_FRAME
@ ENET_PHY_IOCTL_PROC_STATUS_FRAME
Process PHY status frame.
Definition: enet_mod_phy.h:272