On 30/03/15 10:51, Paolo Bonzini wrote:

> On 28/03/2015 20:19, Mark Cave-Ayland wrote:
>> On 28/03/15 19:04, BALATON Zoltan wrote:
>>
>>> Hello,
>>>
>>> Commit c3c1bb99d1c11978d9ce94d1bdcf0705378c1459 (exec: Respect
>>> as_tranlsate_internal length clamp) seems to break vga output with
>>> qemu-system-ppc on x86_64 host. Since this commit, the output window
>>> does not get to the OpenBIOS console but stays black. (Easy to reproduce
>>> by just starting qemu-system-ppc.)
>>>
>>> The reason may be that this change has exposed another bug somewhere
>>> else but this is all quite obscure to me. Does anyone have any idea what
>>> could be wrong or where to look further. Any help is appreciated.
>>
>> Hi Zoltan,
>>
>> Yes indeed, this has been picked up in the last few days and is on the
>> list of issues to be dealt with for -rc2. So watch this space...
> 
> This is an OpenBIOS bug; the port at 0x1ce is 1 byte wide, but OpenBIOS
> is accessing it as 2 bytes.
> 
> Of course, there's a QEMU regression too and I'm thinking of how to fix it.

Hmmm that's interesting because the documentation refers to both
registers being 16-bit: http://wiki.osdev.org/Bochs_VBE_Extensions. And
indeed the pseudo-code uses outpw/inpw for accesses, even though the
index and data registers are only 1 byte apart (0x1ce and 0x1cf) in I/O
space.

Maybe OpenBIOS is getting the endian conversion incorrect for the word
access? (i.e. it's not converting to little endian).


ATB,

Mark.


Reply via email to