mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 18:23:57 -06:00
adb: fix adb-mouse read length and revert disable-reg3-direct-writes workaround
Commit 84051eb400
"adb: add property to disable direct reg 3 writes" introduced
a workaround for spurious writes to ADB register 3 when MacOS 9 enables
autopoll on the mouse device. Further analysis shows that the problem is that
only a partial request is sent, and since the len parameter is ignored then
stale data from the previous request is used causing the incorrect address
assignment.
Remove the disable-reg3-direct-writes workaround and instead check the length
parameter when the write is attempted, discarding the invalid request.
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Tested-by: Finn Thain <fthain@telegraphics.com.au>
Acked-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20200623204936.24064-3-mark.cave-ayland@ilande.co.uk>
This commit is contained in:
parent
bcaaefdbb2
commit
167f1667b1
5 changed files with 40 additions and 44 deletions
|
@ -404,11 +404,9 @@ static void ppc_core99_init(MachineState *machine)
|
|||
|
||||
adb_bus = qdev_get_child_bus(dev, "adb.0");
|
||||
dev = qdev_new(TYPE_ADB_KEYBOARD);
|
||||
qdev_prop_set_bit(dev, "disable-direct-reg3-writes", true);
|
||||
qdev_realize_and_unref(dev, adb_bus, &error_fatal);
|
||||
|
||||
dev = qdev_new(TYPE_ADB_MOUSE);
|
||||
qdev_prop_set_bit(dev, "disable-direct-reg3-writes", true);
|
||||
qdev_realize_and_unref(dev, adb_bus, &error_fatal);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue