root/include/linux/phy_led_triggers.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. phy_led_triggers_register
  2. phy_led_triggers_unregister
  3. phy_led_trigger_change_speed

   1 /* SPDX-License-Identifier: GPL-2.0-or-later */
   2 /* Copyright (C) 2016 National Instruments Corp.
   3  */
   4 #ifndef __PHY_LED_TRIGGERS
   5 #define __PHY_LED_TRIGGERS
   6 
   7 struct phy_device;
   8 
   9 #ifdef CONFIG_LED_TRIGGER_PHY
  10 
  11 #include <linux/leds.h>
  12 #include <linux/phy.h>
  13 
  14 #define PHY_LED_TRIGGER_SPEED_SUFFIX_SIZE       11
  15 
  16 #define PHY_LINK_LED_TRIGGER_NAME_SIZE (MII_BUS_ID_SIZE + \
  17                                        FIELD_SIZEOF(struct mdio_device, addr)+\
  18                                        PHY_LED_TRIGGER_SPEED_SUFFIX_SIZE)
  19 
  20 struct phy_led_trigger {
  21         struct led_trigger trigger;
  22         char name[PHY_LINK_LED_TRIGGER_NAME_SIZE];
  23         unsigned int speed;
  24 };
  25 
  26 
  27 extern int phy_led_triggers_register(struct phy_device *phy);
  28 extern void phy_led_triggers_unregister(struct phy_device *phy);
  29 extern void phy_led_trigger_change_speed(struct phy_device *phy);
  30 
  31 #else
  32 
  33 static inline int phy_led_triggers_register(struct phy_device *phy)
  34 {
  35         return 0;
  36 }
  37 static inline void phy_led_triggers_unregister(struct phy_device *phy) { }
  38 static inline void phy_led_trigger_change_speed(struct phy_device *phy) { }
  39 
  40 #endif
  41 
  42 #endif

/* [<][>][^][v][top][bottom][index][help] */