From 85b11cde334c27b15a7408b7bdbf1194b3ea4fd1 Mon Sep 17 00:00:00 2001 From: Eyck Jentzsch Date: Thu, 6 Nov 2025 17:36:09 +0100 Subject: [PATCH] updates submodules and applies respective fixes --- .vscode/launch.json | 34 ++++++++++++++++++++++++++++++---- dbt-rise-core | 2 +- dbt-rise-riscv | 2 +- scc | 2 +- src/CLIParser.cpp | 12 +++++------- src/sc_main.cpp | 12 ++++-------- 6 files changed, 42 insertions(+), 22 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 5d591bc..dbae280 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,6 +1,14 @@ { "version": "0.2.0", "configurations": [ + { + "type": "gdb", + "request": "launch", + "name": "riscv-sim hello.elf", + "program": "${workspaceFolder}/build/Debug/dbt-rise-riscv/riscv-sim", + "arguments": "-f dbt-rise-riscv/contrib/fw/hello-world/hello.elf", + "cwd": "${workspaceFolder}" + }, { "type": "gdbtarget", "request": "launch", @@ -11,7 +19,16 @@ }, "target": { "server": "${workspaceFolder}/build/RelWithDebInfo/src/riscv-vp", - "serverParameters": ["--isa", "rv32gc_msu", "-v", "INFO", "-f", "fw/hello-world/hello.elf", "-g", "10000"], + "serverParameters": [ + "--isa", + "rv32gc_msu", + "-v", + "INFO", + "-f", + "fw/hello-world/hello.elf", + "-g", + "10000" + ], "watchServerProcess": true, "port": "10000" }, @@ -22,7 +39,10 @@ "hidden": false, "group": "FW Debug", "order": 2 - },"initCommands": ["b main"] + }, + "initCommands": [ + "b main" + ] }, { "type": "gdbtarget", @@ -110,11 +130,17 @@ "compounds": [ { "name": "FW-Debug 32bit", - "configurations": ["32bit VP with gdbserver", "Attach GDB to VP"] + "configurations": [ + "32bit VP with gdbserver", + "Attach GDB to VP" + ] }, { "name": "FW-Debug 64bit", - "configurations": ["64bit VP with gdbserver", "Attach GDB to VP"] + "configurations": [ + "64bit VP with gdbserver", + "Attach GDB to VP" + ] } ] } \ No newline at end of file diff --git a/dbt-rise-core b/dbt-rise-core index 83eb45b..022150a 160000 --- a/dbt-rise-core +++ b/dbt-rise-core @@ -1 +1 @@ -Subproject commit 83eb45bb3e393eb979b44e97ba08da8460eedea4 +Subproject commit 022150a0d6571e996e18778afb443d67c13c900c diff --git a/dbt-rise-riscv b/dbt-rise-riscv index 8a884ed..5c7bd9e 160000 --- a/dbt-rise-riscv +++ b/dbt-rise-riscv @@ -1 +1 @@ -Subproject commit 8a884edb80f04a75a78658bef6ec63e455d1c530 +Subproject commit 5c7bd9e7735889f1585ae34aab81b95f19fdbd0c diff --git a/scc b/scc index 323dcb3..f626f02 160000 --- a/scc +++ b/scc @@ -1 +1 @@ -Subproject commit 323dcb3bf3cb3a1bb4668d0f0b6ee4ffb4455c85 +Subproject commit f626f0259f9ba70729e3102a085ec710a082492a diff --git a/src/CLIParser.cpp b/src/CLIParser.cpp index 4e0afa5..a3a5786 100644 --- a/src/CLIParser.cpp +++ b/src/CLIParser.cpp @@ -40,11 +40,9 @@ CLIParser::CLIParser(int argc, char* argv[]) } auto log_level = vm_["verbose"].as(); auto log_level_num = static_cast(log_level); - LOGGER(DEFAULT)::reporting_level() = logging::as_log_level(log_level_num > 6 ? 6 : log_level_num); - LOGGER(connection)::reporting_level() = - logging::as_log_level(log_level_num > 4 ? log_level_num - 1 : log_level_num); - LOGGER(dbt_rise_iss)::reporting_level() = - logging::as_log_level(log_level_num > 4 ? log_level_num - 1 : log_level_num); + LOGGER(DEFAULT)::set_reporting_level(logging::as_log_level(log_level_num > 6 ? 6 : log_level_num)); + LOGGER(connection)::set_reporting_level(logging::as_log_level(log_level_num > 4 ? log_level_num - 1 : log_level_num)); + LOGGER(dbt_rise_iss)::set_reporting_level(logging::as_log_level(log_level_num > 4 ? log_level_num - 1 : log_level_num)); /////////////////////////////////////////////////////////////////////////// // configure logging /////////////////////////////////////////////////////////////////////////// @@ -57,8 +55,8 @@ CLIParser::CLIParser(int argc, char* argv[]) scc::stream_redirection cerr_redir(std::cerr, scc::log::ERROR); sc_core::sc_report_handler::set_actions("/IEEE_Std_1666/deprecated", sc_core::SC_DO_NOTHING); sc_core::sc_report_handler::set_actions(sc_core::SC_ID_MORE_THAN_ONE_SIGNAL_DRIVER_, sc_core::SC_DO_NOTHING); - sc_core::sc_report_handler::set_actions(sc_core::SC_ERROR, sc_core::SC_LOG | sc_core::SC_CACHE_REPORT | - sc_core::SC_DISPLAY | sc_core::SC_STOP); + sc_core::sc_report_handler::set_actions(sc_core::SC_ERROR, + sc_core::SC_LOG | sc_core::SC_CACHE_REPORT | sc_core::SC_DISPLAY | sc_core::SC_STOP); } void CLIParser::build() { diff --git a/src/sc_main.cpp b/src/sc_main.cpp index e5094bb..b89c921 100644 --- a/src/sc_main.cpp +++ b/src/sc_main.cpp @@ -72,9 +72,8 @@ int sc_main(int argc, char* argv[]) { std::unique_ptr tracer; if(auto trace_level = parser.get("trace-level")) { auto file_name = parser.get("trace-file"); - auto enable_sig_trace = (trace_level & 0x1) != 0; // bit0 enables sig trace - auto tx_trace_type = - static_cast(trace_level >> 1); // bit3-bit1 define the kind of transaction trace + auto enable_sig_trace = (trace_level & 0x1) != 0; // bit0 enables sig trace + auto tx_trace_type = static_cast(trace_level >> 1); // bit3-bit1 define the kind of transaction trace auto trace_default_on = parser.is_set("trace-default-on"); if(parser.is_set("trace-default-off")) cfg.set_value("scc_tracer.default_trace_enable", false); @@ -102,8 +101,7 @@ int sc_main(int argc, char* argv[]) { cfg.configure(); std::unique_ptr dumper; if(parser.is_set("dump-structure")) - dumper.reset( - new scc::hierarchy_dumper(parser.get("dump-structure"), scc::hierarchy_dumper::D3JSON)); + dumper.reset(new scc::hierarchy_dumper(parser.get("dump-structure"), scc::hierarchy_dumper::D3JSON)); /////////////////////////////////////////////////////////////////////////// // overwrite config with command line settings /////////////////////////////////////////////////////////////////////////// @@ -121,13 +119,11 @@ int sc_main(int argc, char* argv[]) { tlm::tlm_global_quantum::instance().set(sc_core::sc_time(parser.get("quantum"), sc_core::SC_NS)); if(parser.is_set("reset")) { auto str = parser.get("reset"); - uint64_t start_address = - str.find("0x") == 0 ? std::stoull(str.substr(2), nullptr, 16) : std::stoull(str, nullptr, 10); + uint64_t start_address = str.find("0x") == 0 ? std::stoull(str.substr(2), nullptr, 16) : std::stoull(str, nullptr, 10); cfg.set_value(core_path + ".reset_address", start_address); } if(parser.is_set("disass")) { cfg.set_value(core_path + ".enable_disass", true); - LOGGER(disass)::reporting_level() = logging::INFO; auto file_name = parser.get("disass"); if(file_name.length() > 0) { LOG_OUTPUT(disass)::stream() = fopen(file_name.c_str(), "w");