From 20c4ef91bdd1ca6325b15243cadf433f99517afe Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sat, 14 Sep 2024 14:36:55 +0000 Subject: [PATCH] Revert "leds: trigger: Store brightness set by led_trigger_event()" This reverts commit 2bc78ff25fca21b7899b14d43655cec2ea24e22f which is commit 822c91e72eac568ed8d83765634f00decb45666c upstream. It breaks the Android kernel abi and can be brought back in the future in an abi-safe way if it is really needed. Bug: 161946584 Change-Id: If8dc383e04251ba799709f922a570097a65982ac Signed-off-by: Greg Kroah-Hartman --- drivers/leds/led-triggers.c | 6 ++---- include/linux/leds.h | 15 --------------- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/drivers/leds/led-triggers.c b/drivers/leds/led-triggers.c index cdb446cb84af..dddfc301d341 100644 --- a/drivers/leds/led-triggers.c +++ b/drivers/leds/led-triggers.c @@ -193,11 +193,11 @@ int led_trigger_set(struct led_classdev *led_cdev, struct led_trigger *trig) spin_unlock(&trig->leddev_list_lock); led_cdev->trigger = trig; - ret = 0; if (trig->activate) ret = trig->activate(led_cdev); else - led_set_brightness(led_cdev, trig->brightness); + ret = 0; + if (ret) goto err_activate; @@ -372,8 +372,6 @@ void led_trigger_event(struct led_trigger *trig, if (!trig) return; - trig->brightness = brightness; - rcu_read_lock(); list_for_each_entry_rcu(led_cdev, &trig->led_cdevs, trig_list) led_set_brightness(led_cdev, brightness); diff --git a/include/linux/leds.h b/include/linux/leds.h index 79ab2dfd3c72..2bbff7519b73 100644 --- a/include/linux/leds.h +++ b/include/linux/leds.h @@ -356,9 +356,6 @@ struct led_trigger { int (*activate)(struct led_classdev *led_cdev); void (*deactivate)(struct led_classdev *led_cdev); - /* Brightness set by led_trigger_event */ - enum led_brightness brightness; - /* LED-private triggers have this set */ struct led_hw_trigger_type *trigger_type; @@ -412,12 +409,6 @@ static inline void *led_get_trigger_data(struct led_classdev *led_cdev) return led_cdev->trigger_data; } -static inline enum led_brightness -led_trigger_get_brightness(const struct led_trigger *trigger) -{ - return trigger ? trigger->brightness : LED_OFF; -} - #define module_led_trigger(__led_trigger) \ module_driver(__led_trigger, led_trigger_register, \ led_trigger_unregister) @@ -454,12 +445,6 @@ static inline void *led_get_trigger_data(struct led_classdev *led_cdev) return NULL; } -static inline enum led_brightness -led_trigger_get_brightness(const struct led_trigger *trigger) -{ - return LED_OFF; -} - #endif /* CONFIG_LEDS_TRIGGERS */ /* Trigger specific functions */