blob: 44ce48b7f3a9227b0de334fb5ff918f7c0d900f5 [file] [log] [blame]
/* 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__ */