diff options
author | Gabe Black <gabeblack@google.com> | 2019-09-06 15:22:22 -0700 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2019-09-20 17:54:39 +0000 |
commit | ab376064bdfa9796eebad5ee8d84c766e7a30bd6 (patch) | |
tree | 291365a98580568244fe15137b26c85f9abf900c /src/dev/x86/i82094aa.cc | |
parent | 67e310836baa0e652ae7a3b4ebd00263a52239c2 (diff) | |
download | gem5-ab376064bdfa9796eebad5ee8d84c766e7a30bd6.tar.xz |
dev, x86: Convert x86 devices to the generic int pins.
Change-Id: I4551ad00cf205c31555c90b53e87bc206a8d8729
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20701
Reviewed-by: Gabe Black <gabeblack@google.com>
Maintainer: Gabe Black <gabeblack@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Diffstat (limited to 'src/dev/x86/i82094aa.cc')
-rw-r--r-- | src/dev/x86/i82094aa.cc | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/dev/x86/i82094aa.cc b/src/dev/x86/i82094aa.cc index fccc98469..81f1c77ee 100644 --- a/src/dev/x86/i82094aa.cc +++ b/src/dev/x86/i82094aa.cc @@ -57,6 +57,10 @@ X86ISA::I82094AA::I82094AA(Params *p) redirTable[i] = entry; pinStates[i] = false; } + + for (int i = 0; i < p->port_inputs_connection_count; i++) + inputs.push_back(new ::IntSinkPin<I82094AA>( + csprintf("%s.inputs[%d]", name(), i), i, this)); } void @@ -75,7 +79,10 @@ X86ISA::I82094AA::getPort(const std::string &if_name, PortID idx) { if (if_name == "int_master") return intMasterPort; - return BasicPioDevice::getPort(if_name, idx); + if (if_name == "inputs") + return *inputs.at(idx); + else + return BasicPioDevice::getPort(if_name, idx); } AddrRangeList |