• Christian Marangi's avatar
    leds: trigger: netdev: add additional specific link speed mode · d5e01266
    Christian Marangi authored
    Add additional modes for specific link speed. Use ethtool APIs to get the
    current link speed and enable the LED accordingly. Under netdev event
    handler the rtnl lock is already held and is not needed to be set to
    access ethtool APIs.
    
    This is especially useful for PHY and Switch that supports LEDs hw
    control for specific link speed. (example scenario a PHY that have 2 LED
    connected one green and one orange where the green is turned on with
    1000mbps speed and orange is turned on with 10mpbs speed)
    
    On mode set from sysfs we check if we have enabled split link speed mode
    and reject enabling generic link mode to prevent wrong and redundant
    configuration.
    
    Rework logic on the set baseline state to support these new modes to
    select if we need to turn on or off the LED.
    
    Add additional modes:
    - link_10: Turn on LED when link speed is 10mbps
    - link_100: Turn on LED when link speed is 100mbps
    - link_1000: Turn on LED when link speed is 1000mbps
    Signed-off-by: default avatarChristian Marangi <ansuelsmth@gmail.com>
    Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
    Acked-by: default avatarLee Jones <lee@kernel.org>
    Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    d5e01266
ledtrig-netdev.c 15.2 KB