| /* SPDX-License-Identifier: GPL-2.0-only */ |
| |
| #ifndef __DEVICE_MDIO_H__ |
| #define __DEVICE_MDIO_H__ |
| |
| #include <device/device.h> |
| #include <types.h> |
| |
| struct mdio_bus_operations { |
| uint16_t (*read)(struct device *dev, uint8_t phy_adr, uint8_t reg_adr); |
| void (*write)(struct device *dev, uint8_t phy_adr, uint8_t reg_adr, uint16_t data); |
| }; |
| |
| /* Helper for getting mdio operations from a device */ |
| const struct mdio_bus_operations *dev_get_mdio_ops(struct device *dev); |
| |
| uint16_t mdio_read(struct device *dev, uint8_t offset); |
| void mdio_write(struct device *dev, uint8_t offset, uint16_t val); |
| |
| #endif /* __DEVICE_MDIO_H__ */ |