On 17/10/2018 18:52, Peng Hao wrote: > + /* register rtc 0x70 port as coalesced_pio */ > + memory_region_set_flush_coalesced(&s->io); > + memory_region_init_io(&s->coalesced_io, OBJECT(s), &cmos_ops, > + s, "rtc1", 1); > + isa_register_ioport(isadev, &s->coalesced_io, base); I think instead of isa_register_ioport you can use memory_region_add_subregion, so that s->coalesced_io is added below s->io? This way, you don't rely on the behavior of overlapping regions. Paolo > + memory_region_add_coalescing(&s->coalesced_io, 0, 1); > +