aboutsummaryrefslogtreecommitdiff
path: root/src/include/console/cbmem_console.h
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2014-02-26 15:19:04 +0200
committerKyösti Mälkki <kyosti.malkki@gmail.com>2014-04-18 16:41:09 +0200
commitf3390862653f9473359eb9a587842bb04671e6df (patch)
tree2a6f8171cdac86609b1552e3417816bd6877e4ff /src/include/console/cbmem_console.h
parente8792be223f5f0c5c6bafffa4056793f3c3bfab7 (diff)
console: Simplify the enable rules
Consoles on CBMEM and USB have somewhat complex rules and dependencies when they can be active. Use simple variables to test which stage of boot is being built for each console. Change-Id: I2489e7731d07ca7d5dd2ea8b6501c73f05d6edd8 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/5341 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@gmail.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Diffstat (limited to 'src/include/console/cbmem_console.h')
-rw-r--r--src/include/console/cbmem_console.h23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/include/console/cbmem_console.h b/src/include/console/cbmem_console.h
index 4f4a54f6b7..e7c6357ae4 100644
--- a/src/include/console/cbmem_console.h
+++ b/src/include/console/cbmem_console.h
@@ -19,14 +19,27 @@
#ifndef _CONSOLE_CBMEM_CONSOLE_H_
#define _CONSOLE_CBMEM_CONSOLE_H_
-#if CONFIG_EARLY_CBMEM_INIT || !defined(__PRE_RAM__)
+#include <rules.h>
+#include <stdint.h>
+
void cbmemc_init(void);
-void cbmemc_reinit(void);
void cbmemc_tx_byte(unsigned char data);
+
+#if CONFIG_CONSOLE_CBMEM
+void cbmemc_reinit(void);
+#else
+static inline void cbmemc_reinit(void) {}
+#endif
+
+#define __CBMEM_CONSOLE_ENABLE__ CONFIG_CONSOLE_CBMEM && \
+ ((ENV_ROMSTAGE && CONFIG_EARLY_CBMEM_INIT) || ENV_RAMSTAGE)
+
+#if __CBMEM_CONSOLE_ENABLE__
+static inline void __cbmemc_init(void) { cbmemc_init(); }
+static inline void __cbmemc_tx_byte(u8 data) { cbmemc_tx_byte(data); }
#else
-#define cbmemc_init()
-#define cbmemc_reinit()
-#define cbmemc_tx_byte(x)
+static inline void __cbmemc_init(void) {}
+static inline void __cbmemc_tx_byte(u8 data) {}
#endif
#endif