aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorwdenk <wdenk>2002-12-08 09:53:23 +0000
committerwdenk <wdenk>2002-12-08 09:53:23 +0000
commit228f29ac6e0026e596b3a6fbb640118b9944cdd8 (patch)
treef379b80d2d4be7cf9f25bd59156e53cb00faaf72 /include
parent7c7a23bd5a0bc149d2edd665ec46381726b24e0c (diff)
* Improve log buffer code; use "loglevel" to decide which messages
to log on the console, too (like in Linux); get rid of "logstart"
Diffstat (limited to 'include')
-rw-r--r--include/asm-ppc/global_data.h3
-rw-r--r--include/cmd_log.h3
-rw-r--r--include/configs/lwmon.h5
-rw-r--r--include/logbuff.h8
-rw-r--r--include/post.h3
5 files changed, 15 insertions, 7 deletions
diff --git a/include/asm-ppc/global_data.h b/include/asm-ppc/global_data.h
index 34701803f..c53061b5d 100644
--- a/include/asm-ppc/global_data.h
+++ b/include/asm-ppc/global_data.h
@@ -68,6 +68,9 @@ typedef struct global_data {
#if defined(CONFIG_LCD) || defined(CONFIG_VIDEO)
unsigned long fb_base; /* Base address of framebuffer memory */
#endif
+#ifdef CONFIG_POST
+ unsigned long post_log_word; /* Record POST activities */
+#endif
#ifdef CONFIG_BOARD_TYPES
unsigned long board_type;
#endif
diff --git a/include/cmd_log.h b/include/cmd_log.h
index 809553b24..c879f2f8d 100644
--- a/include/cmd_log.h
+++ b/include/cmd_log.h
@@ -33,8 +33,9 @@
#define LOG_BU_MASK ~(LOG_BUF_LEN-1)
#define CMD_TBL_LOG MK_CMD_TBL_ENTRY( \
- "log", 3, 3, 1, do_log, \
+ "log", 3, 255, 1, do_log, \
"log - manipulate logbuffer\n", \
+ "log info - show pointer details\n" \
"log reset - clear contents\n" \
"log show - show contents\n" \
"log append <msg> - append <msg> to the logbuffer\n" \
diff --git a/include/configs/lwmon.h b/include/configs/lwmon.h
index 53667c049..587de2dd0 100644
--- a/include/configs/lwmon.h
+++ b/include/configs/lwmon.h
@@ -31,11 +31,6 @@
/* External logbuffer support */
#define CONFIG_LOGBUFFER
-/* Reserve space for the logbuffer */
-#ifdef CONFIG_LOGBUFFER
-#define CONFIG_PRAM 20
-#endif
-
/*
* High Level Configuration Options
* (easy to change)
diff --git a/include/logbuff.h b/include/logbuff.h
index 37445096a..3acfc18a7 100644
--- a/include/logbuff.h
+++ b/include/logbuff.h
@@ -25,9 +25,15 @@
#ifdef CONFIG_LOGBUFFER
-#define LOGBUFF_TEST0 0x01
+#define LOGBUFF_LEN (16384) /* Must be 16k right now */
+#define LOGBUFF_MASK (LOGBUFF_LEN-1)
+#define LOGBUFF_OVERHEAD (4096) /* Logbuffer overhead for extra info */
+#define LOGBUFF_RESERVE (LOGBUFF_LEN+LOGBUFF_OVERHEAD)
+
+#define LOGBUFF_INITIALIZED (1<<31)
int drv_logbuff_init (void);
+void logbuff_init_ptrs (void);
void logbuff_log(char *msg);
void logbuff_reset (void);
diff --git a/include/post.h b/include/post.h
index a6d4016f9..a91baa277 100644
--- a/include/post.h
+++ b/include/post.h
@@ -38,6 +38,7 @@
#define POST_RAM 0x0200 /* test runs in RAM */
#define POST_MANUAL 0x0400 /* test runs on diag command */
#define POST_REBOOT 0x0800 /* test may cause rebooting */
+#define POST_PREREL 0x1000 /* test runs before relocation */
#define POST_MEM (POST_RAM | POST_ROM)
#define POST_ALWAYS (POST_POWERNORMAL | \
@@ -53,10 +54,12 @@ struct post_test {
char *desc;
int flags;
int (*test) (int flags);
+ unsigned long testid;
};
void post_bootmode_init (void);
int post_bootmode_get (unsigned int * last_test);
void post_bootmode_clear (void);
+void post_output_backlog ( void );
int post_run (char *name, int flags);
int post_info (char *name);
int post_log (char *format, ...);