fastmodel: Expose all CPU communication ports from the GIC.
authorGabe Black <gabeblack@google.com>
Mon, 16 Sep 2019 21:58:43 +0000 (14:58 -0700)
committerGabe Black <gabeblack@google.com>
Mon, 14 Oct 2019 18:17:03 +0000 (18:17 +0000)
commit54646f5cd201c6e5672d866d2836b86768b280be
tree57f40969e440e586f70bbbc1b06be7a111562132
parent953ff92638591406674680626283c3dfdf2a7b34
fastmodel: Expose all CPU communication ports from the GIC.

The unconnected CPU ports/sockets still need to be connected for TLM to
be happy, so this change also adds a terminator module which finds all
unbound sockets, creates pair sockets for them to connect to, binds
everything together, and implements the target interface with a dummy
stub that will complain and crash gem5 if it ever gets called.

This will allow us to use the same GIC model to connect an arbitrary
number of cores, up to the architected limit of 256.

Change-Id: Iaa83fe4f023217dc91a3734b31f764fc4176130e
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21500
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/arch/arm/fastmodel/GIC/FastModelGIC.py
src/arch/arm/fastmodel/GIC/GIC.lisa
src/arch/arm/fastmodel/GIC/gic.cc
src/arch/arm/fastmodel/GIC/gic.hh
src/arch/arm/fastmodel/common/signal_receiver.hh