On 10/19/2017 05:12 PM, Cédric Le Goater wrote: > Hello, > > This series adds a new Aspeed machine to emulate the BMC of a > Witherspoon system. It also extends the other Aspeed machines with I2C > devices and adds a simple model for the pca9552 LED blinker present on > the witherspoon board. > > Thanks, > > C. > > Changes since v4: > > - use a ROM memory region > > Changes since v3: > > - introduce a dummy ROM device to catch invalid writes > - removed 'ignore_memory_transaction_failures' on all Aspeed machines
So that was a bad idea because old firwmares run load/store loops beyond the address space to guess how much RAM the SoC has. I am wondering if it is possible to model the same behavior with a MMIO region (of a correct size depending on the max ram size of the SoC) and mapped beyond the RAM region to catch such accesses and keep 'ignore_memory_transaction_failures' to false. Thanks, C. > - reworked PCA9552 device : > . simpler I2C handles > . auto-increment support > . unit test > > Changes since v2: > > - removed comments on the I2C buffer size pf the PCA9552 device. > - removed 'ignore_memory_transaction_failures' flag on the > witherspoon machine. > > Changes since v1: > > - introduced smbus_eeprom_init_one() > > Cédric Le Goater (8): > aspeed: use a ROM memory region to catch invalid writes > aspeed: remove ignore_memory_transaction_failures all boards > aspeed: add support for the witherspoon-bmc board > aspeed: add an I2C RTC device to all machines > smbus: add a smbus_eeprom_init_one() routine > aspeed: Add EEPROM I2C devices > misc: add pca9552 LED blinker model > aspeed: add the pc9552 chips to the witherspoon machine > > default-configs/arm-softmmu.mak | 1 + > hw/arm/aspeed.c | 110 ++++++++++++++++- > hw/i2c/smbus_eeprom.c | 16 ++- > hw/misc/Makefile.objs | 1 + > hw/misc/pca9552.c | 259 > ++++++++++++++++++++++++++++++++++++++++ > include/hw/i2c/smbus.h | 1 + > include/hw/misc/pca9552.h | 33 +++++ > tests/Makefile.include | 2 + > tests/pca9552-test.c | 131 ++++++++++++++++++++ > 9 files changed, 544 insertions(+), 10 deletions(-) > create mode 100644 hw/misc/pca9552.c > create mode 100644 include/hw/misc/pca9552.h > create mode 100644 tests/pca9552-test.c >