Nexus Embedded Platform 1.0.0
Statically assembled reusable embedded mechanisms
Loading...
Searching...
No Matches
mdio.h
Go to the documentation of this file.
1
6#ifndef NEXUS_IO_MDIO_H
7#define NEXUS_IO_MDIO_H
8#include "nexus/core/time.h"
9#ifdef __cplusplus
10extern "C" {
11#endif
12typedef struct {
13 nx_result_t (*read)(void*, uint8_t, uint8_t, uint16_t*, nx_time_us_t);
14 nx_result_t (*write)(void*, uint8_t, uint8_t, uint16_t, nx_time_us_t);
16typedef struct {
18 void* context;
20
32nx_result_t nx_mdio_read(const nx_mdio_port_t* port, uint8_t address,
33 uint8_t reg, uint16_t* value, nx_time_us_t deadline);
44nx_result_t nx_mdio_write(const nx_mdio_port_t* port, uint8_t address,
45 uint8_t reg, uint16_t value, nx_time_us_t deadline);
46#ifdef __cplusplus
47}
48#endif
49#endif
nx_result_t nx_mdio_read(const nx_mdio_port_t *port, uint8_t address, uint8_t reg, uint16_t *value, nx_time_us_t deadline)
Read one Clause22 PHY register without retaining output storage.
nx_result_t nx_mdio_write(const nx_mdio_port_t *port, uint8_t address, uint8_t reg, uint16_t value, nx_time_us_t deadline)
Write one Clause22 PHY register, not a PHY-specific policy sequence.
nx_result_t
Operation result; success at submission means admission only.
Definition status.h:21
nx_result_t(* write)(void *, uint8_t, uint8_t, uint16_t, nx_time_us_t)
Definition mdio.h:14
nx_result_t(* read)(void *, uint8_t, uint8_t, uint16_t *, nx_time_us_t)
Definition mdio.h:13
const nx_mdio_ops_t * ops
Definition mdio.h:17
void * context
Definition mdio.h:18
Absolute monotonic microsecond deadlines and wrap extension.
uint64_t nx_time_us_t
Microseconds in one boot/clock domain; no wall-clock semantics.
Definition time.h:20