From: Christian Marangi <ansuelsmth@gmail.com>
To: Simon Glass <sjg@chromium.org>, Tom Rini <trini@konsulko.com>,
Joe Hershberger <joe.hershberger@ni.com>,
Ramon Fried <rfried.dev@gmail.com>,
AKASHI Takahiro <akashi.tkhro@gmail.com>,
Christian Marangi <ansuelsmth@gmail.com>,
Ilias Apalodimas <ilias.apalodimas@linaro.org>,
Etienne Carriere <etienne.carriere@foss.st.com>,
Caleb Connolly <caleb.connolly@linaro.org>,
Algapally Santosh Sagar <santoshsagar.algapally@amd.com>,
Sean Anderson <seanga2@gmail.com>,
Eddie James <eajames@linux.ibm.com>,
Mattijs Korpershoek <mkorpershoek@baylibre.com>,
Alexander Gendin <agendin@matrox.com>,
Yang Xiwen <forbidden405@outlook.com>,
Dario Binacchi <dario.binacchi@amarulasolutions.com>,
Heinrich Schuchardt <xypron.glpk@gmx.de>,
Miquel Raynal <miquel.raynal@bootlin.com>,
Arseniy Krasnov <avkrasnov@salutedevices.com>,
Heiko Schocher <hs@denx.de>,
Michael Trimarchi <michael@amarulasolutions.com>,
Martin Kurbanov <mmkurbanov@salutedevices.com>,
Alexey Romanov <avromanov@salutedevices.com>,
Artur Rojek <artur@conclusive.pl>,
Rasmus Villemoes <rasmus.villemoes@prevas.dk>,
Leo Yu-Chi Liang <ycliang@andestech.com>,
Vasileios Amoiridis <vassilisamir@gmail.com>,
Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>,
Michael Polyntsov <michael.polyntsov@iopsys.eu>,
Doug Zobel <douglas.zobel@climate.com>,
Marek Vasut <marex@denx.de>,
u-boot@lists.denx.de, John Crispin <john@phrozen.org>
Subject: [PATCH v5 04/11] common: board_r: rework BOOT LED handling
Date: Tue, 1 Oct 2024 14:24:37 +0200 [thread overview]
Message-ID: <20241001122511.8832-5-ansuelsmth@gmail.com> (raw)
In-Reply-To: <20241001122511.8832-1-ansuelsmth@gmail.com>
Rework BOOT LED handling. There is currently one legacy implementation
for BOOT LED from Status Led API.
This work on ancient implementation used by BOOTP by setting the LED
to Blink on boot and to turn it OFF when the firmware was correctly
received by network.
Now that we new LED implementation have support for LED boot, rework
this by also set the new BOOT LED to blink and also set it to ON before
entering main loop to confirm successful boot.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
---
common/board_r.c | 28 ++++++++++++++++++++--------
include/status_led.h | 13 +++++++++++++
2 files changed, 33 insertions(+), 8 deletions(-)
diff --git a/common/board_r.c b/common/board_r.c
index d4ba245ac69..c3f8dd5d4ee 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -39,6 +39,7 @@
#include <initcall.h>
#include <kgdb.h>
#include <irq_func.h>
+#include <led.h>
#include <malloc.h>
#include <mapmem.h>
#include <miiphy.h>
@@ -459,17 +460,28 @@ static int initr_malloc_bootparams(void)
}
#endif
-#if defined(CONFIG_LED_STATUS)
static int initr_status_led(void)
{
-#if defined(CONFIG_LED_STATUS_BOOT)
- status_led_set(CONFIG_LED_STATUS_BOOT, CONFIG_LED_STATUS_BLINKING);
-#else
status_led_init();
-#endif
+
+ return 0;
+}
+
+static int initr_boot_led_blink(void)
+{
+ status_led_boot_blink();
+
+ led_boot_blink();
+
+ return 0;
+}
+
+static int initr_boot_led_on(void)
+{
+ led_boot_on();
+
return 0;
}
-#endif
#ifdef CONFIG_CMD_NET
static int initr_net(void)
@@ -713,9 +725,8 @@ static init_fnc_t init_sequence_r[] = {
#if defined(CONFIG_MICROBLAZE) || defined(CONFIG_M68K)
timer_init, /* initialize timer */
#endif
-#if defined(CONFIG_LED_STATUS)
initr_status_led,
-#endif
+ initr_boot_led_blink,
/* PPC has a udelay(20) here dating from 2002. Why? */
#ifdef CONFIG_BOARD_LATE_INIT
board_late_init,
@@ -738,6 +749,7 @@ static init_fnc_t init_sequence_r[] = {
#if defined(CFG_PRAM)
initr_mem,
#endif
+ initr_boot_led_on,
run_main_loop,
};
diff --git a/include/status_led.h b/include/status_led.h
index 6707ab1d29d..1282022253e 100644
--- a/include/status_led.h
+++ b/include/status_led.h
@@ -39,6 +39,13 @@ void status_led_init(void);
void status_led_tick(unsigned long timestamp);
void status_led_set(int led, int state);
+static inline void status_led_boot_blink(void)
+{
+#ifdef CONFIG_LED_STATUS_BOOT_ENABLE
+ status_led_set(CONFIG_LED_STATUS_BOOT, CONFIG_LED_STATUS_BLINKING);
+#endif
+}
+
/***** MVS v1 **********************************************************/
#if (defined(CONFIG_MVS) && CONFIG_MVS < 2)
# define STATUS_LED_PAR im_ioport.iop_pdpar
@@ -72,6 +79,12 @@ void __led_blink(led_id_t mask, int freq);
# include <asm/status_led.h>
#endif
+#else
+
+static inline void status_led_init(void) { }
+static inline void status_led_set(int led, int state) { }
+static inline void status_led_boot_blink(void) { }
+
#endif /* CONFIG_LED_STATUS */
/*
--
2.45.2
next prev parent reply other threads:[~2024-10-01 13:20 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-01 12:24 [PATCH v5 00/11] led: introduce LED boot and activity function Christian Marangi
2024-10-01 12:24 ` [PATCH v5 01/11] led: toggle LED on initial SW blink Christian Marangi
2024-10-02 22:55 ` Simon Glass
2024-10-02 22:59 ` Christian Marangi
2024-10-03 6:22 ` Michael Nazzareno Trimarchi
2024-10-03 10:59 ` Christian Marangi
2024-10-01 12:24 ` [PATCH v5 02/11] dm: core: implement ofnode_options helpers Christian Marangi
2024-10-01 12:24 ` [PATCH v5 03/11] led: implement LED boot API Christian Marangi
2024-10-02 22:55 ` Simon Glass
2024-10-02 23:00 ` Christian Marangi
2024-10-03 17:30 ` Simon Glass
2024-11-02 19:33 ` Simon Glass
2024-11-02 19:36 ` Christian Marangi
2024-11-02 19:50 ` Simon Glass
2024-11-02 19:52 ` Christian Marangi
2024-11-03 14:46 ` Simon Glass
2024-11-04 23:13 ` Christian Marangi
2024-11-05 15:12 ` Simon Glass
2024-11-05 15:15 ` Christian Marangi
2024-10-01 12:24 ` Christian Marangi [this message]
2024-10-01 12:24 ` [PATCH v5 05/11] led: implement LED activity API Christian Marangi
2024-10-02 22:55 ` Simon Glass
2024-10-01 12:24 ` [PATCH v5 06/11] tftp: implement support for LED activity Christian Marangi
2024-10-01 12:24 ` [PATCH v5 07/11] mtd: " Christian Marangi
2024-10-02 22:55 ` Simon Glass
2024-10-01 12:24 ` [PATCH v5 08/11] ubi: " Christian Marangi
2024-10-01 12:24 ` [PATCH v5 09/11] doc: introduce led.rst documentation Christian Marangi
2024-10-01 12:24 ` [PATCH v5 10/11] test: dm: Add tests for LED boot and activity Christian Marangi
2024-10-01 12:24 ` [PATCH v5 11/11] test: dm: Expand ofnode options test with new helper Christian Marangi
2024-10-11 17:35 ` [PATCH v5 00/11] led: introduce LED boot and activity function Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241001122511.8832-5-ansuelsmth@gmail.com \
--to=ansuelsmth@gmail.com \
--cc=agendin@matrox.com \
--cc=akashi.tkhro@gmail.com \
--cc=artur@conclusive.pl \
--cc=avkrasnov@salutedevices.com \
--cc=avromanov@salutedevices.com \
--cc=caleb.connolly@linaro.org \
--cc=dario.binacchi@amarulasolutions.com \
--cc=douglas.zobel@climate.com \
--cc=eajames@linux.ibm.com \
--cc=etienne.carriere@foss.st.com \
--cc=forbidden405@outlook.com \
--cc=hs@denx.de \
--cc=ilias.apalodimas@linaro.org \
--cc=joe.hershberger@ni.com \
--cc=john@phrozen.org \
--cc=marex@denx.de \
--cc=michael.polyntsov@iopsys.eu \
--cc=michael@amarulasolutions.com \
--cc=mikhail.kshevetskiy@iopsys.eu \
--cc=miquel.raynal@bootlin.com \
--cc=mkorpershoek@baylibre.com \
--cc=mmkurbanov@salutedevices.com \
--cc=rasmus.villemoes@prevas.dk \
--cc=rfried.dev@gmail.com \
--cc=santoshsagar.algapally@amd.com \
--cc=seanga2@gmail.com \
--cc=sjg@chromium.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
--cc=vassilisamir@gmail.com \
--cc=xypron.glpk@gmx.de \
--cc=ycliang@andestech.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox