Gabe Black
2a348ccd6c
python,scons: Add a dummy m5/objects/SimObject.py.
...
This serves two purposes. First, it's a way to declare the base
SimObject class and params using the SimObject() SCons mechanism, while
the actual class still lives at m5/SimObject.py.
Second, it alleviates a very old inconsistency where *most* SimObjects
are imported using the m5.objects.Foo path, except SimObject itself
which lives under m5.SimObject. With this change, it will live under
both, more or less.
It may be possible to remove the inconsistency entirely in the future
and move m5.SimObject entirely to m5.objects.SimObject and only declare
it with SCons's SimObject(), but that won't quite work during this
transitional period, and it wouldn't give users a chance to move over to
the new name.
Change-Id: Ic714bacfaef73d1116ab7ff716cf19b7ce4b67e1
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/49408
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Maintainer: Jason Lowe-Power <power.jg@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-08 08:01:23 +00:00
Gabe Black
25bfa81ea8
scons: When importing SimObjects, use a copy of globals().
...
Use a copy of globals when importing SimObjects, instead of the real
deal that the SConscript runs under. This avoids polluting the
SConscript namespace.
Change-Id: I689d693d93cc8998be0967ec2b0c58f5851d39cf
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/49407
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Maintainer: Jason Lowe-Power <power.jg@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-08 08:01:23 +00:00
Gabe Black
1c233ee9d2
scons: Add sim_object and enums arguments to SimObject().
...
This will explicitly declare what SimObject and Enum types need to be set
up in C++, which will make importing all the SimObject modules during
the setup phase of SCons uneccessary.
Change-Id: Id2d7603daf33b236ceaa0789e2f089f589d34e62
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/49406
Reviewed-by: Gabe Black <gabe.black@gmail.com >
Maintainer: Gabe Black <gabe.black@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-08 08:01:23 +00:00
Yu-hsin Wang
60e55ecef8
fastmodel: CortexR52 implements setResetAddr interface
...
Change-Id: I45da1c1538430061cc89f666cb02aa5fe77abcba
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53328
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Earl Ou <shunhsingou@google.com >
2021-12-08 03:12:36 +00:00
Yu-hsin Wang
0e48a05ed1
fastmodel: CortexA76 implements setResetAddr interface
...
Change-Id: I3612a62e2145d3442f01a69b21954fc00dd5ade9
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53327
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Earl Ou <shunhsingou@google.com >
2021-12-08 03:12:36 +00:00
Yu-hsin Wang
869d225e51
fastmodel: add setResetAddr interface
...
setResetAddr interface allows us to change the reset addr of fastmodel
cores. This will enable us to simulate hard reset or even complicated
boot sequence.
Change-Id: I0de828a4cd693119c0b44c74866efc1fffa81ace
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53326
Reviewed-by: Earl Ou <shunhsingou@google.com >
Reviewed-by: Gabe Black <gabe.black@gmail.com >
Maintainer: Gabe Black <gabe.black@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-08 03:12:36 +00:00
Gabe Black
7bd668217b
arch-x86: Hook up the newfstatat system call for 64 bit Linux.
...
Jira Issue: https://gem5.atlassian.net/browse/GEM5-1117
Change-Id: I711fc7d7009621bb317981293725416ae74d1d3d
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53206
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
2021-12-07 22:58:40 +00:00
Gabe Black
a8e9258f99
arch-x86: Hook up system calls for 64 bit processes.
...
These system calls already exist, they just weren't hooked up yet.
Change-Id: I5c2c66d34d0286aafe686e6511948ed4a6719672
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53203
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
2021-12-07 22:58:40 +00:00
Gabe Black
8ea2101b0e
sim-se: Implement the newfstatat system call.
...
Jira Issue: https://gem5.atlassian.net/browse/GEM5-1117
Change-Id: Id611bc7d6369b7d94ce27f33aff74a61879ce900
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53205
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
2021-12-07 22:58:40 +00:00
Gabe Black
1808da8f97
sim-se: Handle empty paths when resolving an "at" path.
...
When the "path" argument is empty, use the file name of the node
referred to by the fd file descriptor. This matches the behavior of
"at" system calls when the TGT_AT_EMPTY_PATH flag is set. The system
calls themselves are responsible for checking for that flag, and
returning an error if an empty "path" is not allowed.
Change-Id: Ib48d91ff983b3edb6f65e83686b90d79d74f3471
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53683
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 22:58:40 +00:00
Melissa Jost
954357d1ff
configs: Added LupV script to configs
...
This commit adds run_lupv.py, the script to run the LupVBoard, as well
as a README that details how to set up your system in order to run
the LupIO devices.
Change-Id: Ibea098f0409819b4c79063ab0be01518c7c6a61f
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53046
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Bobby R. Bruce
61d824b78e
stdlib: Update the LupvBoard to use KernelDiskWorkload
...
Change-Id: I5857f70e6ca61b8916792e634d20cdf827b21bd0
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53085
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Bobby R. Bruce
05878dc581
stdlib: Update the LupvBoard to use 'requires'
...
Usage of this function was previously avoided due to a bug which has
since been fixed:
https://gem5-review.googlesource.com/c/public/gem5/+/53003
Change-Id: Idc76ca26d02dcfbb290cebcca297e50e905d8e6d
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53084
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Bobby R. Bruce
d05145c5cb
stdlib: Update the LupvBoard to account for stdlib changes
...
This patch updates the board to account for the following changes:
* https://gem5-review.googlesource.com/c/public/gem5/+/51790
* https://gem5-review.googlesource.com/c/public/gem5/+/52184
* https://gem5-review.googlesource.com/c/public/gem5/+/52183
These changes, broadly speaking, remove the SimpeBoard as a superclass
and instead have all the boards inherit directly from the AbstractBoard.
It also fixes the order of operations (the order in which components are
incorporated and the board it setup).
Change-Id: I829ed515da28163cafbd292a9c141be4d350636e
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53083
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
0abe8e6b82
stdlib: Moved LupV Board to an experimental folder
...
Change-Id: I9cd67177fe8f0cb34bebb4fd3f9d3af0a518c7b6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53045
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
5891e3edf0
stdlib: Added Lupio-SYS device to LupV Board
...
This adds the Lupio-SYS device to the LupV Board, which finalizes
all of the devices needed to complete the LupIO device
collection within gem5.
Change-Id: I5af34d8c2735d74f4240d3077ed162dd25f2bcb2
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53044
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
1e5bda500d
dev: Added new Lupio-SYS device
...
This adds the LupIO system controller, in which we provide a
way to halt or reboot the system. It is implemented as a
BasicPIODevice.
Change-Id: I0031ac65d2aaca3460dcd4c59543a75230b0b52a
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53043
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
9d64f0fd90
stdlib: Added LupIO-IPI to the LupV Board
...
This adds the LupioIPI device to our LupV Board, which
finalizes the changes needed for the LupIO devices to run
with SMP support.
Change-Id: I3e51dae6d8d589d3b38c57c33322e740c832a03d
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53042
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
9f39ea136a
dev: Added new Lupio-IPI device
...
Added the LupIO inter-processor interrupt controller
device which will allow for us to use an SMP system
with the LupIO devices.
Change-Id: Iceab7446b36fb4d9b7605f3ba28665fca509d55d
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53041
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
72b5ed0543
dev: Modify LupIO-TMR for SMP support
...
Added a new LupioTimer struct, as well as a timer event function for
SMP support.
Change-Id: Idbcc549dfa3c5f8d5342d7e2250337a7482a1ac0
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53039
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
08fbf3358a
dev: Modified LupioBLK and LupioTTY to use LupioPIC
...
This replaced the PLIC device within the LupioBLK and
LupioTTY with the LupioPIC, so that interrupts now go
through the LupioPIC, and the PLIC isn't used anymore.
Change-Id: I0eb5d5c5df9cb43cfb5e8e3a5bf4176f48320696
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53038
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
3a06300988
stdlib: Modified LupV Platform + Board to use LupioPIC + TMR
...
This added both the LupioPIC and LupioTMR to the LupVBoard. While
both the PLIC and CLINT are left in the board for the bootloader
to recognize, they aren't used within the system. In addition, the
LupV Platform was changed in order to use the LupioPIC to handle
interrupts instead of the PLIC.
Change-Id: I57005903a7ec1136b42433ef5022ccb995abb9d6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53037
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Laura Hinman
07f6202244
dev: Added new LupIO-PIC device
...
This device is a virtual programmable interrupt controller, and it
manages interrupt requests from up to 32 sources. It is implemented
as a BasicPioDevice.
The following are the specifications regarding the LupIO-PIC:
https://gitlab.com/luplab/lupio/lupio-specs/-/blob/main/lupio-pic.md
Change-Id: I9ccdb607789f62cc89bdd7392d8e59c8e5c24797
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53036
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Laura Hinman
fadb88c06b
dev: Added new LupIO-TMR device
...
This device is a virtual timer that provides both a real-time
counter, as well as a configurable timer with periodic and
one-shot modes. It uses Ticks to measure time, and is
implemented as a BasicPioDevice.
The following are the specifications regarding the LupIO-TMR:
https://gitlab.com/luplab/lupio/lupio-specs/-/blob/main/lupio-tmr.md
Change-Id: I6fd6f4926494a44d20e1e0289f502535e84d7a69
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53035
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
64f7a6c371
stdlib: Added LupioBLK Device to LupVBoard
...
This adds the LupioBLK device to the growing LupVBoard,
as well as removes the VirtIOMMIO Device from the board.
Change-Id: Ibb45ecff07c7ce5d5d7be8cd8e20e9f62b591b02
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53034
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
dd3cdb69e4
dev: Added new Lupio-BLK Device
...
This is a virtual block device that provides a disk-like interface
for second level storage. It is implemented as a DMADevice, and
allows for the transfer of blocks from the block device to main
memory, and vice versa.
The following are the specifications regarding the LupIO-BLK:
https://gitlab.com/luplab/lupio/lupio-specs/-/blob/main/lupio-blk.md
Change-Id: Ifabc9b715fadb218e84952694d666b803e46e1f7
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53033
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
7422552458
stdlib: Added LupioTTY to LupVBoard
...
This added the new LupioTTY device to the growing
LupVBoard, and replaced the Uart8250 device in this
system.
Change-Id: Ib9a09565e8522178fd9c9f900db9d3b87e8b48fb
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53032
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Laura Hinman
de4aa693d9
dev: Added new LupIO-TTY device
...
This device is notfied when data is available from the terminal
(e.g. from keyboard input) in order to receive characters. It also
transmits characters to the terminal to be displayed.
The following are the specifications regarding the LupIO-TTY:
https://gitlab.com/luplab/lupio/lupio-specs/-/blob/main/lupio-tty.md
Change-Id: Icc8294984989cfa422d8ed227da39debfa49ab36
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53031
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
be0a75ecb3
stdlib: Added LupioRNG to LupVBoard
...
This adds the LupioRNG device to our LupVBoard, adding
random number generation capability to this RISC-V
based system.
Change-Id: I89c78c119a46cc7b056005d8abef16b1816ee4c4
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53030
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
f432498c00
dev: Added new LupIO-RNG device
...
This device is a random number generator that uses the Mersenne
Twister in order to provide the system with a set of random
numbers. It is implemented as a BasicPioDevice, and has both
read and write capabilities.
The following are the specifications regarding the LupIO-RNG:
https://gitlab.com/luplab/lupio/lupio-specs/-/blob/main/lupio-rng.md
Change-Id: Ia6aeb610ebe5589ed1f1548b823c5165236b03e6
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53029
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
be582b6c98
stdlib: Introduced new LupV Board
...
This LupV Board was created in order to connect all of the LupIO
devices, and allow us to run a full RISC-V system with them. As
the LupIO devices continue to be added, they will be integrated
into this board, and replace the current IO components.
The LupIO devices are a collection of processor
agnostic and easily implemented virtual devices. Details about the
specifications of all eight LupIO devices can be found here:
https://gitlab.com/luplab/lupio/lupio-specs
Information about how to build a RISCV full system with the LupIO-RTC
can be found here:
https://github.com/darchr/lupio-gem5/blob/lupio/README.md
Change-Id: I7d3186d3778d40b38027f245290432dbf4279dea
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53028
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 21:39:57 +00:00
Melissa Jost
ffabe59800
dev: Introduced new LupV Platform
...
This is a platform with a RISC-V processor and the LupIO devices that
will allow users to decide which programmable interrupt controller to
use in their system. It currently uses the PLIC device.
Change-Id: Ife6cf5c14845be725e66178693e9ba0ee5fda511
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53027
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Laura Hinman
cc87030895
dev: Added new LupIO-RTC device
...
This device supplies the computer system with the simulated time by
retrieving the current tick number and converting to seconds, then
returning that time in ISO 8601 format. It is implemented as a
BasicPioDevice and is read-only.
The following are the specifications regarding the LupIO-RTC:
https://gitlab.com/luplab/lupio/lupio-specs/-/blob/main/lupio-rtc.md
Change-Id: Ic99291e5c862e728dac90b15ca818d42f25cbbee
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53026
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 21:39:57 +00:00
Bobby R. Bruce
df51612714
scons,misc: Fix broken X86_MI_example build_opts
...
This bug was causing the compiler tests to fail:
https://jenkins.gem5.org/job/compiler-checks/65/
Change-Id: I472a50a4a415108d177255fa396e67385104b059
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53684
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Reviewed-by: Gabe Black <gabe.black@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 20:31:42 +00:00
Matthew Poremba
9cabfd7a9b
dev-hsa,gpu-compute: Properly assign DmaVirtDevices in py
...
These SimObjects are DmaVirtDevices in C++ but DmaDevices in the sim
object's python file. Make the sim object python files consistent.
Change-Id: I728ae737c5901e448628fc5ac877f261ca4c4393
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53704
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com >
Maintainer: Matt Sinclair <mattdsinclair@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 20:26:17 +00:00
Matthew Poremba
e0d62e510d
configs,mem-ruby: Remove reference to old GPU ptls
...
GPU_VIPER_Baseline, GPU_VIPER_Region, and GPU_RfO were removed some time
ago.
Change-Id: If873b0cfe8cc2b3096cbe97d4e13a8e02d2ec567
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53703
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com >
Maintainer: Matt Sinclair <mattdsinclair@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 20:26:17 +00:00
Mahyar Samani
82ef178d68
stdlib: Removing SingleChannelMemory
...
This change removes the code base for SingleChannelMemory and
replaces it with MultiChannelMemory. muli_channel defines all
the classes that were defined by single_channel. Basically any
SingleChannelMemory could be thought of as a MultiChannelMemory
with 1 channel.
Change-Id: If96079d5f77be5a3ba26d2c2ddb98f5c60375cd8
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53304
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 20:10:59 +00:00
Giacomo Travaglini
664fdd747a
arch-arm, dev-arm: Add currEL function to the ISA class
...
This utility is strictly ISA related. We are still keeping the
version accepting the TC as an argument; this is just
wrapping the ISA call.
In this way we are simplifying life for ISA devices, which have
a reference to the ISA object rather than a reference to the TC
Change-Id: Icb286d174538b50962d31aa3f6e836b3c791dc1c
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53624
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com >
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 18:58:49 +00:00
Giacomo Travaglini
2d8996a3eb
arch-arm: Remove currOpMode utility function
...
This was used by the currEL function only. We are progressively
removing any interface referring to Armv7 concepts
Change-Id: I1d97b392d063e85562b9234c094b1f2166e75ac9
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53623
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com >
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 18:58:49 +00:00
Giacomo Travaglini
adaab745a3
arch-arm, dev-arm: Move inSecureState helper to ISA class
...
The helper function should be really part of the Arm ISA class
Change-Id: Ida0393a12426c8973a9b8171ec2922c2dcec9f5a
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53268
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com >
Maintainer: Andreas Sandberg <andreas.sandberg@arm.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 18:58:49 +00:00
Matthew Poremba
bebed8544a
dev-amdgpu: Hotfix variable initialization
...
These non-initialized variables were causing the trace reader not to
record all lines.
Change-Id: I88764493d8124c072bc90ff9c08aa26421467f7b
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53063
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com >
Maintainer: Matt Sinclair <mattdsinclair@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 18:16:10 +00:00
Chen Zou
a1c0436f40
base-stats: HDF5 calls with better compatibility
...
H5Object.getObjName() is added at HDF5 V1.8.13.
As an example, compilation error would be thrown on CentOS 7.
obj.getObjnameByIdx(obj.getId()) would work with older versions.
Change-Id: I104eaac050db7501ab3a1aa3ad6dc1ee8b8d7e22
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53283
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Maintainer: Jason Lowe-Power <power.jg@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 15:28:01 +00:00
Jason Lowe-Power
883b8fe826
arch-arm,arch-sparc: Remove legacy stat for faults
...
This is a legacy stat that was not easy to tie to a Stats::Group.
In ARM, this stat wasn't actually counting all faults, it was only
counting the faults that occured in 32-bit mode, so it's probably safe
to remove the stat (it was wrong anyway). For SPARC, it's also unlikely
anyone is depending on this stat for their research.
Change-Id: Ic6c60526ea51467627535d732258c50ce0d2c03b
Signed-off-by: Jason Lowe-Power <jason@lowepower.com >
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/52504
Reviewed-by: Gabe Black <gabe.black@gmail.com >
Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 15:03:38 +00:00
Giacomo Travaglini
d9b18b0f8d
ext: Make gem5-SST Memory Size configurable from script
...
The memory interface param was hardcoded to 8GiB therefore
not matching any python changes in the memory size
Change-Id: I180f57f662886010a38a9b7ebbdbb73e0ae48276
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com >
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53625
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Reviewed-by: Hoa Nguyen <hoanguyen@ucdavis.edu >
Maintainer: Jason Lowe-Power <power.jg@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 09:35:38 +00:00
Mahyar Samani
404bf901d0
tests: Adding MultiChannelMemory to riscv-boot
...
This change adds MultiChannelMemory to the tests for full system
risc-v.
Change-Id: I3e9b6f7ac539c24ca9694c1c49afa09d0cecca2f
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53303
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 08:06:58 +00:00
Mahyar Samani
d1b1b52e00
tests: Adding MultiChannelMemory to x86-boot-tests
...
This change adds modules from multi_channel.py to full system
tests for x86.
Change-Id: I585a381fa23c6595051ea917c080228e25e0a1a9
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53243
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Jason Lowe-Power <power.jg@gmail.com >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 08:06:49 +00:00
Mahyar Samani
d28981742f
test: Updating simple_traffic_run and adding tests
...
This change updates simple_traffic_run.py with adding clock_domain
for GUPSGen based generators. Also the tests that resulted in
error before are now fixed and added.
Change-Id: I992898a3aef509afd9dec1f9b5d14c5fd67cff37
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53164
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
2021-12-07 08:06:39 +00:00
Mahyar Samani
2d0de8e524
stdlib: Adding clock_domain to GUPSGenerators
...
This change adds clock domain as a parameter to the GUPSGen
classes. This way the generator and other components can
work on different clock frequencies.
Change-Id: If916877a57b3c3a61073dad075e35f3f93af8459
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/53163
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com >
Maintainer: Jason Lowe-Power <power.jg@gmail.com >
2021-12-07 08:06:27 +00:00
Mahyar Samani
2671c59858
tests: Adding new test for traffic_gen
...
This change adds new tests for MultiChannelMemory,
PrivateL1CacheHierarchy, PrivateL1PrivateL2CacheHierachy,
GUPSGenerator, GUPSGeneratorEP, GUPSGeneratorPAR.
Change-Id: I1db1281cdd4ade65d9abf2d979ef45342b63496a
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/52905
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
2021-12-07 08:06:16 +00:00
Mahyar Samani
998cc8e679
stdlib: Updated MuliChannelMemory constructor
...
This change updates the constructor for MultiChannelMemory. The
constructor now assumes every input parameter is of type string
and casts them to proper types inside the function. This way
the MultiChannelMemory could be tested easier. Considering that
tests might not want to pass in all the arguments and might use
argparser to read the inputs.
Change-Id: I80786066ccbb9cb1b7111831d9bc9d95e5204f40
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/52904
Maintainer: Bobby Bruce <bbruce@ucdavis.edu >
Tested-by: kokoro <noreply+kokoro@google.com >
Reviewed-by: Bobby Bruce <bbruce@ucdavis.edu >
2021-12-07 08:05:58 +00:00