Am Sat, 19 Oct 2019 13:10:27 +0200 schrieb Thomas Huth <h...@tuxfamily.org>:
> Am Sat, 19 Oct 2019 12:48:59 +0200 > schrieb Thomas Huth <h...@tuxfamily.org>: > > > Am Thu, 17 Oct 2019 14:29:04 +0100 > > schrieb Peter Maydell <peter.mayd...@linaro.org>: > > > > > Switch the mcf5206 code away from bottom-half based ptimers to > > > the new transaction-based ptimer API. This just requires adding > > > begin/commit calls around the various places that modify the > > > ptimer state, and using the new ptimer_init() function to create > > > the timer. > > > > > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > > > --- > > > hw/m68k/mcf5206.c | 9 +++++---- > > > 1 file changed, 5 insertions(+), 4 deletions(-) > > > > After applying the patch, I now get an assertion: > > > > $ qemu-system-m68k -nographic -kernel > > ~/tmp/images/image-an5206-big-20000706.bin -M an5206 > > > > uClinux/COLDFIRE(m5206) > > COLDFIRE port done by Greg Ungerer, g...@moreton.com.au > > Flat model support (C) 1998,1999 Kenneth Albanowski, D. Jeff Dionne > > KERNEL -> TEXT=0x010000-0x077cb8 DATA=0x077cb8-0x08b0d0 > > BSS=0x08b0d0-0x0a2d58 KERNEL -> ROMFS=0x0a2d58-0x183b10 > > MEM=0x183b10-0x1fff000 STACK=0x1fff000-0x2000000 qemu-system-m68k: > > hw/core/ptimer.c:410: ptimer_transaction_begin: Assertion > > `!s->in_transaction || !s->callback' failed. > > > > Looks like something is still wrong here... Looking at the code a little bit, I think you missed the early return in m5206_timer_recalibrate() : if ((s->tmr & TMR_RST) == 0) return; That needs a ptimer_transaction_commit() now, too. Thomas