14#ifndef ZEPHYR_INCLUDE_DRIVERS_MDIO_H_
15#define ZEPHYR_INCLUDE_DRIVERS_MDIO_H_
104static inline int z_impl_mdio_read(
const struct device *dev,
uint8_t prtad,
134static inline int z_impl_mdio_write(
const struct device *dev,
uint8_t prtad,
164static inline int z_impl_mdio_read_c45(
const struct device *dev,
uint8_t prtad,
172 return DEVICE_API_GET(mdio, dev)->read_c45(dev, prtad, devad, regad, data);
195static inline int z_impl_mdio_write_c45(
const struct device *dev,
uint8_t prtad,
203 return DEVICE_API_GET(mdio, dev)->write_c45(dev, prtad, devad, regad, data);
214#include <zephyr/syscalls/mdio.h>
#define DEVICE_API_GET(_class, _dev)
Expands to the pointer of a device's API for a given class.
Definition device.h:1425
int(* mdio_api_write_t)(const struct device *dev, uint8_t prtad, uint8_t regad, uint16_t data)
Write data to MDIO bus.
Definition mdio.h:47
int mdio_write(const struct device *dev, uint8_t prtad, uint8_t regad, uint16_t data)
Write to MDIO bus.
int mdio_read_c45(const struct device *dev, uint8_t prtad, uint8_t devad, uint16_t regad, uint16_t *data)
Read from MDIO Bus using Clause 45 access.
int(* mdio_api_write_c45_t)(const struct device *dev, uint8_t prtad, uint8_t devad, uint16_t regad, uint16_t data)
Write data to MDIO bus using Clause 45 access.
Definition mdio.h:61
int(* mdio_api_read_c45_t)(const struct device *dev, uint8_t prtad, uint8_t devad, uint16_t regad, uint16_t *data)
Read data from MDIO bus using Clause 45 access.
Definition mdio.h:54
int mdio_write_c45(const struct device *dev, uint8_t prtad, uint8_t devad, uint16_t regad, uint16_t data)
Write to MDIO bus using Clause 45 access.
int(* mdio_api_read_t)(const struct device *dev, uint8_t prtad, uint8_t regad, uint16_t *data)
@def_driverbackendgroup{MDIO,mdio_interface}
Definition mdio.h:40
int mdio_read(const struct device *dev, uint8_t prtad, uint8_t regad, uint16_t *data)
Read from MDIO Bus.
#define ENOSYS
Function not implemented.
Definition errno.h:83
#define NULL
Definition iar_missing_defs.h:20
__UINT8_TYPE__ uint8_t
Definition stdint.h:88
__UINT16_TYPE__ uint16_t
Definition stdint.h:89
Runtime device structure (in ROM) per driver instance.
Definition device.h:513
void * data
Address of the device instance private data.
Definition device.h:523
@driver_ops{MDIO}
Definition mdio.h:67
mdio_api_read_t read
@driver_ops_optional Read from MDIO Bus.
Definition mdio.h:69
mdio_api_write_c45_t write_c45
@driver_ops_optional Write to MDIO bus using Clause 45 access.
Definition mdio.h:78
mdio_api_write_t write
@driver_ops_optional Write to MDIO bus.
Definition mdio.h:72
mdio_api_read_c45_t read_c45
@driver_ops_optional Read from MDIO Bus using Clause 45 access.
Definition mdio.h:75