summaryrefslogtreecommitdiff
path: root/src/systemc/SystemC.py
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2018-05-02 01:44:40 -0700
committerGabe Black <gabeblack@google.com>2018-07-16 21:54:10 +0000
commit889fdb90d92180f9b0526ffdcf1690715ac8e715 (patch)
tree1ccb6b9e43bbd47b7ae15470a6e636becaa63e3a /src/systemc/SystemC.py
parent2c974a9ae01c07afe0fff94c2e5c10e0ba06d8fa (diff)
downloadgem5-889fdb90d92180f9b0526ffdcf1690715ac8e715.tar.xz
systemc: Add a stub kernel SimObject.
The guts of this class will be added in later changes. Change-Id: I3582c40f88f7d9ba6028a6f0a8ee5c32924a65bf Reviewed-on: https://gem5-review.googlesource.com/10822 Maintainer: Gabe Black <gabeblack@google.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Diffstat (limited to 'src/systemc/SystemC.py')
-rw-r--r--src/systemc/SystemC.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/systemc/SystemC.py b/src/systemc/SystemC.py
index 07ca84bd0..8eb6c22a2 100644
--- a/src/systemc/SystemC.py
+++ b/src/systemc/SystemC.py
@@ -27,6 +27,15 @@
from m5.SimObject import SimObject
+# This class represents the systemc kernel. There should be exactly one in the
+# simulation. It receives gem5 SimObject lifecycle callbacks (init, regStats,
+# etc.) and manages the lifecycle of the systemc simulation accordingly.
+# It also acts as a collecting point for systemc related control functionality.
+class SystemC_Kernel(SimObject):
+ type = 'SystemC_Kernel'
+ cxx_class = 'SystemC::Kernel'
+ cxx_header = 'systemc/kernel.hh'
+
# This class represents systemc sc_object instances in python config files. It
# inherits from SimObject in python, but the c++ version, sc_core::sc_object,
# doesn't inherit from gem5's c++ SimObject class.