Hello, These patches are part of the GSoC unselected 'QEMU visualizer' project. As the AVR port is not merged, I switched to microbit to keep working on it.
This series presents a proof of concept of LED device that can be easily connected to a GPIO. The LED emit QMP events, so an external visualizer can display the LED events. Since v1: addressed Eric Blake review comments - Added QMP rate limit This is stable enough to be used for the GSoC UI. Next steps planned: - integrate Zephyr test - have a centralized container for all the machine's LEDs, to track state changes in a single place and send less QMP events (grouping changes, restricted to what actually changed). [see to include keyboard LEDs]. - look at LED array/matrix such 7segments. Regards, Phil. $ git backport-diff -u rfc-v1 Key: [----] : patches are identical [####] : number of functional differences between upstream/downstream patch [down] : patch is downstream-only The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively 001/5:[0004] [FC] 'hw/misc: Add a LED device' 002/5:[0027] [FC] 'hw/misc/led: Add LED_STATUS_CHANGED QAPI event' 003/5:[----] [--] 'hw/misc/led: Add create_led_by_gpio_id() helper' 004/5:[----] [--] 'hw/arm/microbit: Add a fake LED to use as proof-of-concept with Zephyr' 005/5:[----] [--] 'hw/arm/tosa: Use LED device for the Bluetooth led' Philippe Mathieu-Daudé (5): hw/misc: Add a LED device hw/misc/led: Add LED_STATUS_CHANGED QAPI event hw/misc/led: Add create_led_by_gpio_id() helper hw/arm/microbit: Add a fake LED to use as proof-of-concept with Zephyr hw/arm/tosa: Use LED device for the Bluetooth led qapi/led.json | 47 ++++++++++++++++ qapi/qapi-schema.json | 1 + include/hw/misc/led.h | 45 +++++++++++++++ hw/arm/microbit.c | 3 + hw/arm/tosa.c | 7 +-- hw/misc/led.c | 126 ++++++++++++++++++++++++++++++++++++++++++ MAINTAINERS | 7 +++ hw/arm/Kconfig | 2 + hw/misc/Kconfig | 3 + hw/misc/Makefile.objs | 1 + hw/misc/trace-events | 3 + qapi/Makefile.objs | 2 +- 12 files changed, 242 insertions(+), 5 deletions(-) create mode 100644 qapi/led.json create mode 100644 include/hw/misc/led.h create mode 100644 hw/misc/led.c -- 2.21.3