summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Jones <marcjones@sysproconsulting.com>2020-10-12 11:58:46 -0600
committerMarc Jones <marc@marcjonesconsulting.com>2020-10-29 16:44:19 +0000
commit8b522db474f1573e7f68cdb046d5dc4d789e084b (patch)
tree8cfa9f18aba19fcf4472122ca49028bb6b8e7565
parent5b5c52e8ded9e6ef320bc01fec63ed042cac90c1 (diff)
downloadcoreboot-8b522db474f1573e7f68cdb046d5dc4d789e084b.tar.xz
soc/intel/xeon_sp: Move function debug macros
Move the macros for printing debug information to debug.h in the common console include directory and device include file. These are available if the platform selects DEFAULT_CONSOLE_LOGLEVEL_8. The macros could be used by any platform. Change-Id: Ie237bdf8cdc42c76f38a0c820fdc92e81095f47c Signed-off-by: Marc Jones <marcjones@sysproconsulting.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/46093 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Jay Talbott <JayTalbott@sysproconsulting.com> Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r--src/Kconfig10
-rw-r--r--src/include/console/debug.h22
-rw-r--r--src/include/device/device.h14
-rw-r--r--src/soc/intel/xeon_sp/cpx/chip.c1
-rw-r--r--src/soc/intel/xeon_sp/cpx/cpu.c1
-rw-r--r--src/soc/intel/xeon_sp/cpx/include/soc/soc_util.h16
-rw-r--r--src/soc/intel/xeon_sp/include/soc/util.h15
-rw-r--r--src/soc/intel/xeon_sp/skx/chip.c2
-rw-r--r--src/soc/intel/xeon_sp/skx/cpu.c1
9 files changed, 51 insertions, 31 deletions
diff --git a/src/Kconfig b/src/Kconfig
index eda11c331e..dc98ca2c05 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -1123,6 +1123,16 @@ config TRACE
of calling function. Please note some printk related functions
are omitted from trace to have good looking console dumps.
+config DEBUG_FUNC
+ bool "Enable function entry and exit reporting macros" if DEFAULT_CONSOLE_LOGLEVEL_8
+ default n
+ help
+ This option enables additional function entry and exit debug messages
+ for select functions. If supported, this is less output than
+ the TRACE option.
+ Note: This option will increase the size of the coreboot image.
+ If unsure, say N.
+
config DEBUG_COVERAGE
bool "Debug code coverage"
default n
diff --git a/src/include/console/debug.h b/src/include/console/debug.h
new file mode 100644
index 0000000000..174c287c6a
--- /dev/null
+++ b/src/include/console/debug.h
@@ -0,0 +1,22 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#ifndef _CONSOLE_DEBUG_H_
+#define _CONSOLE_DEBUG_H_
+
+#if CONFIG(DEBUG_FUNC)
+#include <console/console.h>
+
+#define FUNC_ENTER() \
+ printk(BIOS_SPEW, "%s:%s:%d: ENTER\n", __FILE__, __func__, __LINE__)
+
+#define FUNC_EXIT() \
+ printk(BIOS_SPEW, "%s:%s:%d: EXIT\n", __FILE__, __func__, __LINE__)
+
+#else /* FUNC_DEBUG */
+
+#define FUNC_ENTER()
+#define FUNC_EXIT()
+
+#endif /* FUNC_DEBUG */
+
+#endif
diff --git a/src/include/device/device.h b/src/include/device/device.h
index eb9ef42eef..8a481b2ca2 100644
--- a/src/include/device/device.h
+++ b/src/include/device/device.h
@@ -279,6 +279,20 @@ void show_all_devs_resources(int debug_level, const char *msg);
#define LOG_IO_RESOURCE(type, dev, index, base, size)
#endif /* DEBUG_RESOURCES*/
+#if CONFIG(DEBUG_FUNC)
+#include <console/console.h>
+#define DEV_FUNC_ENTER(dev) \
+ printk(BIOS_SPEW, "%s:%s:%d: ENTER (dev: %s)\n", \
+ __FILE__, __func__, __LINE__, dev_path(dev))
+
+#define DEV_FUNC_EXIT(dev) \
+ printk(BIOS_SPEW, "%s:%s:%d: EXIT (dev: %s)\n", __FILE__, \
+ __func__, __LINE__, dev_path(dev))
+#else /* DEBUG_FUNC */
+#define DEV_FUNC_ENTER(dev)
+#define DEV_FUNC_EXIT(dev)
+#endif /* DEBUG_FUNC */
+
/* Rounding for boundaries.
* Due to some chip bugs, go ahead and round IO to 16
*/
diff --git a/src/soc/intel/xeon_sp/cpx/chip.c b/src/soc/intel/xeon_sp/cpx/chip.c
index c5a8c1cb1c..6d2dfba3c7 100644
--- a/src/soc/intel/xeon_sp/cpx/chip.c
+++ b/src/soc/intel/xeon_sp/cpx/chip.c
@@ -3,6 +3,7 @@
#include <arch/ioapic.h>
#include <assert.h>
#include <console/console.h>
+#include <console/debug.h>
#include <cpu/x86/lapic.h>
#include <device/pci.h>
#include <fsp/api.h>
diff --git a/src/soc/intel/xeon_sp/cpx/cpu.c b/src/soc/intel/xeon_sp/cpx/cpu.c
index 0999f6d721..4afe47cbff 100644
--- a/src/soc/intel/xeon_sp/cpx/cpu.c
+++ b/src/soc/intel/xeon_sp/cpx/cpu.c
@@ -4,6 +4,7 @@
#include <acpi/acpi.h>
#include <assert.h>
#include <console/console.h>
+#include <console/debug.h>
#include <cpu/cpu.h>
#include <cpu/intel/microcode.h>
#include <cpu/intel/turbo.h>
diff --git a/src/soc/intel/xeon_sp/cpx/include/soc/soc_util.h b/src/soc/intel/xeon_sp/cpx/include/soc/soc_util.h
index 412730b647..3e19bac6e9 100644
--- a/src/soc/intel/xeon_sp/cpx/include/soc/soc_util.h
+++ b/src/soc/intel/xeon_sp/cpx/include/soc/soc_util.h
@@ -3,24 +3,8 @@
#ifndef _SOC_UTIL_H_
#define _SOC_UTIL_H_
-#include <console/console.h>
#include <hob_iiouds.h>
#include <hob_memmap.h>
-#include <stdint.h>
-
-#define DEV_FUNC_ENTER(dev) \
- printk(BIOS_SPEW, "%s:%s:%d: ENTER (dev: %s)\n", \
- __FILE__, __func__, __LINE__, dev_path(dev))
-
-#define DEV_FUNC_EXIT(dev) \
- printk(BIOS_SPEW, "%s:%s:%d: EXIT (dev: %s)\n", __FILE__, \
- __func__, __LINE__, dev_path(dev))
-
-#define FUNC_ENTER() \
- printk(BIOS_SPEW, "%s:%s:%d: ENTER\n", __FILE__, __func__, __LINE__)
-
-#define FUNC_EXIT() \
- printk(BIOS_SPEW, "%s:%s:%d: EXIT\n", __FILE__, __func__, __LINE__)
struct iiostack_resource {
uint8_t no_of_stacks;
diff --git a/src/soc/intel/xeon_sp/include/soc/util.h b/src/soc/intel/xeon_sp/include/soc/util.h
index f223efafe0..8c2b597247 100644
--- a/src/soc/intel/xeon_sp/include/soc/util.h
+++ b/src/soc/intel/xeon_sp/include/soc/util.h
@@ -3,25 +3,10 @@
#ifndef _XEON_SP_SOC_UTIL_H_
#define _XEON_SP_SOC_UTIL_H_
-#include <console/console.h>
#include <hob_iiouds.h>
void get_cpubusnos(uint32_t *bus0, uint32_t *bus1, uint32_t *bus2, uint32_t *bus3);
void unlock_pam_regions(void);
void get_stack_busnos(uint32_t *bus);
-#define DEV_FUNC_ENTER(dev) \
- printk(BIOS_SPEW, "%s:%s:%d: ENTER (dev: %s)\n", \
- __FILE__, __func__, __LINE__, dev_path(dev))
-
-#define DEV_FUNC_EXIT(dev) \
- printk(BIOS_SPEW, "%s:%s:%d: EXIT (dev: %s)\n", __FILE__, \
- __func__, __LINE__, dev_path(dev))
-
-#define FUNC_ENTER() \
- printk(BIOS_SPEW, "%s:%s:%d: ENTER\n", __FILE__, __func__, __LINE__)
-
-#define FUNC_EXIT() \
- printk(BIOS_SPEW, "%s:%s:%d: EXIT\n", __FILE__, __func__, __LINE__)
-
#endif
diff --git a/src/soc/intel/xeon_sp/skx/chip.c b/src/soc/intel/xeon_sp/skx/chip.c
index 4324660f47..fba1e1f7d0 100644
--- a/src/soc/intel/xeon_sp/skx/chip.c
+++ b/src/soc/intel/xeon_sp/skx/chip.c
@@ -2,6 +2,8 @@
#include <cbfs.h>
#include <assert.h>
+#include <console/console.h>
+#include <console/debug.h>
#include <post.h>
#include <device/pci.h>
#include <soc/acpi.h>
diff --git a/src/soc/intel/xeon_sp/skx/cpu.c b/src/soc/intel/xeon_sp/skx/cpu.c
index bf712c3618..581378b410 100644
--- a/src/soc/intel/xeon_sp/skx/cpu.c
+++ b/src/soc/intel/xeon_sp/skx/cpu.c
@@ -1,6 +1,7 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
#include <console/console.h>
+#include <console/debug.h>
#include <intelblocks/cpulib.h>
#include <cpu/cpu.h>
#include <cpu/x86/mtrr.h>