This template implements the mandatory functions of the main scenario
source file and provides an example use case.
Signed-off-by: Victor CLEMENT
---
Makefile.objs | 1 +
include/scenario/scenario.h | 5 ++
scenario/scenario.c | 168
The scheduler reads an event description file containing timestamps and
parameters then schedules those events. A user defined function is
called when those events expire. It is used for precise time
simulations.
Signed-off-by: Victor CLEMENT
---
Makefile.objs| 1 +
include
Add an option to Qemu in order to start the scenario engine at the end
of Qemu initialization.
Signed-off-by: Victor CLEMENT
---
qemu-options.hx | 12
vl.c| 45 -
2 files changed, 56 insertions(+), 1 deletion(-)
diff --git a
Ingenierie/qemu-scenario-engine-demo
Victor CLEMENT (7):
configure: add --enable-scenario-engine option
gpio-pl061: add a scenario engine interaction API
chardev: add a scenario engine backend
scenario-engine: add utilities
scenario-engine: add a time based event scheduler
scenario engin
"pl061_update".
Signed-off-by: Victor CLEMENT
---
hw/gpio/pl061.c | 38 ++
include/hw/gpio/pl061_simu.h | 20
2 files changed, 58 insertions(+)
create mode 100644 include/hw/gpio/pl061_simu.h
diff --git a/hw/gpio/pl061.c
used.
Signed-off-by: Victor CLEMENT
---
backends/Makefile.objs | 1 +
backends/scenario.c| 107 +
include/sysemu/char.h | 13 ++
qapi-schema.json | 3 +-
qemu-char.c| 5 +++
5 files changed, 128 insertions(+), 1
This scenario utilities file currently implements one function.
This function is the event callback registration function which walks
through all guest devices to find those of a given type then registers
their event callback.
Signed-off-by: Victor CLEMENT
---
Makefile.objs| 6
Add an option to ./configure script to enable the scenario engine.
It defines the CONFIG_SCENARIO constant.
Signed-off-by: Victor CLEMENT
---
configure | 8
1 file changed, 8 insertions(+)
diff --git a/configure b/configure
index cd219d8..466a71f 100755
--- a/configure
+++ b/configure
The masked interrupt status register should be the state of the interrupt
after masking.
There should be a logical AND instead of a logical OR between the
interrupt status and the interrupt mask.
Signed-off-by: Victor CLEMENT
---
See ARM PrimeCell GPIO manual below
http://infocenter.arm.com
The 'sleep' parameter sets the icount_sleep mode, which is enabled by
default. To disable it, add the 'sleep=no' parameter (or 'nosleep') to the
qemu -icount option.
Signed-off-by: Victor CLEMENT
---
cpus.c | 9 +
qemu-options.hx | 12 ++-
While qemu is running in sleep=no mode, a warning will be printed
when no timer deadline is set.
As this mode is intended for getting deterministic virtual time, if no
timer is set on the virtual clock this determinism is broken.
Signed-off-by: Victor CLEMENT
---
cpus.c | 6 ++
1 file
real-time software using this mode, one need to write some scenario
which will simulate inputs on an emulated device then record traces from
this inputs and the associated outputs from the tested software.
Victor CLEMENT (3):
icount: implement a new icount_sleep mode toggleing real-time cpu
When the icount_sleep mode is disabled, the QEMU_VIRTUAL_CLOCK runs at the
maximum possible speed by warping the sleep times of the virtual cpu to the
soonest clock deadline. The virtual clock will be updated only according
the instruction counter.
Signed-off-by: Victor CLEMENT
---
cpus.c | 70
- Mail original -
> De: "Paolo Bonzini"
> À: "Victor Clement" , qemu-devel@nongnu.org
> Cc: "françois Guerret" , "Julien Viard de
> Galbert"
> Envoyé: Vendredi 29 Mai 2015 13:14:38
> Objet: Re: [Qemu-devel] [PATCH 0/3] implem
- Mail original -
> De: "Paolo Bonzini"
> À: "Victor CLEMENT" , qemu-devel@nongnu.org
> Cc: "francois guerret"
> Envoyé: Mercredi 27 Mai 2015 14:52:00
> Objet: Re: [Qemu-devel] [PATCH 1/3] icount: implement a new icount_no_rt mode
> wi
- Mail original -
> De: "Paolo Bonzini"
> À: "Victor CLEMENT" , qemu-devel@nongnu.org
> Cc: "francois guerret"
> Envoyé: Mercredi 27 Mai 2015 14:52:55
> Objet: Re: [Qemu-devel] [PATCH 0/3] implement a new icount_no_rt mode
>
>
While qemu is running in icount_no_rt mode, a warning will be printed
when no timer deadline is set.
As this mode is intended for getting deterministic virtual time, if no
timer is set on the virtual clock this determinism is broken.
Signed-off-by: Victor CLEMENT
---
cpus.c | 6 ++
1 file
sing the virtual clock
too.
This kind of changes cannot be generic as the scenario will depend
on the tested application, so modified emulators are not part of this
patch set.
Victor CLEMENT (3):
icount: implement a new icount_no_rt mode without real time cpu
sleeping
icount: add rt p
In this new icount_no_rt mode, the QEMU_VIRTUAL_CLOCK runs at the
maximum possible speed by warping the sleep times of the virtual cpu to the
soonest clock deadline. The virtual clock will be updated only according
the instruction counter.
Signed-off-by: Victor CLEMENT
---
cpus.c | 64
The 'rt' parameter sets the icount_no_rt mode, which is not enabled by
default. To enable it, add the 'nort' parameter (or 'rt=off') to the
qemu -icount option.
Signed-off-by: Victor CLEMENT
---
cpus.c | 15 +--
qemu-options.hx | 12 ++-
Hello,
Check the icount option, which uses the virtual cpu instrution counter
to calculate the value of QEMU_CLOCK_VIRTUAL. This is not exactly what
you want because the clock will still run when qemu is preempted by the
host but this is the closest thing you have.
I'm working on a patch that wi
21 matches
Mail list logo