OMAP3: igep00x0: Fix boot hang and add support for status LED.
PATCH 1/1 OMAP3: igep00x0: Fix boot hang and add support for status LED.
From: Enric Balletbo i Serra <[email protected]>
Use the STATUS_LED APIs for indicating a boot progress instead of show_boot_progress.
This patch also fixes a problem introduced with commit b3f4ca1135 (dm: omap3:
Move to driver model for GPIO and serial). After that commit the board doesn't boot. Looks like the problem is the gpio_request call inside the function show_boot_progress.
--- board/isee/igep00x0/igep00x0.c | 18 +++++------------- board/isee/igep00x0/igep00x0.h | 8 -------- include/configs/omap3_igep00x0.h | 18 ++++++++++++++---- 3 files changed, 19 insertions(+), 25 deletions(-)
board/isee/igep00x0/igep00x0.c +5 -13
@@ -5,6 +5,7 @@* SPDX-License-Identifier: GPL-2.0+ */ #include <common.h> +#include <status_led.h> #include <dm.h> #include <ns16550.h> #include <twl4030.h>
@@ -53,21 +54,12 @@ int board_init(void)/* boot param addr */ gd->bd->bi_boot_params = (OMAP34XX_SDRC_CS0 +0x100 ); -return 0 ; -} - -#if defined(CONFIG_SHOW_BOOT_PROGRESS ) && !defined(CONFIG_SPL_BUILD ) -void show_boot_progress (int val) -{ -if (val <0 ) { -/* something went wrong */ -return ; - } +#if defined(CONFIG_STATUS_LED ) && defined(STATUS_LED_BOOT ) +status_led_set (STATUS_LED_BOOT ,STATUS_LED_ON ); +#endif -if (!gpio_request (IGEP00X0_GPIO_LED ,"" )) -gpio_direction_output (IGEP00X0_GPIO_LED ,1 ); +return 0 ; } -#endif #ifdef CONFIG_SPL_BUILD /*
board/isee/igep00x0/igep00x0.h +0 -8
@@ -7,14 +7,6 @@#ifndef _IGEP00X0_H_#define _IGEP00X0_H_ -#if (CONFIG_MACH_TYPE ==MACH_TYPE_IGEP0020 ) -#define IGEP00X0_GPIO_LED 27 -#endif - -#if (CONFIG_MACH_TYPE ==MACH_TYPE_IGEP0030 ) -#define IGEP00X0_GPIO_LED 16 -#endif -const omap3_sysinfo sysinfo = {DDR_STACKED , #if (CONFIG_MACH_TYPE == MACH_TYPE_IGEP0020)
include/configs/omap3_igep00x0.h +14 -4
@@ -29,11 +29,21 @@#define CONFIG_REVISION_TAG 1 -/* define to enable boot progress via leds */ -#if (CONFIG_MACH_TYPE ==MACH_TYPE_IGEP0020 ) || \ - (CONFIG_MACH_TYPE ==MACH_TYPE_IGEP0030 ) -#define CONFIG_SHOW_BOOT_PROGRESS +/* Status LED */ +#define CONFIG_STATUS_LED +#define CONFIG_BOARD_SPECIFIC_LED +#define CONFIG_GPIO_LED +#if (CONFIG_MACH_TYPE ==MACH_TYPE_IGEP0020 ) +#define RED_LED_GPIO 27 +#endif +#if (CONFIG_MACH_TYPE ==MACH_TYPE_IGEP0030 ) +#define RED_LED_GPIO 16#endif +#define RED_LED_DEV 0 +#define STATUS_LED_BIT RED_LED_GPIO +#define STATUS_LED_STATE STATUS_LED_ON +#define STATUS_LED_PERIOD (CONFIG_SYS_HZ / 2) +#define STATUS_LED_BOOT RED_LED_DEV/* GPIO banks */ #define CONFIG_OMAP3_GPIO_3 /* GPIO64 .. 95 is in GPIO bank 3 */
Signature · 1 line
2.1.0
Quoted 11 lines · Enric Balletb? i Serra
From: Enric Balletbo i Serra <[email protected]>
Use the
STATUS_LEDAPIs for indicating a boot progress instead ofshow_boot_progress.This patch also fixes a problem introduced with commit
b3f4ca1135(dm: omap3:
Move to driver model for GPIO and serial). After that commit the board doesn't boot. Looks like the problem is thegpio_requestcall inside the functionshow_boot_progress.Signed-off-by Enric Balletbo i Serra <[email protected]>
Applied to u-boot-ti/master, thanks!
Signature · 8 lines
Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150130/6163414b/attachment.sig>