From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Sat, 10 Dec 2011 13:07:53 -0800 Subject: [U-Boot] [RFC PATCH v2 01/15] bootstage: Create an initial header for boot progress integers In-Reply-To: <1323551287-5351-1-git-send-email-sjg@chromium.org> References: <1323551287-5351-1-git-send-email-sjg@chromium.org> Message-ID: <1323551287-5351-2-git-send-email-sjg@chromium.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de At present boot_stage_progress() is called with various magic numbers. The new bootstage.h header will be used to turn these into symbolic names throughout the code. Signed-off-by: Simon Glass --- include/bootstage.h | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++ include/common.h | 6 +--- 2 files changed, 63 insertions(+), 4 deletions(-) create mode 100644 include/bootstage.h diff --git a/include/bootstage.h b/include/bootstage.h new file mode 100644 index 0000000..4a4300f --- /dev/null +++ b/include/bootstage.h @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2011 The Chromium OS Authors. + * 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 + */ + +#ifndef _BOOTSTAGE_H +#define _BOOTSTAGE_H + +/* + * This file implements recording of each stage of the boot process. It is + * intended to implement timing of each stage, reporting this information + * to the user and passing it to the OS for logging / further analysis. + */ + +/* + * A list of boot stages that we know about. Each of these indicates the + * state that we are at, and the action that we are about to perform. For + * errors, we issue an error for an item when it fails. Therefore the + * normal sequence is: + * + * progres action1 + * progres action2 + * progres action3 + * + * and an error condition where action 3 failed would be: + * + * progres action1 + * progres action2 + * progres action3 + * error on action3 + */ +enum bootstage_id { + BOOTSTAGE_ID_RUN_OS = 15, /* Exiting U-Boot, entering OS */ +}; + +/* + * Board-specific platform code can implement show_boot_progress () if + * needed. + * + * @param val Progress state (enum bootstage_id), or -id if an error + * has occurred. + */ +void show_boot_progress(int val); + +#endif diff --git a/include/common.h b/include/common.h index 05a658c..e918ca0 100644 --- a/include/common.h +++ b/include/common.h @@ -801,10 +801,8 @@ int pcmcia_init (void); #ifdef CONFIG_STATUS_LED # include #endif -/* - * Board-specific Platform code can reimplement show_boot_progress () if needed - */ -void show_boot_progress(int val); + +#include /* Multicore arch functions */ #ifdef CONFIG_MP -- 1.7.3.1