Ethernet PHY Interface.
More...
|
int | genphy_get_plca_cfg (const struct device *dev, struct phy_plca_cfg *plca_cfg) |
| Write PHY PLCA configuration.
|
|
int | genphy_set_plca_cfg (const struct device *dev, struct phy_plca_cfg *plca_cfg) |
| Read PHY PLCA configuration.
|
|
int | genphy_get_plca_sts (const struct device *dev, bool *plca_status) |
| Read PHY PLCA status.
|
|
static int | phy_configure_link (const struct device *dev, enum phy_link_speed speeds) |
| Configure PHY link.
|
|
static int | phy_get_link_state (const struct device *dev, struct phy_link_state *state) |
| Get PHY link state.
|
|
static int | phy_link_callback_set (const struct device *dev, phy_callback_t callback, void *user_data) |
| Set link state change callback.
|
|
static int | phy_read (const struct device *dev, uint16_t reg_addr, uint32_t *value) |
| Read PHY registers.
|
|
static int | phy_write (const struct device *dev, uint16_t reg_addr, uint32_t value) |
| Write PHY register.
|
|
static int | phy_read_c45 (const struct device *dev, uint8_t devad, uint16_t regad, uint16_t *data) |
| Read PHY C45 register.
|
|
static int | phy_write_c45 (const struct device *dev, uint8_t devad, uint16_t regad, uint16_t data) |
| Write PHY C45 register.
|
|
static int | phy_set_plca_cfg (const struct device *dev, struct phy_plca_cfg *plca_cfg) |
| Write PHY PLCA configuration.
|
|
static int | phy_get_plca_cfg (const struct device *dev, struct phy_plca_cfg *plca_cfg) |
| Read PHY PLCA configuration.
|
|
static int | phy_get_plca_sts (const struct device *dev, bool *plca_status) |
| Read PHY PLCA status.
|
|
Ethernet PHY Interface.
- Since
- 2.7
- Version
- 0.8.0
◆ PHY_LINK_IS_FULL_DUPLEX
#define PHY_LINK_IS_FULL_DUPLEX |
( |
|
x | ) |
|
#include <include/zephyr/net/phy.h>
Value:
@ LINK_FULL_2500BASE
2.5GBase Full-Duplex
Definition phy.h:48
@ LINK_FULL_10BASE
10Base Full-Duplex
Definition phy.h:38
@ LINK_FULL_1000BASE
1000Base Full-Duplex
Definition phy.h:46
@ LINK_FULL_5000BASE
5GBase Full-Duplex
Definition phy.h:50
@ LINK_FULL_100BASE
100Base Full-Duplex
Definition phy.h:42
Check if phy link is full duplex.
- Parameters
-
- Returns
- True if link is full duplex, false if not.
◆ PHY_LINK_IS_SPEED_1000M
#include <include/zephyr/net/phy.h>
Check if phy link speed is 1 Gbit/sec.
- Parameters
-
- Returns
- True if link is 1 Gbit/sec, false if not.
◆ PHY_LINK_IS_SPEED_100M
#include <include/zephyr/net/phy.h>
Check if phy link speed is 100 Mbit/sec.
- Parameters
-
- Returns
- True if link is 100 Mbit/sec, false if not.
◆ PHY_LINK_IS_SPEED_10M
#include <include/zephyr/net/phy.h>
Check if phy link speed is 10 Mbit/sec.
- Parameters
-
- Returns
- True if link is 10 Mbit/sec, false if not.
◆ phy_callback_t
◆ phy_link_speed
#include <include/zephyr/net/phy.h>
Ethernet link speeds.
Enumerator |
---|
LINK_HALF_10BASE | 10Base Half-Duplex
|
LINK_FULL_10BASE | 10Base Full-Duplex
|
LINK_HALF_100BASE | 100Base Half-Duplex
|
LINK_FULL_100BASE | 100Base Full-Duplex
|
LINK_HALF_1000BASE | 1000Base Half-Duplex
|
LINK_FULL_1000BASE | 1000Base Full-Duplex
|
LINK_FULL_2500BASE | 2.5GBase Full-Duplex
|
LINK_FULL_5000BASE | 5GBase Full-Duplex
|
◆ genphy_get_plca_cfg()
#include <include/zephyr/net/phy.h>
Write PHY PLCA configuration.
This routine provides a generic interface to configure PHY PLCA settings.
- Parameters
-
[in] | dev | PHY device structure |
[in] | plca_cfg | Pointer to plca configuration structure |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ genphy_get_plca_sts()
int genphy_get_plca_sts |
( |
const struct device * |
dev, |
|
|
bool * |
plca_status |
|
) |
| |
#include <include/zephyr/net/phy.h>
Read PHY PLCA status.
This routine provides a generic interface to get PHY PLCA status.
- Parameters
-
[in] | dev | PHY device structure |
| plca_status | Pointer to plca status |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ genphy_set_plca_cfg()
#include <include/zephyr/net/phy.h>
Read PHY PLCA configuration.
This routine provides a generic interface to get PHY PLCA settings.
- Parameters
-
[in] | dev | PHY device structure |
| plca_cfg | Pointer to plca configuration structure |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_configure_link()
#include <include/zephyr/net/phy.h>
Configure PHY link.
This route configures the advertised link speeds.
- Parameters
-
[in] | dev | PHY device structure |
| speeds | OR'd link speeds to be advertised by the PHY |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
-ENOTSUP | If not supported. |
◆ phy_get_link_state()
#include <include/zephyr/net/phy.h>
Get PHY link state.
Returns the current state of the PHY link. This can be used by to determine when a link is up and the negotiated link speed.
- Parameters
-
[in] | dev | PHY device structure |
| state | Pointer to receive PHY state |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_get_plca_cfg()
#include <include/zephyr/net/phy.h>
Read PHY PLCA configuration.
This routine provides a generic interface to get PHY PLCA settings.
- Parameters
-
[in] | dev | PHY device structure |
| plca_cfg | Pointer to plca configuration structure |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_get_plca_sts()
static int phy_get_plca_sts |
( |
const struct device * |
dev, |
|
|
bool * |
plca_status |
|
) |
| |
|
inlinestatic |
#include <include/zephyr/net/phy.h>
Read PHY PLCA status.
This routine provides a generic interface to get PHY PLCA status.
- Parameters
-
[in] | dev | PHY device structure |
| plca_status | Pointer to plca status |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_link_callback_set()
static int phy_link_callback_set |
( |
const struct device * |
dev, |
|
|
phy_callback_t |
callback, |
|
|
void * |
user_data |
|
) |
| |
|
inlinestatic |
#include <include/zephyr/net/phy.h>
Set link state change callback.
Sets a callback that is invoked when link state changes. This is the preferred method for ethernet drivers to be notified of the PHY link state change. The callback will be invoked once after setting it, even if link state has not changed. There can only one callback function set and active at a time. This function is mainly used by ethernet drivers to register a callback to be notified of link state changes and should therefore not be used by applications.
- Parameters
-
[in] | dev | PHY device structure |
| callback | Callback handler |
| user_data | Pointer to data specified by user. |
- Return values
-
0 | If successful. |
-ENOTSUP | If not supported. |
◆ phy_read()
#include <include/zephyr/net/phy.h>
Read PHY registers.
This routine provides a generic interface to read from a PHY register.
- Parameters
-
[in] | dev | PHY device structure |
[in] | reg_addr | Register address |
| value | Pointer to receive read value |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_read_c45()
#include <include/zephyr/net/phy.h>
Read PHY C45 register.
This routine provides a generic interface to read to a PHY C45 register.
- Parameters
-
[in] | dev | PHY device structure |
[in] | devad | Device address |
[in] | regad | Register address |
| data | Pointer to receive read data |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_set_plca_cfg()
#include <include/zephyr/net/phy.h>
Write PHY PLCA configuration.
This routine provides a generic interface to configure PHY PLCA settings.
- Parameters
-
[in] | dev | PHY device structure |
[in] | plca_cfg | Pointer to plca configuration structure |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_write()
#include <include/zephyr/net/phy.h>
Write PHY register.
This routine provides a generic interface to write to a PHY register.
- Parameters
-
[in] | dev | PHY device structure |
[in] | reg_addr | Register address |
[in] | value | Value to write |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |
◆ phy_write_c45()
#include <include/zephyr/net/phy.h>
Write PHY C45 register.
This routine provides a generic interface to write to a PHY C45 register.
- Parameters
-
[in] | dev | PHY device structure |
[in] | devad | Device address |
[in] | regad | Register address |
[in] | data | Data to write |
- Return values
-
0 | If successful. |
-EIO | If communication with PHY failed. |