#include "bcm-phy-lib.h"
#include <linux/brcmphy.h>
#include <linux/module.h>
#include <linux/netdevice.h>
#include <linux/phy.h>
struct bcm_omega_phy_priv { … };
#define MII_BCM_CYGNUS_AFE_VDAC_ICTRL_0 …
static int bcm_cygnus_afe_config(struct phy_device *phydev)
{ … }
static int bcm_cygnus_config_init(struct phy_device *phydev)
{ … }
static int bcm_cygnus_resume(struct phy_device *phydev)
{ … }
static int bcm_omega_config_init(struct phy_device *phydev)
{ … }
static int bcm_omega_resume(struct phy_device *phydev)
{ … }
static int bcm_omega_get_tunable(struct phy_device *phydev,
struct ethtool_tunable *tuna, void *data)
{ … }
static int bcm_omega_set_tunable(struct phy_device *phydev,
struct ethtool_tunable *tuna,
const void *data)
{ … }
static void bcm_omega_get_phy_stats(struct phy_device *phydev,
struct ethtool_stats *stats, u64 *data)
{ … }
static int bcm_omega_probe(struct phy_device *phydev)
{ … }
static struct phy_driver bcm_cygnus_phy_driver[] = …;
static struct mdio_device_id __maybe_unused bcm_cygnus_phy_tbl[] = …;
MODULE_DEVICE_TABLE(mdio, bcm_cygnus_phy_tbl);
module_phy_driver(bcm_cygnus_phy_driver);
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;
MODULE_AUTHOR(…) …;