phy_device
Regular
4.4
: ✅struct phy_device {
struct phy_driver *drv;
struct mii_bus *bus;
struct device dev;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
bool is_c45;
bool is_internal;
bool is_pseudo_fixed_link;
bool has_fixups;
bool suspended;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int addr;
int speed;
int duplex;
int pause;
int asym_pause;
int link;
u32 interrupts;
u32 supported;
u32 advertising;
u32 lp_advertising;
int autoneg;
int link_timeout;
int irq;
void *priv;
struct work_struct phy_queue;
struct delayed_work state_queue;
atomic_t irq_disable;
struct mutex lock;
struct net_device *attached_dev;
u8 mdix;
void (*adjust_link)(struct net_device *);
};
4.8
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
bool is_c45;
bool is_internal;
bool is_pseudo_fixed_link;
bool has_fixups;
bool suspended;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
int link;
u32 interrupts;
u32 supported;
u32 advertising;
u32 lp_advertising;
int autoneg;
int link_timeout;
int irq;
void *priv;
struct work_struct phy_queue;
struct delayed_work state_queue;
atomic_t irq_disable;
struct mutex lock;
struct net_device *attached_dev;
u8 mdix;
void (*adjust_link)(struct net_device *);
};
4.10
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
bool is_c45;
bool is_internal;
bool is_pseudo_fixed_link;
bool has_fixups;
bool suspended;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
int link;
u32 interrupts;
u32 supported;
u32 advertising;
u32 lp_advertising;
u32 eee_broken_modes;
int autoneg;
int link_timeout;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
int irq;
void *priv;
struct work_struct phy_queue;
struct delayed_work state_queue;
atomic_t irq_disable;
struct mutex lock;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*adjust_link)(struct net_device *);
};
4.13
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
bool is_c45;
bool is_internal;
bool is_pseudo_fixed_link;
bool has_fixups;
bool suspended;
bool sysfs_links;
bool loopback_enabled;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
int link;
u32 interrupts;
u32 supported;
u32 advertising;
u32 lp_advertising;
u32 eee_broken_modes;
int autoneg;
int link_timeout;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
int irq;
void *priv;
struct work_struct phy_queue;
struct delayed_work state_queue;
atomic_t irq_disable;
struct mutex lock;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*adjust_link)(struct net_device *);
};
4.15
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
bool is_c45;
bool is_internal;
bool is_pseudo_fixed_link;
bool has_fixups;
bool suspended;
bool sysfs_links;
bool loopback_enabled;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
int link;
u32 interrupts;
u32 supported;
u32 advertising;
u32 lp_advertising;
u32 eee_broken_modes;
int autoneg;
int link_timeout;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct work_struct phy_queue;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
4.18
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int has_fixups;
unsigned int suspended;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
u32 interrupts;
u32 supported;
u32 advertising;
u32 lp_advertising;
u32 eee_broken_modes;
int link_timeout;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct work_struct phy_queue;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
5.0
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int has_fixups;
unsigned int suspended;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[1];
long unsigned int advertising[1];
long unsigned int lp_advertising[1];
u32 eee_broken_modes;
int link_timeout;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
5.3
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
5.4
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
5.8
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
5.11
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
5.13
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int is_on_sfp_module;
unsigned int mac_managed_pm;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
5.15
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int is_on_sfp_module;
unsigned int mac_managed_pm;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
5.19
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int is_on_sfp_module;
unsigned int mac_managed_pm;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
unsigned int irq_suspended;
unsigned int irq_rerun;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
u8 mdix;
u8 mdix_ctrl;
int pma_extable;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
6.2
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
struct device_link *devlink;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int is_on_sfp_module;
unsigned int mac_managed_pm;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
unsigned int irq_suspended;
unsigned int irq_rerun;
int rate_matching;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
long unsigned int host_interfaces[1];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
struct pse_control *psec;
u8 mdix;
u8 mdix_ctrl;
int pma_extable;
unsigned int link_down_events;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
6.5
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
struct device_link *devlink;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int is_on_sfp_module;
unsigned int mac_managed_pm;
unsigned int wol_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
unsigned int irq_suspended;
unsigned int irq_rerun;
int rate_matching;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
long unsigned int supported_eee[2];
long unsigned int advertising_eee[2];
bool eee_enabled;
long unsigned int host_interfaces[1];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
struct list_head leds;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
struct pse_control *psec;
u8 mdix;
u8 mdix_ctrl;
int pma_extable;
unsigned int link_down_events;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
6.8
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
struct device_link *devlink;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int downshifted_rate;
unsigned int is_on_sfp_module;
unsigned int mac_managed_pm;
unsigned int wol_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
unsigned int irq_suspended;
unsigned int irq_rerun;
int rate_matching;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
long unsigned int possible_interfaces[1];
int speed;
int duplex;
int port;
int pause;
int asym_pause;
u8 master_slave_get;
u8 master_slave_set;
u8 master_slave_state;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
long unsigned int supported_eee[2];
long unsigned int advertising_eee[2];
bool eee_enabled;
long unsigned int host_interfaces[1];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
struct list_head leds;
int irq;
void *priv;
struct phy_package_shared *shared;
struct sk_buff *skb;
void *ehdr;
struct nlattr *nest;
struct delayed_work state_queue;
struct mutex lock;
bool sfp_bus_attached;
struct sfp_bus *sfp_bus;
struct phylink *phylink;
struct net_device *attached_dev;
struct mii_timestamper *mii_ts;
struct pse_control *psec;
u8 mdix;
u8 mdix_ctrl;
int pma_extable;
unsigned int link_down_events;
void (*phy_link_change)(struct phy_device *, bool);
void (*adjust_link)(struct net_device *);
const struct macsec_ops *macsec_ops;
};
arm64
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
armhf
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[3];
long unsigned int advertising[3];
long unsigned int lp_advertising[3];
long unsigned int adv_old[3];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
ppc64el
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
riscv64
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
aws
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
azure
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
gcp
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
lowlatency
: ✅struct phy_device {
struct mdio_device mdio;
struct phy_driver *drv;
u32 phy_id;
struct phy_c45_device_ids c45_ids;
unsigned int is_c45;
unsigned int is_internal;
unsigned int is_pseudo_fixed_link;
unsigned int is_gigabit_capable;
unsigned int has_fixups;
unsigned int suspended;
unsigned int suspended_by_mdio_bus;
unsigned int sysfs_links;
unsigned int loopback_enabled;
unsigned int autoneg;
unsigned int link;
unsigned int autoneg_complete;
unsigned int interrupts;
enum phy_state state;
u32 dev_flags;
phy_interface_t interface;
int speed;
int duplex;
int pause;
int asym_pause;
long unsigned int supported[2];
long unsigned int advertising[2];
long unsigned int lp_advertising[2];
long unsigned int adv_old[2];
u32 eee_broken_modes;
struct phy_led_trigger *phy_led_triggers;
unsigned int phy_num_led_triggers;
struct phy_led_trigger *last_triggered;
struct phy_led_trigger *led_link_trigger;
int irq;
void *priv;
struct delayed_work state_queue;
struct mutex lock;
struct phylink *phylink;
struct net_device *attached_dev;
u8 mdix;
u8 mdix_ctrl;
void (*phy_link_change)(struct phy_device *, bool, bool);
void (*adjust_link)(struct net_device *);
};
Regular
4.4
and 4.8
⚠️struct mdio_device mdio
struct mii_bus *bus
struct device dev
int addr
4.8
and 4.10
⚠️u32 eee_broken_modes
struct phy_led_trigger *phy_led_triggers
unsigned int phy_num_led_triggers
struct phy_led_trigger *last_triggered
u8 mdix_ctrl
4.10
and 4.13
⚠️bool sysfs_links
bool loopback_enabled
4.13
and 4.15
⚠️struct phy_led_trigger *led_link_trigger
struct phylink *phylink
void (*phy_link_change)(struct phy_device *, bool, bool)
atomic_t irq_disable
4.15
and 4.18
⚠️bool is_c45
➡️ unsigned int is_c45
bool is_internal
➡️ unsigned int is_internal
bool is_pseudo_fixed_link
➡️ unsigned int is_pseudo_fixed_link
bool has_fixups
➡️ unsigned int has_fixups
bool suspended
➡️ unsigned int suspended
bool sysfs_links
➡️ unsigned int sysfs_links
bool loopback_enabled
➡️ unsigned int loopback_enabled
int link
➡️ unsigned int link
int autoneg
➡️ unsigned int autoneg
4.18
and 5.0
⚠️struct work_struct phy_queue
u32 interrupts
➡️ unsigned int interrupts
u32 supported
➡️ long unsigned int supported[1]
u32 advertising
➡️ long unsigned int advertising[1]
u32 lp_advertising
➡️ long unsigned int lp_advertising[1]
5.0
and 5.3
⚠️unsigned int is_gigabit_capable
unsigned int autoneg_complete
int link_timeout
long unsigned int supported[1]
➡️ long unsigned int supported[2]
long unsigned int advertising[1]
➡️ long unsigned int advertising[2]
long unsigned int lp_advertising[1]
➡️ long unsigned int lp_advertising[2]
5.3
and 5.4
⚠️unsigned int suspended_by_mdio_bus
long unsigned int adv_old[2]
5.4
and 5.8
⚠️unsigned int downshifted_rate
u8 master_slave_get
u8 master_slave_set
u8 master_slave_state
struct phy_package_shared *shared
struct sk_buff *skb
void *ehdr
struct nlattr *nest
bool sfp_bus_attached
struct sfp_bus *sfp_bus
struct mii_timestamper *mii_ts
const struct macsec_ops *macsec_ops
void (*phy_link_change)(struct phy_device *, bool, bool)
➡️ void (*phy_link_change)(struct phy_device *, bool)
5.8
and 5.11
⚠️int port
5.11
and 5.13
⚠️unsigned int is_on_sfp_module
unsigned int mac_managed_pm
5.13
and 5.15
✅
5.15
and 5.19
⚠️unsigned int irq_suspended
unsigned int irq_rerun
int pma_extable
5.19
and 6.2
⚠️struct device_link *devlink
int rate_matching
long unsigned int host_interfaces[1]
struct pse_control *psec
unsigned int link_down_events
const struct macsec_ops *macsec_ops
➡️ const struct macsec_ops *macsec_ops
6.2
and 6.5
⚠️unsigned int wol_enabled
long unsigned int supported_eee[2]
long unsigned int advertising_eee[2]
bool eee_enabled
struct list_head leds
6.5
and 6.8
⚠️long unsigned int possible_interfaces[1]
amd64
and arm64
✅
amd64
and armhf
⚠️long unsigned int supported[2]
➡️ long unsigned int supported[3]
long unsigned int advertising[2]
➡️ long unsigned int advertising[3]
long unsigned int lp_advertising[2]
➡️ long unsigned int lp_advertising[3]
long unsigned int adv_old[2]
➡️ long unsigned int adv_old[3]
amd64
and ppc64el
✅
amd64
and riscv64
✅
generic
and aws
✅
generic
and azure
⚠️struct phy_led_trigger *phy_led_triggers
unsigned int phy_num_led_triggers
struct phy_led_trigger *last_triggered
struct phy_led_trigger *led_link_trigger
generic
and gcp
✅
generic
and lowlatency
✅