On Mon, 18 Jul 2022 at 16:50, Helge Deller wrote:
> On 7/18/22 16:33, Peter Maydell wrote:
> > So my preference would be that we should just say "we can assume
> > that pipe2 is always available and implemented on linux hosts" and
> > remove the code that handles the possibility that it isn't.
>
>
On 03/02/2021 17.02, Michael Roth wrote:
On Wed, Feb 03, 2021 at 04:47:08PM +0100, Kevin Wolf wrote:
Am 03.02.2021 um 13:45 hat BALATON Zoltan geschrieben:
On Wed, 3 Feb 2021, Daniel P. Berrangé wrote:
On Tue, Feb 02, 2021 at 09:58:15PM +0100, Philippe Mathieu-Daudé wrote:
Follow the inclusiv
On 7/14/22 17:13, Hanna Reitz wrote:
that we want to run before the others but still only when invoking
finalize/commit/abort.
I don’t understand this yet (but perhaps it’ll become clearer with the
following patches); doesn’t the new function do the opposite? I.e.,
basically add some clean-up
On 7/18/22 18:17, Peter Maydell wrote:
> On Mon, 18 Jul 2022 at 16:50, Helge Deller wrote:
>> On 7/18/22 16:33, Peter Maydell wrote:
>>> So my preference would be that we should just say "we can assume
>>> that pipe2 is always available and implemented on linux hosts" and
>>> remove the code that
So we can reuse to inject state messages.
Signed-off-by: Eugenio Pérez
---
net/vhost-vdpa.c | 71 ++--
1 file changed, 44 insertions(+), 27 deletions(-)
diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c
index 986e6414b4..fa00928854 100644
--- a/net/vho
It was easier to allow vhost_svq_add to handle the memory. Now that we
will move SVQDesc to an opaque context, it's better to handle it in the
caller.
Signed-off-by: Eugenio Pérez
---
hw/virtio/vhost-shadow-virtqueue.c | 10 --
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git
CVQ of net vhost-vdpa devices can be intercepted since the work of [1]. The
virtio-net device model is updated. The migration was blocked because although
the state can be megrated between VMM it was not possible to restore on the
destination NIC.
This series add support for SVQ to inject external
The pipe2() syscall is available on all Linux platforms since kernel
2.6.27, so use it unconditionally to emulate pipe() and pipe2().
Signed-off-by: Helge Deller
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index dbebfa4a8b..b27a6552aa 100644
--- a/linux-user/syscall.c
+++ b/linux-us
So its generic enough to accept any out sg buffer and we can inject
NIC state messages.
Signed-off-by: Eugenio Pérez
---
net/vhost-vdpa.c | 29 +++--
1 file changed, 15 insertions(+), 14 deletions(-)
diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c
index fa00928854..533b
This is needed so the destination vdpa device see the same state a the
guest set in the source.
Signed-off-by: Eugenio Pérez
---
include/net/vhost-vdpa.h | 1 +
hw/net/vhost_net.c | 8 +
net/vhost-vdpa.c | 64 ++--
3 files changed, 71 inser
We can restore the device state in the destination via CVQ now. Remove
the migration blocker.
Signed-off-by: Eugenio Pérez
---
include/hw/virtio/vhost-vdpa.h | 1 -
hw/virtio/vhost-vdpa.c | 11 ---
net/vhost-vdpa.c | 2 --
3 files changed, 14 deletions(-)
diff --
On 7/12/22 23:19, Emanuele Giuseppe Esposito wrote:
diff --git a/block/block-backend.c b/block/block-backend.c
index 674eaaa2bf..6e90ac3a6a 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -2184,8 +2184,12 @@ static int blk_do_set_aio_context(BlockBackend *blk,
AioContext *new_c
On 7/12/22 23:19, Emanuele Giuseppe Esposito wrote:
+/* No need to ignore `child`, because it has been detached already */
ignore = NULL;
-child->klass->set_aio_ctx(child, s->old_parent_ctx, &ignore);
+ret = child->klass->change_aio_ctx(child, s->old_parent_ctx,
This program:
int main(void) { asm("bv %r0(%r0)"); return 0; }
produces on real hppa hardware the expected segfault:
SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x3} ---
killed by SIGSEGV +++
Segmentation fault
But when run on linux-user you get instead internal qemu
On Mon, 18 Jul 2022 at 17:34, Helge Deller wrote:
>
> The pipe2() syscall is available on all Linux platforms since kernel
> 2.6.27, so use it unconditionally to emulate pipe() and pipe2().
>
> Signed-off-by: Helge Deller
>
Reviewed-by: Peter Maydell
thanks
-- PMM
it.infradead.org/qemu-nvme
> into staging (2022-07-15 15:38:13 +0100)
>
> are available in the Git repository at:
>
> https://git.linaro.org/people/pmaydell/qemu-arm.git
> tags/pull-target-arm-20220718
>
> for you to fetch changes up to 004c8a8bc569c8b18fca6fc90ffe3223daaf17
On Mon, 18 Jul 2022 at 17:44, Helge Deller wrote:
>
> This program:
>
> int main(void) { asm("bv %r0(%r0)"); return 0; }
>
> produces on real hppa hardware the expected segfault:
>
> SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x3} ---
> killed by SIGSEGV +++
> Segmenta
* Juan Quintela (quint...@redhat.com) wrote:
> This patch adds counters and similar. Logic will be added on the
> following patch.
Yeh, I think so; the duplicate becing the counter for zero pages still
throws me.
Reviewed-by: Dr. David Alan Gilbert
> Signed-off-by: Juan Quintela
>
> ---
>
A recent commit moved some Haiku-specific code parts from oslib-posix.c
to cutils.c, but failed to move the corresponding header #include
statement, too, so "make vm-build-haiku.x86_64" is currently broken.
Fix it by moving the header #include, too.
Fixes: 06680b15b4 ("include: move qemu_*_exec_di
From: "Jason A. Donenfeld"
If the FDT contains /chosen/rng-seed, then the Linux RNG will use it to
initialize early. Set this using the usual guest random number
generation function. This is confirmed to successfully initialize the
RNG on Linux 5.19-rc6. The rng-seed node is part of the DT spec.
The following changes since commit 782378973121addeb11b13fd12a6ac2e69faa33f:
Merge tag 'pull-target-arm-20220718' of
https://git.linaro.org/people/pmaydell/qemu-arm into staging (2022-07-18
16:29:32 +0100)
are available in the Git repository at:
https://gitlab.com/danielhb/qem
From: Cédric Le Goater
This replaces the IRQ array 'irq_inputs' with GPIO lines, the goal
being to remove 'irq_inputs' when all CPUs have been converted.
Signed-off-by: Cédric Le Goater
Acked-by: Mark Cave-Ayland
Reviewed-by: Peter Maydell
Message-Id: <20220705145814.461723-2-...@kaod.org>
Si
From: Matheus Ferst
GEN_PRIV and related CHK_* macros just assumed that variable named
"ctx" would be in scope when they are used, and that it would be a
pointer to DisasContext. Change these macros to receive the pointer
explicitly.
Reviewed-by: Leandro Lupori
Signed-off-by: Matheus Ferst
Sig
From: Cédric Le Goater
Signed-off-by: Cédric Le Goater
Reviewed-by: Peter Maydell
Message-Id: <20220705145814.461723-3-...@kaod.org>
Signed-off-by: Daniel Henrique Barboza
---
hw/ppc/ppc.c | 5 +
hw/ppc/ppc405_uc.c | 4 ++--
hw/ppc/ppc440_bamboo.c | 4 ++--
hw/ppc/sam460e
From: Matheus Ferst
The code in linux-user/ppc/cpu_loop.c expects POWERPC_EXCP_PRIV
exception with error POWERPC_EXCP_PRIV_OPC or POWERPC_EXCP_PRIV_REG,
while POWERPC_EXCP_INVAL_SPR is expected in POWERPC_EXCP_INVAL
exceptions. This mismatch caused an EXCP_DUMP with the message "Unknown
privilege
From: Cédric Le Goater
Signed-off-by: Cédric Le Goater
Acked-by: Mark Cave-Ayland
Reviewed-by: Peter Maydell
Message-Id: <20220705145814.461723-4-...@kaod.org>
Signed-off-by: Daniel Henrique Barboza
---
hw/ppc/mac_newworld.c | 8
hw/ppc/mac_oldworld.c | 2 +-
hw/ppc/pegasos2.c
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-4-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Matheus Ferst
The only PowerPC implementations with these insns were the 460 and 460F,
which had their definitions removed in [1].
[1] 7ff26aa6c657 ("target/ppc: Remove unused PPC 460 and 460F definitions")
Signed-off-by: Matheus Ferst
Reviewed-by: Fabiano Rosas
Message-Id: <20220627141
From: Cédric Le Goater
Signed-off-by: Cédric Le Goater
Reviewed-by: Peter Maydell
Message-Id: <20220705145814.461723-5-...@kaod.org>
Signed-off-by: Daniel Henrique Barboza
---
hw/ppc/e500.c | 8
hw/ppc/ppc.c | 5 +
2 files changed, 5 insertions(+), 8 deletions(-)
diff --git a/h
From: Murilo Opsfelder Araujo
Some systems have /proc/device-tree/cpus/../clock-frequency. However,
this is not the expected path for a CPU device tree directory.
Signed-off-by: Murilo Opsfelder Araujo
Signed-off-by: Fabiano Rosas
Reviewed-by: David Gibson
Reviewed-by: Daniel Henrique Barboza
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-12-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 1 +
target/ppc/insn32.decode |
From: Cédric Le Goater
Signed-off-by: Cédric Le Goater
Reviewed-by: Peter Maydell
Message-Id: <20220705145814.461723-6-...@kaod.org>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/cpu.h | 1 -
target/ppc/cpu_init.c | 5 -
2 files changed, 6 deletions(-)
diff --git a/target/pp
From: Matheus Ferst
A call to "gen_(hv)priv_exception" should use POWERPC_EXCP_PRIV_* as the
'error' argument instead of POWERPC_EXCP_INVAL_*, and POWERPC_EXCP_FU is
an exception type, not an exception error code. To correctly set
FSCR[IC], we should raise Facility Unavailable with this exception
From: Matheus Ferst
Testing on a POWER9 DD2.3, we observed that the Linux kernel delivers a
signal with si_code ILL_PRVOPC (5) when a userspace application tries to
use slbfee. To obtain this behavior on linux-user, we should use
POWERPC_EXCP_PRIV with POWERPC_EXCP_PRIV_OPC.
No functional change
From: Leandro Lupori
This initial version supports the invalidation of one or all
TLB entries. Flush by PID/LPID, or based in process/partition
scope is not supported, because it would make using the
generic QEMU TLB implementation hard. In these cases, all
entries are flushed.
Signed-off-by: Le
From: Leandro Lupori
Check if the number and size of Radix levels are valid on
POWER9/POWER10 CPUs, according to the supported Radix Tree
Configurations described in their User Manuals.
Signed-off-by: Leandro Lupori
Reviewed-by: Fabiano Rosas
Message-Id: <20220628133959.15131-3-leandro.lup...@
From: Matheus Ferst
POWERPC_EXCP_INVAL should only be or-ed with other constants prefixed
with POWERPC_EXCP_INVAL_. Also, take the opportunity to move both
helpers under #if !defined(CONFIG_USER_ONLY) as the instructions that
use them are privileged.
No functional change is intended, the lower 4
From: Matheus Ferst
The 'error' argument of gen_inval_exception will be or-ed with
POWERPC_EXCP_INVAL, so it should always be a constant prefixed with
POWERPC_EXCP_INVAL_. No functional change is intended,
spr_write_excp_vector is only used by register_BookE_sprs, and
powerpc_excp_booke ignores t
From: Matheus Ferst
Equivalent to CHK_SV and CHK_HV, but can be used in decodetree methods.
Reviewed-by: Leandro Lupori
Signed-off-by: Matheus Ferst
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-3-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-8-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Leandro Lupori
Also decode RIC, PRS and R operands.
Signed-off-by: Leandro Lupori
Reviewed-by: Daniel Henrique Barboza
Message-Id: <20220712193741.59134-2-leandro.lup...@eldorado.org.br>
[danielhb: mark bit 31 in @X_tlbie pattern as ignored]
Signed-off-by: Daniel Henrique Barboza
---
t
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-5-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-9-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-7-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-11-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/insn32.decode | 2 ++
target/ppc/translate.c |
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-6-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Lucas Coutinho
Reviewed-by: Leandro Lupori
Signed-off-by: Lucas Coutinho
Message-Id: <20220701133507.740619-10-lucas.couti...@eldorado.org.br>
Signed-off-by: Daniel Henrique Barboza
---
target/ppc/helper.h | 2 +-
target/ppc/insn32.decode |
From: Leandro Lupori
According to PowerISA 3.1B, Book III 6.7.6 programming note, the
page directory base addresses are expected to be aligned to their
size. Real hardware seems to rely on that and will access the
wrong address if they are misaligned. This results in a
translation failure even if
On Mon, Jul 18, 2022 at 9:22 PM Thomas Huth wrote:
> A recent commit moved some Haiku-specific code parts from oslib-posix.c
> to cutils.c, but failed to move the corresponding header #include
> statement, too, so "make vm-build-haiku.x86_64" is currently broken.
> Fix it by moving the header #in
From: Leandro Lupori
Check if partition and process tables are properly aligned, in
their size, according to PowerISA 3.1B, Book III 6.7.6 programming
note. Hardware and KVM also raise an exception in these cases.
Signed-off-by: Leandro Lupori
Reviewed-by: Fabiano Rosas
Message-Id: <2022062813
From: Matheus Ferst
When using "-machine none", env->tb_env is not allocated, causing the
segmentation fault reported in issue #85 (launchpad bug #811683). To
avoid this problem, check if the pointer != NULL before calling the
methods to print TBU/TBL/DECR.
Resolves: https://gitlab.com/qemu-proj
ping
On Tue, Jul 5, 2022 at 10:49 AM Dao Lu wrote:
>
> Added support for RISC-V PAUSE instruction from Zihintpause extension,
> enabled by default.
>
> Tested-by: Heiko Stuebner
> Signed-off-by: Dao Lu
> ---
> target/riscv/cpu.c | 2 ++
> target/riscv/cpu.h
From: Graeme Gregory
The FRU devices for dc-scm-v1 and firework on bus IF_NONE.
-drive file=$DC_SCM_FRU,format=raw,if=none,unit=0
-drive file=$FIREWORK_FRU,format=raw,if=none,unit=1
file must match FRU size of 128k
Signed-off-by: Graeme Gregory
Signed-off-by: Jae Hyun Yoo
Reviewed-by: C�dric
On 15/07/2022 17:54, Víctor Colombo wrote:
Add the Special Purpose Registers HASHKEYR and HASHPKEYR, which were
introduced by the Power ISA 3.1B. They are used by the new instructions
hashchk(p) and hashst(p).
The ISA states that the Operating System should generate the value for
these registers
On Mon, Jul 18, 2022 at 09:56:17AM +0100, Daniel P. Berrangé wrote:
> On Sat, Jul 16, 2022 at 10:34:34AM -0700, Peter Delevoryas wrote:
> > On macOS, private $TMPDIR's are the default. These $TMPDIR's are
> > generated from a user's unix UID and UUID [1], which can create a
> > relatively long path
Reviewed-by: Lucas Mateus Castro
On 15/07/2022 17:54, Víctor Colombo wrote:
Implementation for instructions hashstp and hashchkp, the privileged
versions of hashst and hashchk, which were added in Power ISA 3.1B.
Signed-off-by: Víctor Colombo
---
target/ppc/excp_helper.c |
On 07/07/2022 20.46, Peter Xu wrote:
We used to stop running all tests if uffd is not detected. However
logically that's only needed for postcopy not the rest of tests.
Keep running the rest when still possible.
Signed-off-by: Peter Xu
---
tests/qtest/migration-test.c | 11 +--
1 f
On 12/07/2022 22:52, Mark Cave-Ayland wrote:
Here is the follow-on series from part 1 which completes the work to remove
the legacy global device init functions for PS2 devices. Now that part 1 has
been applied, the hard part to remove the PS2 function callback and argument
has been completed an
On 15/07/2022 17:54, Víctor Colombo wrote:
Implementation for instructions hashst and hashchk, which were added
in Power ISA 3.1B.
It was decided to implement the hash algorithm from ground up in this
patch exactly as described in Power ISA.
Signed-off-by: Víctor Colombo
---
target/ppc/excp_
This will be soon be used to hold the underlying PS2_KBD_DEVICE object.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-5-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé
---
hw/input
This is for consistency with all of the other devices that use the PS2 keyboard
device.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-3-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daud
This will soon be used to store the reference to the PL050 parent device
for PL050_KBD_DEVICE and PL050_MOUSE_DEVICE.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-8-mark.cave-ayl...@ilande.co.uk>
Revi
The following changes since commit 782378973121addeb11b13fd12a6ac2e69faa33f:
Merge tag 'pull-target-arm-20220718' of
https://git.linaro.org/people/pmaydell/qemu-arm into staging (2022-07-18
16:29:32 +0100)
are available in the Git repository at:
https://github.com/mcayland/qem
This allows the QOM types in pl050.c to be used elsewhere by simply including
pl050.h.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-2-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé
The logic for initialising the register memory region and the sysbus output IRQ
does not depend upon any device properties and so can be moved from
pl050_realize() to pl050_init().
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message
Instantiate the PS2 mouse device within PL050MouseState using
object_initialize_child() in pl050_mouse_init() and realize it in
pl050_mouse_realize() accordingly.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <202207122152
This allows the compiler to enforce that the PS2 device pointer is always of
type PS2State. Update the name of the pointer from dev to ps2dev to emphasise
this type change.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20
Move the initialisation of the keyboard port from lasips2_init() to
a new lasips2_kbd_port_init() function which will be invoked using
object_initialize_child() during the LASIPS2 device init.
Update LASIPS2State so that it now holds the new LASIPS2KbdPort child object and
ensure that it is realis
Introduce a new pl050_kbd_class_init() function containing a call to
device_class_set_parent_realize() which calls a new pl050_kbd_realize()
function to initialise the PS2 keyboard device.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Introduce a new pl050_mouse_class_init() function containing a call to
device_class_set_parent_realize() which calls a new pl050_mouse_realize()
function to initialise the PS2 mouse device.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
This will be soon be used to hold the underlying PS2_MOUSE_DEVICE object.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-6-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé
---
hw/inp
The existing boolean irq field in LASIPS2Port will soon be replaced by a proper
qemu_irq, so rename the field to birq to allow the upcoming qemu_irq to use the
irq name.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220
This allows the compiler to enforce that the PS2 device pointer is always of
type PS2State. Update the name of the pointer from dev to ps2dev to emphasise
this type change.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20
Instantiate the PS2 keyboard device within PL050KbdState using
object_initialize_child() in pl050_kbd_init() and realize it in
pl050_kbd_realize() accordingly.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.
Move the initialisation of the mouse port from lasips2_init() to
a new lasips2_mouse_port_init() function which will be invoked using
object_initialize_child() during the LASIPS2 device init.
Update LASIPS2State so that it now holds the new LASIPS2MousePort child object
and
ensure that it is real
The base property was only needed for use by vmstate_register() in order to
preserve migration compatibility. Now that the lasips2 migration state is
registered through the DeviceClass vmsd field, the base property and also
the lasips2_properties array can be removed completely as they are no longe
The LASIPS2 device named input gpio is soon to be connected to the port output
IRQs. Add a new int_status field to LASIPS2State which is a bitmap representing
the port input IRQ status which will be enabled in the next patch.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helg
Since lasips2 is a qdev device then vmstate_ps2_mouse can be registered using
the DeviceClass vmsd field instead.
Note that due to the use of the base parameter in the original
vmstate_register()
function call, this is actually a migration break for the HPPA B160L machine.
Signed-off-by: Mark Ca
Introduce a new lasips2_mouse_port_class_init() function which uses a new
lasips2_mouse_port_realize() function to initialise the PS2 mouse device.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-23-mark
There is only one user of the legacy lasips2_initfn() function which is in
machine_hppa_init(), so inline its functionality into machine_hppa_init() and
then remove it.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <202207
Now we can implement port-based IRQs by wiring the PS2 device IRQs to the
LASI2Port named input gpios rather than directly to the LASIPS2 device, and
generate the LASIPS2 output IRQ from the int_status bitmap representing the
individual port IRQs instead of the birq boolean.
This enables us to rem
This will be soon be used to hold the underlying PS2_KBD_DEVICE object.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-18-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé
---
hw/inpu
Introduce a new lasips2_port_init() QOM init function for the LASIPS2_PORT type
and use it to initialise a new gpio for use as a port IRQ. Add a new qemu_irq
representing the gpio as a new irq field within LASIPS2Port.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Delle
This will soon be used to store the reference to the LASIPS2_PORT parent device
for LASIPS2_KBD_PORT and LASIPS2_MOUSE_PORT.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-26-mark.cave-ayl...@ilande.co.
Since this series has already introduced a migration break for the HPPA B160L
machine, we can use this opportunity to improve the VMStateDescription for
the LASIPS2 device.
Add the new int_status field to the VMStateDescription and remodel the ports
as separate VMSTATE_STRUCT instances representin
The named input gpio is to be connected to the IRQ output of the downstream
PS2 device and used to drive the port IRQ. Initialise the named input gpio
in lasips2_port_init() and add new lasips2_port_class_init() and
lasips2_port_realize() functions to connect the PS2 device output gpio to
the new n
This makes it clearer that the pointer is a reference to the LASIPS2 container
device rather than an implied part of the QOM hierarchy.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-30-mark.cave-ayl...
This becomes an abstract QOM type which will be a parent type for separate
keyboard and mouse port types.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-17-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Ph
Instantiate the PS2 keyboard device within KBDState using
object_initialize_child() in i8042_initfn() and i8042_mmio_init() and realize
it in i8042_realizefn() and i8042_mmio_realize() accordingly.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter
Now that the legacy ps2_kbd_init() function is no longer used, it can be
completely
removed along with its associated trace-event.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-38-mark.cave-ayl...@ila
This will be soon be used to hold the underlying PS2_MOUSE_DEVICE object.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-19-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé
---
hw/in
This is shorter to type and keeps the naming convention consistent within the
LASIPS2 device.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-31-mark.cave-ayl...@ilande.co.uk>
Reviewed-by: Philippe Mathi
Instantiate the PS2 mouse device within LASIPS2MousePort using
object_initialize_child() in lasips2_mouse_port_init() and realize it in
lasips2_mouse_port_realize() accordingly.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id
Now that the legacy ps2_mouse_init() function is no longer used, it can be
completely
removed along with its associated trace-event.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-40-mark.cave-ayl...@i
Introduce a new lasips2_kbd_port_class_init() function which uses a new
lasips2_kbd_port_realize() function to initialise the PS2 keyboard device.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-22-mark.
Author: Thomas Huth - https://gitlab.com/thuth
Merge Request:
https://gitlab.com/qemu-project/python-qemu-qmp/-/merge_requests/9
... from: thuth/python-qemu-qmp:fixes
... into: qemu-project/python-qemu-qmp:main
'returns-whitelist' has been renamed to 'command-returns-exceptions' in QEMU
commit b8
This legacy function is only used during the initialisation of the MIPS magnum
machine, so inline its functionality directly into mips_jazz_init() and then
remove it.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712
The LASI device (and so also the LASIPS2 device) are only used for the HPPA
B160L machine which is a big endian architecture.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <20220712215251.7944-32-mark.cave-ayl...@ilande.co
On 11/07/2022 22.30, John Snow wrote:
On Mon, Jul 11, 2022 at 5:57 AM Thomas Huth wrote:
'returns-whitelist' has been renamed to 'command-returns-exceptions' in
commit b86df3747848 ("qapi: Rename pragma *-whitelist to *-exceptions").
Signed-off-by: Thomas Huth
---
python/qemu/qmp/legacy.py
Instantiate the PS2 keyboard device within LASIPS2KbdPort using
object_initialize_child() in lasips2_kbd_port_init() and realize it in
lasips2_kbd_port_realize() accordingly.
Signed-off-by: Mark Cave-Ayland
Tested-by: Helge Deller
Acked-by: Helge Deller
Reviewed-by: Peter Maydell
Message-Id: <
201 - 300 of 339 matches
Mail list logo