#include <linux/netdevice.h>
#include <linux/pci.h>
#include <linux/phylink.h>
#include "tn40.h"
#define TN40_MDIO_DEVAD_MASK …
#define TN40_MDIO_PRTAD_MASK …
#define TN40_MDIO_CMD_VAL(device, port) …
#define TN40_MDIO_CMD_READ …
static void tn40_mdio_set_speed(struct tn40_priv *priv, u32 speed)
{ … }
static u32 tn40_mdio_stat(struct tn40_priv *priv)
{ … }
static int tn40_mdio_wait_nobusy(struct tn40_priv *priv, u32 *val)
{ … }
static int tn40_mdio_read(struct tn40_priv *priv, int port, int device,
u16 regnum)
{ … }
static int tn40_mdio_write(struct tn40_priv *priv, int port, int device,
u16 regnum, u16 data)
{ … }
static int tn40_mdio_read_c45(struct mii_bus *mii_bus, int addr, int devnum,
int regnum)
{ … }
static int tn40_mdio_write_c45(struct mii_bus *mii_bus, int addr, int devnum,
int regnum, u16 val)
{ … }
int tn40_mdiobus_init(struct tn40_priv *priv)
{ … }