#include <linux/module.h>
#include <linux/phy.h>
#define TI_DP83848C_PHY_ID …
#define TI_DP83620_PHY_ID …
#define NS_DP83848C_PHY_ID …
#define TLK10X_PHY_ID …
#define DP83848_MICR …
#define DP83848_MISR …
#define DP83848_MICR_INT_OE …
#define DP83848_MICR_INTEN …
#define DP83848_MISR_RHF_INT_EN …
#define DP83848_MISR_FHF_INT_EN …
#define DP83848_MISR_ANC_INT_EN …
#define DP83848_MISR_DUP_INT_EN …
#define DP83848_MISR_SPD_INT_EN …
#define DP83848_MISR_LINK_INT_EN …
#define DP83848_MISR_ED_INT_EN …
#define DP83848_MISR_LQM_INT_EN …
#define DP83848_INT_EN_MASK …
#define DP83848_MISR_RHF_INT …
#define DP83848_MISR_FHF_INT …
#define DP83848_MISR_ANC_INT …
#define DP83848_MISR_DUP_INT …
#define DP83848_MISR_SPD_INT …
#define DP83848_MISR_LINK_INT …
#define DP83848_MISR_ED_INT …
#define DP83848_INT_MASK …
static int dp83848_ack_interrupt(struct phy_device *phydev)
{ … }
static int dp83848_config_intr(struct phy_device *phydev)
{ … }
static irqreturn_t dp83848_handle_interrupt(struct phy_device *phydev)
{ … }
static int dp83848_config_init(struct phy_device *phydev)
{ … }
static struct mdio_device_id __maybe_unused dp83848_tbl[] = …;
MODULE_DEVICE_TABLE(mdio, dp83848_tbl);
#define DP83848_PHY_DRIVER(_id, _name, _config_init) …
static struct phy_driver dp83848_driver[] = …;
module_phy_driver(dp83848_driver);
MODULE_DESCRIPTION(…) …;
MODULE_AUTHOR(…) …;
MODULE_LICENSE(…) …;