Hi Peter,
On 17/10/23 14:23, Peter Maydell wrote:
Now that we have converted to qdev, we can use the newer
qemu_input_handler_register() API rather than the legacy
qemu_add_kbd_event_handler().
Since we only have one user, take the opportunity to convert
from scancodes to QCodes, rather than using
qemu_input_key_value_to_scancode() (which adds an 0xe0
prefix and encodes up/down indication in the scancode,
which our old handler function then had to reverse). That
lets us drop the old state field which was tracking whether
we were halfway through a two-byte scancode.
Signed-off-by: Peter Maydell <[email protected]>
---
include/hw/input/stellaris_gamepad.h | 2 +-
hw/arm/stellaris.c | 6 ++++-
hw/input/stellaris_gamepad.c | 33 +++++++++++++---------------
3 files changed, 21 insertions(+), 20 deletions(-)
If
https://lore.kernel.org/qemu-devel/[email protected]/
gets merged before you respin, this structure needs to be declared
const:
+static QemuInputHandler stellaris_gamepad_handler = {
+ .name = "Stellaris Gamepad",
+ .mask = INPUT_EVENT_MASK_KEY,
+ .event = stellaris_gamepad_event,
+};