summaryrefslogtreecommitdiff
path: root/drivers/misc
diff options
context:
space:
mode:
authorQuentin Schulz <[email protected]>2025-11-20 13:48:06 +0100
committerTom Rini <[email protected]>2026-03-18 13:07:36 -0600
commitfcbf81694c9399a71ac100b4de15089c3e09dd8c (patch)
tree1f990094541a531354af372ed4fd2e044227391a /drivers/misc
parent765a126a2f1f5eff82276e9fecbb0745e9fce77b (diff)
led: remove legacy API
No user of the legacy LED API anymore (except Sunxi with the PinePhone but that is now a Sunxi-specific implementation), so let's remove anything related. Signed-off-by: Quentin Schulz <[email protected]>
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/Makefile2
-rw-r--r--drivers/misc/gpio_led.c52
-rw-r--r--drivers/misc/status_led.c124
3 files changed, 0 insertions, 178 deletions
diff --git a/drivers/misc/Makefile b/drivers/misc/Makefile
index 1d950f7a0ab..e2170212e5a 100644
--- a/drivers/misc/Makefile
+++ b/drivers/misc/Makefile
@@ -48,8 +48,6 @@ obj-$(CONFIG_IHS_FPGA) += ihs_fpga.o
obj-$(CONFIG_IMX8) += imx8/
obj-$(CONFIG_IMX_ELE) += imx_ele/
obj-$(CONFIG_K3_FUSE) += k3_fuse.o
-obj-$(CONFIG_LED_STATUS) += status_led.o
-obj-$(CONFIG_LED_STATUS_GPIO) += gpio_led.o
obj-$(CONFIG_MPC83XX_SERDES) += mpc83xx_serdes.o
obj-$(CONFIG_$(PHASE_)LS2_SFP) += ls2_sfp.o
obj-$(CONFIG_$(PHASE_)MXC_OCOTP) += mxc_ocotp.o
diff --git a/drivers/misc/gpio_led.c b/drivers/misc/gpio_led.c
index e63689967a7..69b2e2f76bd 100644
--- a/drivers/misc/gpio_led.c
+++ b/drivers/misc/gpio_led.c
@@ -1,55 +1,3 @@
-/*
- * Status LED driver based on GPIO access conventions of Linux
- *
- * Copyright (C) 2010 Thomas Chou <[email protected]>
- * Licensed under the GPL-2 or later.
- */
-
-#include <status_led.h>
-#include <asm/gpio.h>
-
-#ifndef CFG_GPIO_LED_INVERTED_TABLE
-#define CFG_GPIO_LED_INVERTED_TABLE {}
-#endif
-
-static led_id_t gpio_led_inv[] = CFG_GPIO_LED_INVERTED_TABLE;
-
-static int gpio_led_gpio_value(led_id_t mask, int state)
-{
- int i, gpio_value = (state == CONFIG_LED_STATUS_ON);
-
- for (i = 0; i < ARRAY_SIZE(gpio_led_inv); i++) {
- if (gpio_led_inv[i] == mask)
- gpio_value = !gpio_value;
- }
-
- return gpio_value;
-}
-
-void __led_init(led_id_t mask, int state)
-{
- int gpio_value;
-
- if (gpio_request(mask, "gpio_led") != 0) {
- printf("%s: failed requesting GPIO%lu!\n", __func__, mask);
- return;
- }
-
- gpio_value = gpio_led_gpio_value(mask, state);
- gpio_direction_output(mask, gpio_value);
-}
-
-void __led_set(led_id_t mask, int state)
-{
- int gpio_value = gpio_led_gpio_value(mask, state);
-
- gpio_set_value(mask, gpio_value);
-}
-
-void __led_toggle(led_id_t mask)
-{
- gpio_set_value(mask, !gpio_get_value(mask));
-}
#ifdef CONFIG_GPIO_LED_STUBS
diff --git a/drivers/misc/status_led.c b/drivers/misc/status_led.c
deleted file mode 100644
index 3b1baa4f840..00000000000
--- a/drivers/misc/status_led.c
+++ /dev/null
@@ -1,124 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+
-/*
- * (C) Copyright 2000-2003
- * Wolfgang Denk, DENX Software Engineering, [email protected].
- */
-
-#include <status_led.h>
-#include <linux/types.h>
-
-/*
- * The purpose of this code is to signal the operational status of a
- * target which usually boots over the network; while running in
- * U-Boot, a status LED is blinking. As soon as a valid BOOTP reply
- * message has been received, the LED is turned off. The Linux
- * kernel, once it is running, will start blinking the LED again,
- * with another frequency.
- */
-
-/* ------------------------------------------------------------------------- */
-
-typedef struct {
- led_id_t mask;
- int state;
- int period;
- int cnt;
-} led_dev_t;
-
-led_dev_t led_dev[] = {
- { CONFIG_LED_STATUS_BIT,
- CONFIG_LED_STATUS_STATE,
- LED_STATUS_PERIOD,
- 0,
- },
-#if defined(CONFIG_LED_STATUS1)
- { CONFIG_LED_STATUS_BIT1,
- CONFIG_LED_STATUS_STATE1,
- LED_STATUS_PERIOD1,
- 0,
- },
-#endif
-#if defined(CONFIG_LED_STATUS2)
- { CONFIG_LED_STATUS_BIT2,
- CONFIG_LED_STATUS_STATE2,
- LED_STATUS_PERIOD2,
- 0,
- },
-#endif
-#if defined(CONFIG_LED_STATUS3)
- { CONFIG_LED_STATUS_BIT3,
- CONFIG_LED_STATUS_STATE3,
- LED_STATUS_PERIOD3,
- 0,
- },
-#endif
-#if defined(CONFIG_LED_STATUS4)
- { CONFIG_LED_STATUS_BIT4,
- CONFIG_LED_STATUS_STATE4,
- LED_STATUS_PERIOD4,
- 0,
- },
-#endif
-#if defined(CONFIG_LED_STATUS5)
- { CONFIG_LED_STATUS_BIT5,
- CONFIG_LED_STATUS_STATE5,
- LED_STATUS_PERIOD5,
- 0,
- },
-#endif
-};
-
-#define MAX_LED_DEV (sizeof(led_dev)/sizeof(led_dev_t))
-
-static int status_led_init_done = 0;
-
-void status_led_init(void)
-{
- led_dev_t *ld;
- int i;
-
- for (i = 0, ld = led_dev; i < MAX_LED_DEV; i++, ld++)
- __led_init (ld->mask, ld->state);
- status_led_init_done = 1;
-}
-
-void status_led_tick(ulong timestamp)
-{
- led_dev_t *ld;
- int i;
-
- if (!status_led_init_done)
- status_led_init();
-
- for (i = 0, ld = led_dev; i < MAX_LED_DEV; i++, ld++) {
-
- if (ld->state != CONFIG_LED_STATUS_BLINKING)
- continue;
-
- if (++ld->cnt >= ld->period) {
- __led_toggle (ld->mask);
- ld->cnt -= ld->period;
- }
-
- }
-}
-
-void status_led_set(int led, int state)
-{
- led_dev_t *ld;
-
- if (led < 0 || led >= MAX_LED_DEV)
- return;
-
- if (!status_led_init_done)
- status_led_init();
-
- ld = &led_dev[led];
-
- ld->state = state;
- if (state == CONFIG_LED_STATUS_BLINKING) {
- ld->cnt = 0; /* always start with full period */
- state = CONFIG_LED_STATUS_ON; /* always start with LED _ON_ */
- }
- __led_set (ld->mask, state);
-}