linux/include/linux/phy_fixed.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __PHY_FIXED_H
   3#define __PHY_FIXED_H
   4
   5struct fixed_phy_status {
   6        int link;
   7        int speed;
   8        int duplex;
   9        int pause;
  10        int asym_pause;
  11};
  12
  13struct device_node;
  14
  15#if IS_ENABLED(CONFIG_FIXED_PHY)
  16extern int fixed_phy_add(unsigned int irq, int phy_id,
  17                         struct fixed_phy_status *status,
  18                         int link_gpio);
  19extern struct phy_device *fixed_phy_register(unsigned int irq,
  20                                             struct fixed_phy_status *status,
  21                                             int link_gpio,
  22                                             struct device_node *np);
  23extern void fixed_phy_unregister(struct phy_device *phydev);
  24extern int fixed_phy_set_link_update(struct phy_device *phydev,
  25                        int (*link_update)(struct net_device *,
  26                                           struct fixed_phy_status *));
  27#else
  28static inline int fixed_phy_add(unsigned int irq, int phy_id,
  29                                struct fixed_phy_status *status,
  30                                int link_gpio)
  31{
  32        return -ENODEV;
  33}
  34static inline struct phy_device *fixed_phy_register(unsigned int irq,
  35                                                struct fixed_phy_status *status,
  36                                                int gpio_link,
  37                                                struct device_node *np)
  38{
  39        return ERR_PTR(-ENODEV);
  40}
  41static inline void fixed_phy_unregister(struct phy_device *phydev)
  42{
  43}
  44static inline int fixed_phy_set_link_update(struct phy_device *phydev,
  45                        int (*link_update)(struct net_device *,
  46                                           struct fixed_phy_status *))
  47{
  48        return -ENODEV;
  49}
  50#endif /* CONFIG_FIXED_PHY */
  51
  52#endif /* __PHY_FIXED_H */
  53