lkml.org 
[lkml]   [2021]   [Nov]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC PATCH v3 4/8] leds: trigger: netdev: rename and expose NETDEV trigger enum modes
    Date
    Rename NETDEV trigger enum modes to a more simbolic name and move them
    in leds.h to make them accessible by any user.

    Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
    ---
    drivers/leds/trigger/ledtrig-netdev.c | 31 ++++++++++++---------------
    include/linux/leds.h | 7 ++++++
    2 files changed, 21 insertions(+), 17 deletions(-)

    diff --git a/drivers/leds/trigger/ledtrig-netdev.c b/drivers/leds/trigger/ledtrig-netdev.c
    index 66a81cc9b64d..0a3c0b54dbb9 100644
    --- a/drivers/leds/trigger/ledtrig-netdev.c
    +++ b/drivers/leds/trigger/ledtrig-netdev.c
    @@ -51,9 +51,6 @@ struct led_netdev_data {

    unsigned long mode;
    bool carrier_link_up;
    -#define NETDEV_LED_LINK 0
    -#define NETDEV_LED_TX 1
    -#define NETDEV_LED_RX 2
    };

    enum netdev_led_attr {
    @@ -76,7 +73,7 @@ static void set_baseline_state(struct led_netdev_data *trigger_data)
    if (!trigger_data->carrier_link_up) {
    led_set_brightness(led_cdev, LED_OFF);
    } else {
    - if (test_bit(NETDEV_LED_LINK, &trigger_data->mode))
    + if (test_bit(TRIGGER_NETDEV_LINK, &trigger_data->mode))
    led_set_brightness(led_cdev,
    led_cdev->blink_brightness);
    else
    @@ -85,8 +82,8 @@ static void set_baseline_state(struct led_netdev_data *trigger_data)
    /* If we are looking for RX/TX start periodically
    * checking stats
    */
    - if (test_bit(NETDEV_LED_TX, &trigger_data->mode) ||
    - test_bit(NETDEV_LED_RX, &trigger_data->mode))
    + if (test_bit(TRIGGER_NETDEV_TX, &trigger_data->mode) ||
    + test_bit(TRIGGER_NETDEV_RX, &trigger_data->mode))
    schedule_delayed_work(&trigger_data->work, 0);
    }
    }
    @@ -153,13 +150,13 @@ static ssize_t netdev_led_attr_show(struct device *dev, char *buf,

    switch (attr) {
    case NETDEV_ATTR_LINK:
    - bit = NETDEV_LED_LINK;
    + bit = TRIGGER_NETDEV_LINK;
    break;
    case NETDEV_ATTR_TX:
    - bit = NETDEV_LED_TX;
    + bit = TRIGGER_NETDEV_TX;
    break;
    case NETDEV_ATTR_RX:
    - bit = NETDEV_LED_RX;
    + bit = TRIGGER_NETDEV_RX;
    break;
    default:
    return -EINVAL;
    @@ -182,13 +179,13 @@ static ssize_t netdev_led_attr_store(struct device *dev, const char *buf,

    switch (attr) {
    case NETDEV_ATTR_LINK:
    - bit = NETDEV_LED_LINK;
    + bit = TRIGGER_NETDEV_LINK;
    break;
    case NETDEV_ATTR_TX:
    - bit = NETDEV_LED_TX;
    + bit = TRIGGER_NETDEV_TX;
    break;
    case NETDEV_ATTR_RX:
    - bit = NETDEV_LED_RX;
    + bit = TRIGGER_NETDEV_RX;
    break;
    default:
    return -EINVAL;
    @@ -358,21 +355,21 @@ static void netdev_trig_work(struct work_struct *work)
    }

    /* If we are not looking for RX/TX then return */
    - if (!test_bit(NETDEV_LED_TX, &trigger_data->mode) &&
    - !test_bit(NETDEV_LED_RX, &trigger_data->mode))
    + if (!test_bit(TRIGGER_NETDEV_TX, &trigger_data->mode) &&
    + !test_bit(TRIGGER_NETDEV_RX, &trigger_data->mode))
    return;

    dev_stats = dev_get_stats(trigger_data->net_dev, &temp);
    new_activity =
    - (test_bit(NETDEV_LED_TX, &trigger_data->mode) ?
    + (test_bit(TRIGGER_NETDEV_TX, &trigger_data->mode) ?
    dev_stats->tx_packets : 0) +
    - (test_bit(NETDEV_LED_RX, &trigger_data->mode) ?
    + (test_bit(TRIGGER_NETDEV_RX, &trigger_data->mode) ?
    dev_stats->rx_packets : 0);

    if (trigger_data->last_activity != new_activity) {
    led_stop_software_blink(trigger_data->led_cdev);

    - invert = test_bit(NETDEV_LED_LINK, &trigger_data->mode);
    + invert = test_bit(TRIGGER_NETDEV_LINK, &trigger_data->mode);
    interval = jiffies_to_msecs(
    atomic_read(&trigger_data->interval));
    /* base state is ON (link present) */
    diff --git a/include/linux/leds.h b/include/linux/leds.h
    index 00bc4d6ed7ca..087debe6716d 100644
    --- a/include/linux/leds.h
    +++ b/include/linux/leds.h
    @@ -548,6 +548,13 @@ static inline void *led_get_trigger_data(struct led_classdev *led_cdev)

    #endif /* CONFIG_LEDS_TRIGGERS */

    +/* Trigger specific enum */
    +enum led_trigger_netdev_modes {
    + TRIGGER_NETDEV_LINK,
    + TRIGGER_NETDEV_TX,
    + TRIGGER_NETDEV_RX,
    +};
    +
    /* Trigger specific functions */
    #ifdef CONFIG_LEDS_TRIGGER_DISK
    void ledtrig_disk_activity(bool write);
    --
    2.32.0
    \
     
     \ /
      Last update: 2021-11-09 03:27    [W:4.760 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site