summaryrefslogtreecommitdiff
path: root/lib/sbi/sbi_console.c
diff options
context:
space:
mode:
authorAnup Patel <anup.patel@wdc.com>2019-08-08 09:40:22 +0300
committerAnup Patel <anup@brainfault.org>2019-08-09 10:08:33 +0300
commitdbff3e9f12f0abbdf475baaef4760c24af0d4227 (patch)
tree861e23030839b2d218a391d3e29f51398be3b39d /lib/sbi/sbi_console.c
parentb1318e578b81690d7dcc57019e3f26c2b563bd74 (diff)
downloadopensbi-dbff3e9f12f0abbdf475baaef4760c24af0d4227.tar.xz
lib: Introduce sbi_dprintf() API
This patch introduces new sbi_dprintf() API for runtime debug prints. The sbi_dprintf() will print to console for a given HART only when SBI_SCRATCH_DEBUG_PRINTS option in enabled in sbi_scratch for this HART. We can now add debug prints using sbi_dprintf() at important places in OpenSBI sources. These debug prints will only show up when previous booting stage or compile time parameter sets the SBI_SCRATCH_DEBUG_PRINTS option in scratch space. Signed-off-by: Anup Patel <anup.patel@wdc.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'lib/sbi/sbi_console.c')
-rw-r--r--lib/sbi/sbi_console.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/sbi/sbi_console.c b/lib/sbi/sbi_console.c
index 30fb2c8..03dcdb2 100644
--- a/lib/sbi/sbi_console.c
+++ b/lib/sbi/sbi_console.c
@@ -375,6 +375,19 @@ int sbi_printf(const char *format, ...)
return retval;
}
+int sbi_dprintf(struct sbi_scratch *scratch, const char *format, ...)
+{
+ va_list args;
+ int retval = 0;
+
+ va_start(args, format);
+ if (scratch->options & SBI_SCRATCH_DEBUG_PRINTS)
+ retval = print(NULL, NULL, format, args);
+ va_end(args);
+
+ return retval;
+}
+
int sbi_console_init(struct sbi_scratch *scratch)
{
console_plat = sbi_platform_ptr(scratch);