#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/phy.h>
#define PHY_ID_LAN867X_REVB1 …
#define PHY_ID_LAN865X_REVB0 …
#define LAN867X_REG_STS2 …
#define LAN867x_RESET_COMPLETE_STS …
#define LAN865X_REG_CFGPARAM_ADDR …
#define LAN865X_REG_CFGPARAM_DATA …
#define LAN865X_REG_CFGPARAM_CTRL …
#define LAN865X_REG_STS2 …
#define LAN865X_CFGPARAM_READ_ENABLE …
static const u32 lan867x_revb1_fixup_registers[12] = …;
static const u16 lan867x_revb1_fixup_values[12] = …;
static const u16 lan867x_revb1_fixup_masks[12] = …;
static const u32 lan865x_revb0_fixup_registers[28] = …;
static const u16 lan865x_revb0_fixup_values[28] = …;
static const u16 lan865x_revb0_fixup_cfg_regs[5] = …;
static int lan865x_revb0_indirect_read(struct phy_device *phydev, u16 addr)
{ … }
static int lan865x_generate_cfg_offsets(struct phy_device *phydev, s8 offsets[2])
{ … }
static int lan865x_read_cfg_params(struct phy_device *phydev, u16 cfg_params[])
{ … }
static int lan865x_write_cfg_params(struct phy_device *phydev, u16 cfg_params[])
{ … }
static int lan865x_setup_cfgparam(struct phy_device *phydev)
{ … }
static int lan865x_revb0_config_init(struct phy_device *phydev)
{ … }
static int lan867x_revb1_config_init(struct phy_device *phydev)
{ … }
static int lan86xx_read_status(struct phy_device *phydev)
{ … }
static struct phy_driver microchip_t1s_driver[] = …;
module_phy_driver(microchip_t1s_driver);
static struct mdio_device_id __maybe_unused tbl[] = …;
MODULE_DEVICE_TABLE(mdio, tbl);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;