diff options
Diffstat (limited to 'recipes/u-boot/u-boot-git/beagleboard/0043-Add-led-command.patch')
-rw-r--r-- | recipes/u-boot/u-boot-git/beagleboard/0043-Add-led-command.patch | 256 |
1 files changed, 0 insertions, 256 deletions
diff --git a/recipes/u-boot/u-boot-git/beagleboard/0043-Add-led-command.patch b/recipes/u-boot/u-boot-git/beagleboard/0043-Add-led-command.patch deleted file mode 100644 index 8d19d1ed2a..0000000000 --- a/recipes/u-boot/u-boot-git/beagleboard/0043-Add-led-command.patch +++ /dev/null @@ -1,256 +0,0 @@ -From 1fc5c28bc260c72b4f9cefdf55bfd10504916457 Mon Sep 17 00:00:00 2001 -From: Jason Kridner <jkridner@beagleboard.org> -Date: Thu, 20 May 2010 05:41:26 -0500 -Subject: [PATCH 43/50] Add 'led' command - -This patch allows any board implementing the coloured LED API -to control the LEDs from the console. - -led [green | yellow | red | all ] [ on | off ] - -or - -led [ 1 | 2 | 3 | all ] [ on | off ] - -Adds configuration item CONFIG_CMD_LED enabling the command. - -Partially based on patch from Ulf Samuelsson: -http://www.mail-archive.com/u-boot@lists.denx.de/msg09593.html. -(cherry picked from commit aaf47f8d6af81393b7d3275d69b5dbdf07a3d6fb) -(cherry picked from commit 3d314bf59a48c2ee93d06d50b81f109af6a6c1ec) - -Signed-off-by: Jason Kridner <jkridner@beagleboard.org> ---- - common/Makefile | 1 + - common/cmd_led.c | 207 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 208 insertions(+), 0 deletions(-) - create mode 100644 common/cmd_led.c - -diff --git a/common/Makefile b/common/Makefile -index dbf7a05..1d717ca 100644 ---- a/common/Makefile -+++ b/common/Makefile -@@ -106,6 +106,7 @@ COBJS-$(CONFIG_CMD_IRQ) += cmd_irq.o - COBJS-$(CONFIG_CMD_ITEST) += cmd_itest.o - COBJS-$(CONFIG_CMD_JFFS2) += cmd_jffs2.o - COBJS-$(CONFIG_CMD_CRAMFS) += cmd_cramfs.o -+COBJS-$(CONFIG_CMD_LED) += cmd_led.o - COBJS-$(CONFIG_CMD_LICENSE) += cmd_license.o - COBJS-y += cmd_load.o - COBJS-$(CONFIG_LOGBUFFER) += cmd_log.o -diff --git a/common/cmd_led.c b/common/cmd_led.c -new file mode 100644 -index 0000000..3b7b534 ---- /dev/null -+++ b/common/cmd_led.c -@@ -0,0 +1,207 @@ -+/* -+ * (C) Copyright 2010 -+ * Jason Kridner <jkridner@beagleboard.org> -+ * -+ * Based on cmd_led.c patch from: -+ * http://www.mail-archive.com/u-boot@lists.denx.de/msg06873.html -+ * (C) Copyright 2008 -+ * Ulf Samuelsson <ulf.samuelsson@atmel.com> -+ * -+ * See file CREDITS for list of people who contributed to this -+ * project. -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of -+ * the License, or (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, -+ * MA 02111-1307 USA -+ */ -+ -+/* -+ * This file provides a shell like 'test' function to return -+ * true/false from an integer or string compare of two memory -+ * locations or a location and a scalar/literal. -+ * A few parts were lifted from bash 'test' command -+ */ -+ -+#include <common.h> -+#include <config.h> -+#include <command.h> -+#include <status_led.h> -+ -+int do_led ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[] ) -+{ -+#ifdef CONFIG_BOARD_SPECIFIC_LED -+ led_id_t mask; -+#endif -+ int state; -+ -+ /* Validate arguments */ -+ if ((argc != 3)){ -+ printf("Usage:\n%s\n", cmdtp->usage); -+ return 1; -+ } -+ -+ if (strcmp(argv[2], "off") == 0) { -+ state = 0; -+ } else if (strcmp(argv[2], "on") == 0) { -+ state = 1; -+ } else { -+ printf ("Usage:\n%s\n", cmdtp->usage); -+ return 1; -+ } -+ -+#if defined(STATUS_LED_BIT) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ if (strcmp(argv[1], "0") == 0) { -+ mask = STATUS_LED_BIT; -+ __led_set(mask, state); -+ } -+ else -+#endif -+#if defined(STATUS_LED_BIT1) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ if (strcmp(argv[1], "1") == 0) { -+ mask = STATUS_LED_BIT1; -+ __led_set(mask, state); -+ } -+ else -+#endif -+#if defined(STATUS_LED_BIT2) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ if (strcmp(argv[1], "2") == 0) { -+ mask = STATUS_LED_BIT2; -+ __led_set(mask, state); -+ } -+ else -+#endif -+#if defined(STATUS_LED_BIT3) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ if (strcmp(argv[1], "3") == 0) { -+ mask = STATUS_LED_BIT3; -+ __led_set(mask, state); -+ } -+ else -+#endif -+#ifdef STATUS_LED_RED -+ if (strcmp(argv[1], "red") == 0) { -+ if (state == 0) -+ red_LED_off(); -+ else -+ red_LED_on(); -+ } -+ else -+#endif -+#ifdef STATUS_LED_GREEN -+ if (strcmp(argv[1], "green") == 0) { -+ if (state == 0) -+ green_LED_off(); -+ else -+ green_LED_on(); -+ } -+ else -+#endif -+#ifdef STATUS_LED_YELLOW -+ if (strcmp(argv[1], "yellow") == 0) { -+ if (state == 0) -+ yellow_LED_off(); -+ else -+ yellow_LED_on(); -+ } -+ else -+#endif -+#ifdef STATUS_LED_BLUE -+ if (strcmp(argv[1], "blue") == 0) { -+ if (state == 0) -+ blue_LED_off(); -+ else -+ blue_LED_on(); -+ } -+ else -+#endif -+ if (strcmp(argv[1], "all") == 0) { -+ mask = 0 -+#if defined(STATUS_LED_BIT) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ | STATUS_LED_BIT -+#endif -+#if defined(STATUS_LED_BIT1) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ | STATUS_LED_BIT1 -+#endif -+#if defined(STATUS_LED_BIT2) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ | STATUS_LED_BIT2 -+#endif -+#if defined(STATUS_LED_BIT3) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ | STATUS_LED_BIT3 -+#endif -+ ; -+#ifdef CONFIG_BOARD_SPECIFIC_LED -+ __led_set(mask, state); -+#endif -+#ifdef STATUS_LED_RED -+ if (state == 0) -+ red_LED_off(); -+ else -+ red_LED_on(); -+#endif -+#ifdef STATUS_LED_GREEN -+ if (state == 0) -+ green_LED_off(); -+ else -+ green_LED_on(); -+#endif -+#ifdef STATUS_LED_YELLOW -+ if (state == 0) -+ yellow_LED_off(); -+ else -+ yellow_LED_on(); -+#endif -+#ifdef STATUS_LED_BLUE -+ if (state == 0) -+ blue_LED_off(); -+ else -+ blue_LED_on(); -+#endif -+ } else { -+ printf ("Usage:\n%s\n", cmdtp->usage); -+ return 1; -+ } -+ -+ return 0; -+} -+ -+U_BOOT_CMD( -+ led, 3, 1, do_led, -+ "led\t- [" -+#if defined(STATUS_LED_BIT) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ "0|" -+#endif -+#if defined(STATUS_LED_BIT1) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ "1|" -+#endif -+#if defined(STATUS_LED_BIT2) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ "2|" -+#endif -+#if defined(STATUS_LED_BIT3) && defined(CONFIG_BOARD_SPECIFIC_LED) -+ "3|" -+#endif -+#ifdef STATUS_LED_GREEN -+ "green|" -+#endif -+#ifdef STATUS_LED_YELLOW -+ "yellow|" -+#endif -+#ifdef STATUS_LED_RED -+ "red|" -+#endif -+#ifdef STATUS_LED_BLUE -+ "blue|" -+#endif -+ "all] [on|off]\n", -+ "led [led_name] [on|off] sets or clears led(s)\n" -+); -+ --- -1.6.6.1 - |