qemu/hw/arm
Peter Maydell ff7888dcc6 hw/arm/musicpal: Convert to qemu_add_kbd_event_handler()
Convert the musicpal key input device to use
qemu_add_kbd_event_handler().  This lets us simplify it because we no
longer need to track whether we're in the middle of a PS/2 multibyte
key sequence.

In the conversion we move the keyboard handler registration from init
to realize, because devices shouldn't disturb the state of the
simulation by doing things like registering input handlers until
they're realized, so that device objects can be introspected
safely.

The behaviour where key-repeat is permitted for the arrow-keys only
is intentional (added in commit 7c6ce4baed), so we retain it,
and add a comment to that effect.

This is a migration compatibility break for musicpal.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Tested-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 20231103182750.855577-1-peter.maydell@linaro.org
2024-01-26 11:30:47 +00:00
..
allwinner-a10.c hw/arm: Add WDT to Allwinner-A10 and Cubieboard 2023-04-20 10:21:13 +01:00
allwinner-h3.c hw/arm: Add WDT to Allwinner-H3 and Orangepi-PC 2023-04-20 10:21:14 +01:00
allwinner-r40.c hw/arm/allwinner: Clean up local variable shadowing 2023-09-29 10:07:15 +02:00
armsse.c hw: Simplify accesses to the CPUState::'start-powered-off' property 2024-01-05 16:20:15 +01:00
armv7m.c hw/arm/armv7m: alias the NVIC "num-prio-bits" property 2024-01-09 14:42:40 +00:00
aspeed_ast10x0.c hw/arm/aspeed: Move AspeedSoCState::armv7m to Aspeed10x0SoCState 2023-10-25 09:52:44 +02:00
aspeed_ast2400.c hw: Simplify memory_region_init_ram() calls 2024-01-05 16:20:15 +01:00
aspeed_ast2600.c hw: Simplify memory_region_init_ram() calls 2024-01-05 16:20:15 +01:00
aspeed_eeprom.c hw/arm/aspeed: Add VPD data for Rainier machine 2023-06-15 18:35:57 +02:00
aspeed_eeprom.h hw/arm/aspeed: Add VPD data for Rainier machine 2023-06-15 18:35:57 +02:00
aspeed_soc_common.c hw/arm/aspeed: Check 'memory' link is set in common aspeed_soc_realize 2023-10-25 09:52:44 +02:00
aspeed.c hw/arm/aspeed: Dynamically allocate AspeedMachineState::soc field 2023-10-25 09:52:44 +02:00
b-l475e-iot01a.c hw/arm: Add minimal support for the B-L475E-IOT01A board 2024-01-09 14:42:40 +00:00
bananapi_m2u.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
bcm2835_peripherals.c hw/arm/bcm2835_property: Implement "get command line" message 2023-05-02 15:47:40 +01:00
bcm2836.c hw: Simplify accesses to the CPUState::'start-powered-off' property 2024-01-05 16:20:15 +01:00
boot.c target/arm/arm-powerctl: Correctly init CPUs when powered on to lower EL 2023-10-19 14:32:13 +01:00
collie.c *: Add missing includes of qemu/error-report.h 2023-03-22 15:06:57 +00:00
cubieboard.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
digic_boards.c hw/arm: Don't include qemu-common.h unnecessarily 2021-12-15 10:35:26 +00:00
digic.c arm/digic: replace snprintf() with g_strdup_printf() 2022-04-21 17:03:51 +04:00
exynos4_boards.c hw/arm: Avoid using 'first_cpu' when first ARM CPU is reachable 2023-10-27 12:50:12 +01:00
exynos4210.c hw/arm: Fix some typos in comments (most found by codespell) 2023-04-20 10:21:13 +01:00
fby35.c hw/arm/aspeed: Move AspeedSoCState::a7mpcore to Aspeed2600SoCState 2023-10-25 09:52:44 +02:00
fsl-imx6.c hw/arm: add cache controller for Freescale i.MX6 2024-01-09 14:42:39 +00:00
fsl-imx6ul.c Add i.MX6UL missing devices. 2023-08-31 09:45:16 +01:00
fsl-imx7.c Add i.MX7 SRC device implementation 2023-08-31 09:45:17 +01:00
fsl-imx25.c hw/arm: Simplify memory_region_init_rom() calls 2024-01-05 16:20:15 +01:00
fsl-imx31.c hw/arm: Simplify memory_region_init_rom() calls 2024-01-05 16:20:15 +01:00
gumstix.c hw/arm: Remove unreachable code calling pflash_cfi01_register() 2023-01-12 17:03:14 +00:00
highbank.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
imx25_pdk.c hw/arm/fsl-imx25: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
integratorcp.c hw: Simplify memory_region_init_ram() calls 2024-01-05 16:20:15 +01:00
Kconfig hw/arm: Connect STM32L4x5 SYSCFG to STM32L4x5 SoC 2024-01-15 17:12:22 +00:00
kzm.c hw/arm/fsl-imx31: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
mainstone.c hw/arm: Remove unreachable code calling pflash_cfi01_register() 2023-01-12 17:03:14 +00:00
mcimx6ul-evk.c hw/arm/fsl-imx6ul: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
mcimx7d-sabre.c hw/arm/fsl-imx7: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
meson.build hw/arm: Add minimal support for the B-L475E-IOT01A board 2024-01-09 14:42:40 +00:00
microbit.c target/arm: Make boards pass base address to armv7m_load_kernel() 2022-09-14 11:19:40 +01:00
mps2-tz.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
mps2.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
msf2-soc.c arm: Remove system_clock_scale global 2021-09-01 11:08:21 +01:00
msf2-som.c hw/arm: Add missing QOM parent for v7-M SoCs 2024-01-09 14:42:40 +00:00
musca.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
musicpal.c hw/arm/musicpal: Convert to qemu_add_kbd_event_handler() 2024-01-26 11:30:47 +00:00
netduino2.c hw/arm: Add missing QOM parent for v7-M SoCs 2024-01-09 14:42:40 +00:00
netduinoplus2.c hw/arm: Add missing QOM parent for v7-M SoCs 2024-01-09 14:42:40 +00:00
npcm7xx_boards.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
npcm7xx.c hw/arm: Attach PSPI module to NPCM7XX SoC 2023-02-16 16:00:48 +00:00
nrf51_soc.c hw: Simplify memory_region_init_ram() calls 2024-01-05 16:20:15 +01:00
nseries.c hw/arm: Support machine-default audiodev with fallback 2023-10-03 10:29:39 +02:00
olimex-stm32-h405.c hw/arm: Add missing QOM parent for v7-M SoCs 2024-01-09 14:42:40 +00:00
omap1.c hw/arm: Fix some typos in comments (most found by codespell) 2023-04-20 10:21:13 +01:00
omap2.c audio: propagate Error * out of audio_init 2023-10-03 10:29:40 +02:00
omap_sx1.c *: Add missing includes of qemu/error-report.h 2023-03-22 15:06:57 +00:00
orangepi.c hw/arm: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
palm.c hw/arm: Support machine-default audiodev with fallback 2023-10-03 10:29:39 +02:00
pxa2xx_gpio.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
pxa2xx_pic.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
pxa2xx.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
raspi.c hw/arm/raspi: Use arm_write_bootloader() to write boot code 2023-05-02 15:47:41 +01:00
realview.c hw/arm: Avoid using 'first_cpu' when first ARM CPU is reachable 2023-10-27 12:50:12 +01:00
sabrelite.c hw/arm/fsl-imx6: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
sbsa-ref.c hw/arm/sbsa-ref: Check CPU type in machine_run_board_init() 2024-01-05 16:20:15 +01:00
smmu-common.c hw/pci: modify pci_setup_iommu() to set PCIIOMMUOps 2023-11-03 09:20:31 +01:00
smmu-internal.h hw/arm/smmuv3: Add VMID to TLB tagging 2023-05-30 15:50:16 +01:00
smmuv3-internal.h hw/arm/smmuv3: Update ID register bit field definitions 2023-10-19 14:32:13 +01:00
smmuv3.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
spitz.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
stellaris.c hw/arm/socs: configure priority bits for existing SOCs 2024-01-09 14:42:40 +00:00
stm32f100_soc.c hw/arm/socs: configure priority bits for existing SOCs 2024-01-09 14:42:40 +00:00
stm32f205_soc.c hw/arm/socs: configure priority bits for existing SOCs 2024-01-09 14:42:40 +00:00
stm32f405_soc.c hw/arm/socs: configure priority bits for existing SOCs 2024-01-09 14:42:40 +00:00
stm32l4x5_soc.c hw/arm: Connect STM32L4x5 SYSCFG to STM32L4x5 SoC 2024-01-15 17:12:22 +00:00
stm32vldiscovery.c hw/arm: Add missing QOM parent for v7-M SoCs 2024-01-09 14:42:40 +00:00
strongarm.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
strongarm.h hw/arm/collie: Create the RAM in the board 2019-10-22 17:44:01 +01:00
tosa.c hw/arm/pxa2xx: Simplify pxa255_init() 2023-01-12 17:03:14 +00:00
trace-events hw/arm/smmuv3: Add stage-2 support in iova notifier 2023-05-30 15:50:16 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
versatilepb.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00
vexpress.c hw/arm/vexpress: Use qdev_prop_set_array() 2023-11-10 18:19:13 +01:00
virt-acpi-build.c hw/arm/virt-acpi-build.c: Migrate virtio creation to common location 2024-01-10 18:47:46 +10:00
virt.c hw/arm/virt.c: Remove newline from error_report() string 2024-01-26 11:30:47 +00:00
xen_arm.c Xen: Fix xen_set_irq() and xendevicemodel_set_irq_level() 2023-11-07 13:03:19 -08:00
xilinx_zynq.c hw/arm: Avoid using 'first_cpu' when first ARM CPU is reachable 2023-10-27 12:50:12 +01:00
xlnx-versal-virt.c hw/arm/xlnx-versal: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
xlnx-versal.c hw/arm/xlnx-versal: Use qdev_prop_set_array() 2023-11-10 18:19:13 +01:00
xlnx-zcu102.c hw/arm/xlnx-zynqmp: Remove 'hw/arm/boot.h' from header 2023-10-27 12:42:13 +01:00
xlnx-zynqmp.c hw/arm/xlnx-zynqmp: fix unsigned error when checking the RPUs number 2023-05-30 15:50:16 +01:00
z2.c hw/arm: Constify VMState 2023-12-29 11:17:30 +11:00