Merge changes Ic8198274,I9ff37f51 * changes: Update bazel rule lint Add repo preupload config
diff --git a/external/0003-Add-systemc-lib-support.patch b/external/0003-Add-systemc-lib-support.patch new file mode 100644 index 0000000..f029634 --- /dev/null +++ b/external/0003-Add-systemc-lib-support.patch
@@ -0,0 +1,39 @@ +From 5e8abbacdc9d25cf5c7405ec9fdfb3b2645de829 Mon Sep 17 00:00:00 2001 +From: Cindy Liu <hcindyl@google.com> +Date: Sun, 13 Aug 2023 10:26:17 -0700 +Subject: [PATCH] Add systemc lib support + +Set libverilator to build based on the OSS accellera_systemc not the +system installed libsystemc-dev +--- + dependency_support/verilator/verilator.BUILD | 7 +++++++-- + 1 file changed, 6 insertions(+), 1 deletions(-) + +diff --git dependency_support/verilator/verilator.BUILD dependency_support/verilator/verilator.BUILD +index 371a1dd..0bc3c71 100644 +--- dependency_support/verilator/verilator.BUILD ++++ dependency_support/verilator/verilator.BUILD +@@ -221,7 +221,11 @@ cc_library( + ], + # TODO: Remove these once upstream fixes these warnings + copts = ["-Wno-unused-const-variable"], +- includes = ["include"], ++ includes = [ ++ "include", ++ # include systemc header ++ "systemc/include", ++ ], + strip_include_prefix = "include/", + textual_hdrs = [ + "include/gtkwave/fastlz.c", +@@ -230,6 +234,7 @@ cc_library( + ], + visibility = ["//visibility:public"], + deps = [ ++ "@accellera_systemc//:systemc", + "@net_zlib//:zlib", + ], + ) +-- +2.41.0.640.ga95def55d0-goog +
diff --git a/hdl/chisel/src/kelvin/scalar/Alu.scala b/hdl/chisel/src/kelvin/scalar/Alu.scala index 2ac5855..3ce227d 100644 --- a/hdl/chisel/src/kelvin/scalar/Alu.scala +++ b/hdl/chisel/src/kelvin/scalar/Alu.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Bru.scala b/hdl/chisel/src/kelvin/scalar/Bru.scala index 02d7121..c6da8d1 100644 --- a/hdl/chisel/src/kelvin/scalar/Bru.scala +++ b/hdl/chisel/src/kelvin/scalar/Bru.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Csr.scala b/hdl/chisel/src/kelvin/scalar/Csr.scala index 7c78680..60b6ac6 100644 --- a/hdl/chisel/src/kelvin/scalar/Csr.scala +++ b/hdl/chisel/src/kelvin/scalar/Csr.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Debug.scala b/hdl/chisel/src/kelvin/scalar/Debug.scala index d7fedf3..e626266 100644 --- a/hdl/chisel/src/kelvin/scalar/Debug.scala +++ b/hdl/chisel/src/kelvin/scalar/Debug.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Decode.scala b/hdl/chisel/src/kelvin/scalar/Decode.scala index c7a7373..aab824f 100644 --- a/hdl/chisel/src/kelvin/scalar/Decode.scala +++ b/hdl/chisel/src/kelvin/scalar/Decode.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Dvu.scala b/hdl/chisel/src/kelvin/scalar/Dvu.scala index 8f117d1..5ae0353 100644 --- a/hdl/chisel/src/kelvin/scalar/Dvu.scala +++ b/hdl/chisel/src/kelvin/scalar/Dvu.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Fetch.scala b/hdl/chisel/src/kelvin/scalar/Fetch.scala index 0351317..5771e5f 100644 --- a/hdl/chisel/src/kelvin/scalar/Fetch.scala +++ b/hdl/chisel/src/kelvin/scalar/Fetch.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Flush.scala b/hdl/chisel/src/kelvin/scalar/Flush.scala index dddfcdf..65eeb11 100644 --- a/hdl/chisel/src/kelvin/scalar/Flush.scala +++ b/hdl/chisel/src/kelvin/scalar/Flush.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Lsu.scala b/hdl/chisel/src/kelvin/scalar/Lsu.scala index 7b6f82e..9a5ce8e 100644 --- a/hdl/chisel/src/kelvin/scalar/Lsu.scala +++ b/hdl/chisel/src/kelvin/scalar/Lsu.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Mlu.scala b/hdl/chisel/src/kelvin/scalar/Mlu.scala index 173909d..d302c88 100644 --- a/hdl/chisel/src/kelvin/scalar/Mlu.scala +++ b/hdl/chisel/src/kelvin/scalar/Mlu.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/Regfile.scala b/hdl/chisel/src/kelvin/scalar/Regfile.scala index 800aaac..cf17187 100644 --- a/hdl/chisel/src/kelvin/scalar/Regfile.scala +++ b/hdl/chisel/src/kelvin/scalar/Regfile.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/SCore.scala b/hdl/chisel/src/kelvin/scalar/SCore.scala index 786bbe6..90b953c 100644 --- a/hdl/chisel/src/kelvin/scalar/SCore.scala +++ b/hdl/chisel/src/kelvin/scalar/SCore.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/hdl/chisel/src/kelvin/scalar/SLog.scala b/hdl/chisel/src/kelvin/scalar/SLog.scala index b52963a..3c3eca6 100644 --- a/hdl/chisel/src/kelvin/scalar/SLog.scala +++ b/hdl/chisel/src/kelvin/scalar/SLog.scala
@@ -1,3 +1,4 @@ +// Copyright 2023 Google LLC package kelvin import chisel3._
diff --git a/rules/repos.bzl b/rules/repos.bzl index f7140b1..474450b 100644 --- a/rules/repos.bzl +++ b/rules/repos.bzl
@@ -23,6 +23,7 @@ patches = [ "@kelvin_hw//external:0001-Update-version-of-Googletest-for-bazel-compatitibili.patch", "@kelvin_hw//external:0002-SystemC-support-for-verilator.patch", + "@kelvin_hw//external:0003-Add-systemc-lib-support.patch", ], )
diff --git a/tests/verilator_sim/BUILD b/tests/verilator_sim/BUILD index 2739fc1..5820f32 100644 --- a/tests/verilator_sim/BUILD +++ b/tests/verilator_sim/BUILD
@@ -7,6 +7,12 @@ "sysc_module.h", "sysc_tb.h", ], + includes = [ + "systemc/include", + ], + deps = [ + "@accellera_systemc//:systemc", + ], ) cc_library( @@ -29,7 +35,6 @@ ":kelvin_if", ":sim_libs", "//hdl/chisel:core_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -41,7 +46,6 @@ deps = [ ":sim_libs", "//hdl/chisel:dbus2axi_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -54,7 +58,6 @@ ":kelvin_if", ":sim_libs", "//hdl/chisel:l1dcache_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -67,7 +70,6 @@ ":kelvin_if", ":sim_libs", "//hdl/chisel:l1icache_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -108,7 +110,6 @@ ":sim_libs", ":vencodeop", "//hdl/chisel:vcmdq_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -121,7 +122,6 @@ ":kelvin_if", ":sim_libs", "//hdl/chisel:vconvalu_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -135,7 +135,6 @@ ":sim_libs", ":vencodeop", "//hdl/chisel:vconvctrl_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -149,7 +148,6 @@ ":sim_libs", ":vdecode", "//hdl/chisel:vdecodeinstruction_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -163,7 +161,6 @@ ":sim_libs", ":vdecode", "//hdl/chisel:vdecode_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -177,7 +174,6 @@ ":sim_libs", ":vencodeop", "//hdl/chisel:vldst_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -191,7 +187,6 @@ ":sim_libs", ":vencodeop", "//hdl/chisel:vld_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -204,7 +199,6 @@ ":kelvin_if", ":sim_libs", "//hdl/chisel:vregfilesegment_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -217,7 +211,6 @@ ":kelvin_if", ":sim_libs", "//hdl/chisel:vregfile_cc_library", - "@accellera_systemc//:systemc", ], ) @@ -231,20 +224,18 @@ ":sim_libs", ":vencodeop", "//hdl/chisel:vst_cc_library", - "@accellera_systemc//:systemc", ], ) cc_binary( name = "kelvin_tb", srcs = [ - "matcha/kelvin_tb.cc", "matcha/kelvin_if.h", + "matcha/kelvin_tb.cc", ], deps = [ ":kelvin_if", ":sim_libs", "//hdl/chisel:kelvin_cc_library", - "@accellera_systemc//:systemc", - ] + ], )