Merge tag 'leds-for-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds
Pull LED updates from Jacek Anaszewski: "LED triggers improvements make the biggest part of this pull request. The most striking ones, that allowed for nice cleanups in the triggers are: - centralized handling of creation and removal of trigger sysfs attributes via attribute group - addition of module_led_trigger() helper The other things that need to be mentioned: New features and improvements to existing LED class drivers: - lt3593: add DT support, switch to gpiod interface - lm3692x: support LED sync configuration, change OF calls to fwnode calls - apu: modify PC Engines apu/apu2 driver to support apu3 Change in the drivers/net/can/led.c: - mark led trigger as broken since it's in the way for the further cleanups. It implements a subset of the netdev trigger and an Ack is needed from someone who can actually test and confirm that the netdev trigger works for can devices" * tag 'leds-for-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds: (32 commits) leds: ns2: Change unsigned to unsigned int usb: simplify usbport trigger leds: gpio trigger: simplifications from core changes leds: backlight trigger: simplifications from core changes leds: activity trigger: simplifications from core changes leds: default-on trigger: make use of module_led_trigger() leds: heartbeat trigger: simplifications from core changes leds: oneshot trigger: simplifications from core changes leds: transient trigger: simplifications from core changes leds: timer trigger: simplifications from core changes leds: netdev trigger: simplifications from core changes leds: triggers: new function led_set_trigger_data() leds: triggers: define module_led_trigger helper leds: triggers: handle .trigger_data and .activated() in the core leds: triggers: add device attribute support leds: triggers: let struct led_trigger::activate() return an error code leds: triggers: make the MODULE_LICENSE string match the actual license leds: lm3692x: Support LED sync configuration dt: bindings: lm3692x: Update binding for LED sync control leds: lm3692x: Change DT calls to fwnode calls ...
This commit is contained in:
@@ -52,13 +52,15 @@ void ieee80211_free_led_names(struct ieee80211_local *local)
|
||||
kfree(local->radio_led.name);
|
||||
}
|
||||
|
||||
static void ieee80211_tx_led_activate(struct led_classdev *led_cdev)
|
||||
static int ieee80211_tx_led_activate(struct led_classdev *led_cdev)
|
||||
{
|
||||
struct ieee80211_local *local = container_of(led_cdev->trigger,
|
||||
struct ieee80211_local,
|
||||
tx_led);
|
||||
|
||||
atomic_inc(&local->tx_led_active);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ieee80211_tx_led_deactivate(struct led_classdev *led_cdev)
|
||||
@@ -70,13 +72,15 @@ static void ieee80211_tx_led_deactivate(struct led_classdev *led_cdev)
|
||||
atomic_dec(&local->tx_led_active);
|
||||
}
|
||||
|
||||
static void ieee80211_rx_led_activate(struct led_classdev *led_cdev)
|
||||
static int ieee80211_rx_led_activate(struct led_classdev *led_cdev)
|
||||
{
|
||||
struct ieee80211_local *local = container_of(led_cdev->trigger,
|
||||
struct ieee80211_local,
|
||||
rx_led);
|
||||
|
||||
atomic_inc(&local->rx_led_active);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ieee80211_rx_led_deactivate(struct led_classdev *led_cdev)
|
||||
@@ -88,13 +92,15 @@ static void ieee80211_rx_led_deactivate(struct led_classdev *led_cdev)
|
||||
atomic_dec(&local->rx_led_active);
|
||||
}
|
||||
|
||||
static void ieee80211_assoc_led_activate(struct led_classdev *led_cdev)
|
||||
static int ieee80211_assoc_led_activate(struct led_classdev *led_cdev)
|
||||
{
|
||||
struct ieee80211_local *local = container_of(led_cdev->trigger,
|
||||
struct ieee80211_local,
|
||||
assoc_led);
|
||||
|
||||
atomic_inc(&local->assoc_led_active);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ieee80211_assoc_led_deactivate(struct led_classdev *led_cdev)
|
||||
@@ -106,13 +112,15 @@ static void ieee80211_assoc_led_deactivate(struct led_classdev *led_cdev)
|
||||
atomic_dec(&local->assoc_led_active);
|
||||
}
|
||||
|
||||
static void ieee80211_radio_led_activate(struct led_classdev *led_cdev)
|
||||
static int ieee80211_radio_led_activate(struct led_classdev *led_cdev)
|
||||
{
|
||||
struct ieee80211_local *local = container_of(led_cdev->trigger,
|
||||
struct ieee80211_local,
|
||||
radio_led);
|
||||
|
||||
atomic_inc(&local->radio_led_active);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ieee80211_radio_led_deactivate(struct led_classdev *led_cdev)
|
||||
@@ -124,13 +132,15 @@ static void ieee80211_radio_led_deactivate(struct led_classdev *led_cdev)
|
||||
atomic_dec(&local->radio_led_active);
|
||||
}
|
||||
|
||||
static void ieee80211_tpt_led_activate(struct led_classdev *led_cdev)
|
||||
static int ieee80211_tpt_led_activate(struct led_classdev *led_cdev)
|
||||
{
|
||||
struct ieee80211_local *local = container_of(led_cdev->trigger,
|
||||
struct ieee80211_local,
|
||||
tpt_led);
|
||||
|
||||
atomic_inc(&local->tpt_led_active);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ieee80211_tpt_led_deactivate(struct led_classdev *led_cdev)
|
||||
|
Reference in New Issue
Block a user