 |
AM263Px MCU+ SDK
11.00.00
|
|
Go to the documentation of this file.
47 #ifndef ENET_MOD_MDIO_H_
48 #define ENET_MOD_MDIO_H_
67 #define ENET_MDIO_FEAT_CLAUSE45 (ENET_BIT(0U))
70 #define ENET_MDIO_FEAT_PHY_MONITOR (ENET_BIT(1U))
73 #define ENET_MDIO_PUBLIC_IOCTL(x) (ENET_IOCTL_TYPE_PUBLIC | \
74 ENET_IOCTL_MDIO_BASE | \
78 #define ENET_MDIO_PRIVATE_IOCTL(x) (ENET_IOCTL_TYPE_PRIVATE | \
79 ENET_IOCTL_MDIO_BASE | \
83 #define ENET_MDIO_PHY_ADDR_MASK(addr) (ENET_BIT(addr))
86 #define ENET_MDIO_IS_PHY_ADDR_SET(mask, addr) (((mask) & ENET_BIT(addr)) != 0U)
89 #define ENET_MDIO_PHY_ADDR_MASK_NONE (0x00000000U)
92 #define ENET_MDIO_PHY_ADDR_MASK_ALL (0xFFFFFFFFU)
95 #define ENET_MDIO_PHY_CNT_MAX (31U)
104 typedef enum EnetMdio_Ioctl_e
282 typedef enum EnetMdio_Group_e
297 typedef enum EnetMdio_FrameFmt_s
309 typedef enum EnetMdio_C45Mmd_e
338 typedef struct EnetMdio_C22ReadInArgs_s
358 typedef struct EnetMdio_C45ReadInArgs_s
381 typedef struct EnetMdio_C22WriteInArgs_s
404 typedef struct EnetMdio_C45WriteInArgs_s
@ ENET_MDIO_GROUP_NUM
Definition: enet_mod_mdio.h:291
@ ENET_MDIO_IOCTL_IS_POLL_ENABLED
Get link state change poll enable status.
Definition: enet_mod_mdio.h:152
uint32_t phyAddr
Definition: enet_mod_mdio.h:413
EnetMdio_C45Mmd mmd
Definition: enet_mod_mdio.h:416
@ ENET_MDIO_IOCTL_PRINT_REGS
Print MDIO registers.
Definition: enet_mod_mdio.h:122
uint16_t val
Definition: enet_mod_mdio.h:396
@ ENET_MDIO_IOCTL_C22_ASYNC_READ_TRIGGER
Trigger Asynchronous read to PHY register.
Definition: enet_mod_mdio.h:197
This file contains the basic types using across the Enet driver.
@ ENET_MDIO_IOCTL_C45_ASYNC_WRITE_TRIGGER
Trigger Asynchronous Write to PHY register using clause-45 frame.
Definition: enet_mod_mdio.h:251
@ ENET_MDIO_IOCTL_C45_ASYNC_READ_COMPLETE
Checks for async Read completion to PHY register using clause-45 frame.
Definition: enet_mod_mdio.h:242
@ ENET_MDIO_IOCTL_C45_READ
Read a PHY register using clause-45 frame.
Definition: enet_mod_mdio.h:179
uint16_t reg
Definition: enet_mod_mdio.h:393
This file contains the type definitions and helper macros for the Enet IOCTL interface.
@ ENET_MDIO_IOCTL_C22_ASYNC_WRITE_COMPLETE
Checks for async Write completion to PHY register.
Definition: enet_mod_mdio.h:224
uint16_t val
Definition: enet_mod_mdio.h:422
@ ENET_MDIO_IOCTL_C45_ASYNC_WRITE_COMPLETE
Checks for async Write completion to PHY register using clause-45 frame.
Definition: enet_mod_mdio.h:260
@ ENET_MDIO_MMD_VENDOR_1
Definition: enet_mod_mdio.h:327
@ ENET_MDIO_MMD_VENDOR_2
Definition: enet_mod_mdio.h:330
uint16_t reg
Definition: enet_mod_mdio.h:373
@ ENET_MDIO_MMD_WIS
Definition: enet_mod_mdio.h:315
Input args for ENET_MDIO_IOCTL_C22_WRITE command.
Definition: enet_mod_mdio.h:382
@ ENET_MDIO_IOCTL_ENABLE_STATE_MACHINE
Enable MDIO state machine. Use.
Definition: enet_mod_mdio.h:275
EnetMdio_C45Mmd mmd
Definition: enet_mod_mdio.h:370
EnetMdio_Ioctl
MDIO IOCTL commands.
Definition: enet_mod_mdio.h:105
@ ENET_MDIO_MMD_PHY_XS
Definition: enet_mod_mdio.h:321
@ ENET_MDIO_GROUP_1
Definition: enet_mod_mdio.h:288
Input args for ENET_MDIO_IOCTL_C22_READ command.
Definition: enet_mod_mdio.h:339
@ ENET_MDIO_IOCTL_C45_ASYNC_READ_TRIGGER
Trigger Asynchronous Read to PHY register using clause-45 frame.
Definition: enet_mod_mdio.h:233
@ ENET_MDIO_IOCTL_IS_ALIVE
Get PHY alive status.
Definition: enet_mod_mdio.h:131
Input args for ENET_MDIO_IOCTL_C45_READ command.
Definition: enet_mod_mdio.h:359
Input args for ENET_MDIO_IOCTL_C45_WRITE command.
Definition: enet_mod_mdio.h:405
@ ENET_MDIO_MMD_DTE_XS
Definition: enet_mod_mdio.h:324
EnetMdio_Group group
Definition: enet_mod_mdio.h:410
@ ENET_MDIO_FRAME_FMT_C45
Definition: enet_mod_mdio.h:303
@ ENET_MDIO_MMD_PCS
Definition: enet_mod_mdio.h:318
@ ENET_MDIO_MMD_PMA_PMD
Definition: enet_mod_mdio.h:312
@ ENET_MDIO_IOCTL_C22_ASYNC_READ_COMPLETE
Checks for async read completion to PHY register.
Definition: enet_mod_mdio.h:206
@ ENET_MDIO_IOCTL_IS_LINKED
Get PHY link status.
Definition: enet_mod_mdio.h:140
@ ENET_MDIO_IOCTL_GET_VERSION
Get the hardware version of the MDIO module.
Definition: enet_mod_mdio.h:113
EnetMdio_Group group
Definition: enet_mod_mdio.h:344
#define ENET_MDIO_PUBLIC_IOCTL(x)
Helper macro to create IOCTL commands for MDIO module.
Definition: enet_mod_mdio.h:73
@ ENET_MDIO_IOCTL_C22_READ
Read a PHY register using clause-22 frame.
Definition: enet_mod_mdio.h:161
EnetMdio_FrameFmt
Frame format.
Definition: enet_mod_mdio.h:298
uint16_t reg
Definition: enet_mod_mdio.h:419
@ ENET_MDIO_IOCTL_C22_WRITE
Write a PHY register using clause-22 frame.
Definition: enet_mod_mdio.h:170
EnetMdio_Group group
Definition: enet_mod_mdio.h:364
EnetMdio_Group
MDIO user group.
Definition: enet_mod_mdio.h:283
@ ENET_MDIO_FRAME_FMT_C22
Definition: enet_mod_mdio.h:300
uint32_t phyAddr
Definition: enet_mod_mdio.h:367
uint32_t phyAddr
Definition: enet_mod_mdio.h:390
@ ENET_MDIO_GROUP_0
Definition: enet_mod_mdio.h:285
@ ENET_MDIO_IOCTL_C45_WRITE
Write a PHY register using clause-45 frame.
Definition: enet_mod_mdio.h:188
uint16_t reg
Definition: enet_mod_mdio.h:350
uint32_t phyAddr
Definition: enet_mod_mdio.h:347
@ ENET_MDIO_IOCTL_C22_ASYNC_WRITE_TRIGGER
Trigger Asynchronous Write to PHY register.
Definition: enet_mod_mdio.h:215
EnetMdio_Group group
Definition: enet_mod_mdio.h:387
EnetMdio_C45Mmd
Clause-45 MDIO Manageable Device (MMD) addresses.
Definition: enet_mod_mdio.h:310