mem: Split memory controller into base MemCtrl and HeteroMemCtrl
This change splits the default gem5 memory controller into two
memory controllers: MemCtrl (base memory controller which can be
used with only a single memory interface dram/nvm), and
HeteroMemCtrl (heterogeneous memory controller which inherits from
MemCtrl and requires a dram and an nvm memory interface).
New arguments are added to many of the base class (MemCtrl) functions
(for example memory inteface to use that function for) which helps
in easier use of these in the inherited class (HeteroMemCtrl).
Tested-by: kokoro <firstname.lastname@example.org>
Maintainer: Bobby Bruce <email@example.com>
Maintainer: Jason Lowe-Power <firstname.lastname@example.org>
Reviewed-by: Bobby Bruce <email@example.com>
11 files changed