On 6/12/22 15:38, Gerd Hoffmann wrote:
   Hi,

So on x86 we can have 16-bit I/O accesses unaligned to 8-bit boundary?

Yes.

So I _think_ today we should be good with removing the x86 line:

-# ifdef TARGET_I386
-    { 1, 1, 2, .read = vbe_ioport_read_data, .write = vbe_ioport_write_data },
-# endif

Nope.  Breaks vgabios.  Testcase:

qemu-system-x86_64 -kernel /boot/vmlinuz-$(uname -r) -append vga=ask

Adding

 -trace memory_region_ops_\*

I get:

memory_region_ops_write cpu 0 mr 0x13eefbf60 addr 0x1ce value 0x0 size 2 name 'vbe' memory_region_ops_write cpu 0 mr 0x13eefbf60 addr 0x1cf value 0xb0c0 size 2 name 'vbe' memory_region_ops_write cpu 0 mr 0x13eefbf60 addr 0x1ce value 0x0 size 2 name 'vbe' memory_region_ops_read cpu 0 mr 0x13eefbf60 addr 0x1cf value 0xffff size 2 name 'vbe'

All graphics modes are gone.

Yeah I'll investigate, thanks for the easy test case.


Reply via email to