[coreboot] [commit] r6054 - in trunk/src: . lib

repository service svn at coreboot.org
Wed Nov 10 01:14:33 CET 2010


Author: uwe
Date: Wed Nov 10 01:14:32 2010
New Revision: 6054
URL: https://tracker.coreboot.org/trac/coreboot/changeset/6054

Log:
Debugging facility improvements.

 - Hook up malloc() debug code via CONFIG_DEBUG_MALLOC. Only show it in
   menuconfig if at least DEBUG or SPEW are selected as loglevel, as this
   code does additional printk(BIOS_DEBUG, ...) calls which would otherwise
   not be visible anyway.

 - Similarly, make DEBUG_CAR and REALMODE_DEBUG only visible if thr DEBUG or
   SPEW loglevel is selected.

 - Get rid of a custom "debug" macro, use printk() as usual.

Signed-off-by: Uwe Hermann <uwe at hermann-uwe.de>
Acked-by: Peter Stuge <peter at stuge.se>

Modified:
   trunk/src/Kconfig
   trunk/src/lib/cbmem.c
   trunk/src/lib/malloc.c

Modified: trunk/src/Kconfig
==============================================================================
--- trunk/src/Kconfig	Wed Nov 10 01:08:42 2010	(r6053)
+++ trunk/src/Kconfig	Wed Nov 10 01:14:32 2010	(r6054)
@@ -502,10 +502,13 @@
 config HAVE_DEBUG_CAR
 	def_bool n
 
+# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
+# printk(BIOS_DEBUG, ...) calls.
 config DEBUG_CAR
 	bool "Output verbose Cache-as-RAM debug messages"
 	default n
-	depends on HAVE_DEBUG_CAR
+	depends on HAVE_DEBUG_CAR && \
+		   (DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8)
 	help
 	  This option enables additional CAR related debug messages.
 
@@ -553,10 +556,26 @@
 
 	  If unsure, say N.
 
+# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
+# printk(BIOS_DEBUG, ...) calls.
+config DEBUG_MALLOC
+	bool "Output verbose malloc debug messages"
+	default n
+	depends on DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8
+	help
+	  This option enables additional malloc related debug messages.
+
+	  Note: This option will increase the size of the coreboot image.
+
+	  If unsure, say N.
+
+# Only visible if debug level is DEBUG (7) or SPEW (8) as it does additional
+# printk(BIOS_DEBUG, ...) calls.
 config REALMODE_DEBUG
 	bool "Enable debug messages for option ROM execution"
 	default n
-	depends on PCI_OPTION_ROM_RUN_REALMODE
+	depends on PCI_OPTION_ROM_RUN_REALMODE && \
+		   (DEFAULT_CONSOLE_LOGLEVEL_7 || DEFAULT_CONSOLE_LOGLEVEL_8)
 	help
 	  This option enables additional x86emu related debug messages.
 

Modified: trunk/src/lib/cbmem.c
==============================================================================
--- trunk/src/lib/cbmem.c	Wed Nov 10 01:08:42 2010	(r6053)
+++ trunk/src/lib/cbmem.c	Wed Nov 10 01:14:32 2010	(r6054)
@@ -22,12 +22,6 @@
 #include <cbmem.h>
 #include <console/console.h>
 
-#if 1
-#define debug(x...) printk(BIOS_DEBUG, x)
-#else
-#define debug(x...)
-#endif
-
 // The CBMEM TOC reserves 512 bytes to keep
 // the other entries somewhat aligned.
 // Increase if MAX_CBMEM_ENTRIES exceeds 21
@@ -68,10 +62,11 @@
 	bss_cbmem_toc = cbmem_toc;
 #endif
 
-	debug("Initializing CBMEM area to 0x%llx (%lld bytes)\n", baseaddr, size);
+	printk(BIOS_DEBUG, "Initializing CBMEM area to 0x%llx (%lld bytes)\n",
+	       baseaddr, size);
 
 	if (size < (64 * 1024)) {
-		debug("Increase CBMEM size!!\n");
+		printk(BIOS_DEBUG, "Increase CBMEM size!\n");
 		for (;;) ;
 	}
 
@@ -90,7 +85,9 @@
 	struct cbmem_entry *cbmem_toc;
 	cbmem_toc = (struct cbmem_entry *)(unsigned long)baseaddr;
 
-	debug("Re-Initializing CBMEM area to 0x%lx\n", (unsigned long)baseaddr);
+	printk(BIOS_DEBUG, "Re-Initializing CBMEM area to 0x%lx\n",
+	       (unsigned long)baseaddr);
+
 #ifndef __PRE_RAM__
 	bss_cbmem_toc = cbmem_toc;
 #endif
@@ -135,7 +132,7 @@
 		return NULL;
 	}
 
-	debug("Adding CBMEM entry as no. %d\n", i);
+	printk(BIOS_DEBUG, "Adding CBMEM entry as no. %d\n", i);
 
 	cbmem_toc[i] = (struct cbmem_entry) {
 		.magic = CBMEM_MAGIC,

Modified: trunk/src/lib/malloc.c
==============================================================================
--- trunk/src/lib/malloc.c	Wed Nov 10 01:08:42 2010	(r6053)
+++ trunk/src/lib/malloc.c	Wed Nov 10 01:14:32 2010	(r6054)
@@ -1,11 +1,12 @@
 #include <stdlib.h>
 #include <console/console.h>
 
-#if 0
-#define MALLOCDBG(x)
-#else
+#if CONFIG_DEBUG_MALLOC
 #define MALLOCDBG(x...) printk(BIOS_SPEW, x)
+#else
+#define MALLOCDBG(x)
 #endif
+
 extern unsigned char _heap, _eheap;
 static void *free_mem_ptr = &_heap;		/* Start of heap */
 static void *free_mem_end_ptr = &_eheap;	/* End of heap */




More information about the coreboot mailing list