summaryrefslogtreecommitdiff
path: root/src/cpu/testers/traffic_gen/base.hh
diff options
context:
space:
mode:
authorGiacomo Travaglini <giacomo.travaglini@arm.com>2018-07-20 11:23:49 +0100
committerGiacomo Travaglini <giacomo.travaglini@arm.com>2018-08-24 13:47:35 +0000
commitf741bb7cdbdd6c2526be40fe1e03a705364ddf8d (patch)
tree601725878dea62a50c2769f27d6cd5eb46b1b829 /src/cpu/testers/traffic_gen/base.hh
parent2b3168021cb0ceed8e90045435181bb82eed0c12 (diff)
downloadgem5-f741bb7cdbdd6c2526be40fe1e03a705364ddf8d.tar.xz
cpu: Stream/SubstreamID support in TrafficGen
This patch is adding support for generating memory requests which set the StreamID/SubstreamID field, so that is possible to emulate devices attached to an external IOMMU/SMMU with a Traffic generator. Change-Id: Iea068de581ae7125a9d49314124a08c045c75b49 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/12188
Diffstat (limited to 'src/cpu/testers/traffic_gen/base.hh')
-rw-r--r--src/cpu/testers/traffic_gen/base.hh6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/cpu/testers/traffic_gen/base.hh b/src/cpu/testers/traffic_gen/base.hh
index fe4229f23..272dcb587 100644
--- a/src/cpu/testers/traffic_gen/base.hh
+++ b/src/cpu/testers/traffic_gen/base.hh
@@ -50,6 +50,7 @@
#include "mem/qport.hh"
class BaseGen;
+class StreamGen;
class System;
struct BaseTrafficGenParams;
@@ -179,7 +180,7 @@ class BaseTrafficGen : public MemObject
public:
BaseTrafficGen(const BaseTrafficGenParams* p);
- ~BaseTrafficGen() {}
+ ~BaseTrafficGen();
BaseMasterPort& getMasterPort(const std::string &if_name,
PortID idx = InvalidPortID) override;
@@ -247,6 +248,9 @@ class BaseTrafficGen : public MemObject
/** Currently active generator */
std::shared_ptr<BaseGen> activeGenerator;
+
+ /** Stream/SubStreamID Generator */
+ std::unique_ptr<StreamGen> streamGenerator;
};
#endif //__CPU_TRAFFIC_GEN_BASE_HH__