summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNico Huber <nico.huber@secunet.com>2018-06-04 15:10:54 +0200
committerMartin Roth <martinroth@google.com>2018-06-07 16:35:20 +0000
commit4a00ccc74810b7761a046cf125ddf6855f7f7064 (patch)
tree79e961bc7e9ef134ad03c44dff35eeff28c941a8
parent5ce400178a31cab7598cf6244b906ea435753115 (diff)
console/hw-debug_sink: Do not cache state of log level
As we suppress output now before console_init() is done, the log level read at start of ramstage is always -1. Change-Id: Ia078d647c47aaa41ca9f2df9cf8506148ef86538 Signed-off-by: Nico Huber <nico.huber@secunet.com> Reviewed-on: https://review.coreboot.org/26832 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rw-r--r--src/console/hw-debug_sink.adb22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/console/hw-debug_sink.adb b/src/console/hw-debug_sink.adb
index 5a165562dc..4331b87549 100644
--- a/src/console/hw-debug_sink.adb
+++ b/src/console/hw-debug_sink.adb
@@ -19,14 +19,19 @@ use type Interfaces.C.int;
package body HW.Debug_Sink is
- Sink_Enabled : Boolean;
+ function console_log_level
+ (msg_level : Interfaces.C.int)
+ return Interfaces.C.int;
+ pragma Import (C, console_log_level, "console_log_level");
+
+ Msg_Level_BIOS_DEBUG : constant := 7;
procedure console_tx_byte (chr : Interfaces.C.char);
pragma Import (C, console_tx_byte, "console_tx_byte");
procedure Put (Item : String) is
begin
- if Sink_Enabled then
+ if console_log_level (Msg_Level_BIOS_DEBUG) /= 0 then
for Idx in Item'Range loop
console_tx_byte (Interfaces.C.To_C (Item (Idx)));
end loop;
@@ -35,7 +40,7 @@ package body HW.Debug_Sink is
procedure Put_Char (Item : Character) is
begin
- if Sink_Enabled then
+ if console_log_level (Msg_Level_BIOS_DEBUG) /= 0 then
console_tx_byte (Interfaces.C.To_C (Item));
end if;
end Put_Char;
@@ -45,15 +50,4 @@ package body HW.Debug_Sink is
Put_Char (Character'Val (16#0a#));
end New_Line;
- ----------------------------------------------------------------------------
-
- function console_log_level
- (msg_level : Interfaces.C.int)
- return Interfaces.C.int;
- pragma Import (C, console_log_level, "console_log_level");
-
- Msg_Level_BIOS_DEBUG : constant := 7;
-
-begin
- Sink_Enabled := console_log_level (Msg_Level_BIOS_DEBUG) /= 0;
end HW.Debug_Sink;