From: Alastair D'Silva <alast...@d-silva.org> This patch series adds support for the Epson RX8900 RTC to the Aspeed board.
The tests use the existing imx25 infrastructure, and some minor changes have been made to uniquely identify the I2C buses. Support for named interrupts has been implemented in qtest to facilitate testing. Changelog: v5: - Use time functions for time manipulation (note: check-patch incorrectly reports an error on timercmp()) - Refactor weekday validation - Defer time offset calculation until the I2C transaction is complete as partial updates can result in incorrect offsets - Cosmetic changes as requested by Adrew Jeffery v4: - Split overloaded patches - Fix spelling of Celsius - Remove degrees sign from messages - Don't force float precision - Reformat named interrupt qtest protocol for consistency - Minor formatting changes - Don't connect the RX8900 INT line to NVIC:22, it should be connected to GPIOJ10 on the ASPEED SOC v3: - Add range checks for time components - Shorten trace messages - Use qemu generated i2c bus names - Address style comments from Alexey for rx8900 driver - Fix long lines in qtest harness - Remove trailing whitespace in hw/arm/pxa - Remove stray headers from rx8900 driver - Support low voltage detection in rx8900 driver v2: - Avoid using error_report - Fix TIE behaviour - Move temperature init out of reset, it should not change on a soft reset - Fix IRQ in test failures - Add a NULL check for i2c slave init callbacks, so that we no longer need to implement empty init functions. - Refactor to use the existing qemu trace infrastructure - Move the RX8900 definition into the aspeed machine init - It it possible for check_update_interrupt_seconds in the rx8900 test to return 6, depending on the alignment with the wall clock. - Support low voltage detection Alastair D'Silva (7): arm: Uniquely name imx25 I2C buses. qtest: Support named interrupts qtest: Support setting named GPIOs qtest: Fix whitespace hw/timer: Add Epson RX8900 RTC support tests: Test all implemented RX8900 functionality arm: Add an RX8900 RTC to the ASpeed board default-configs/arm-softmmu.mak | 1 + hw/arm/aspeed.c | 29 ++ hw/arm/imx25_pdk.c | 2 +- hw/core/irq.c | 18 +- hw/i2c/imx_i2c.c | 2 +- hw/timer/Makefile.objs | 2 + hw/timer/rx8900.c | 914 ++++++++++++++++++++++++++++++++++++++++ hw/timer/rx8900_regs.h | 141 +++++++ hw/timer/trace-events | 31 ++ include/hw/irq.h | 13 +- qtest.c | 103 +++-- tests/Makefile.include | 2 + tests/libqtest.c | 85 +++- tests/libqtest.h | 59 +++ tests/rx8900-test.c | 880 ++++++++++++++++++++++++++++++++++++++ 15 files changed, 2241 insertions(+), 41 deletions(-) create mode 100644 hw/timer/rx8900.c create mode 100644 hw/timer/rx8900_regs.h create mode 100644 tests/rx8900-test.c -- 2.9.3