[OpenBIOS] Faulty Qemu SPARC64 IDE emulation?

Mark Cave-Ayland mark.cave-ayland at siriusit.co.uk
Sun Dec 13 21:39:22 CET 2009


Igor Kovalenko wrote:

>> Generally, OF is placed in high memory, and memory allocations are from low
>> memory.
> 
> That is how memory layout looks like now, if we look at 32bits of physical
> address space. The only difference seems to be with low 16m being used
> for both pci memory, i/o space and actual memory. It's getting mapped 1:1
> into virtual address space used by openbios code.

Ah this is now starting to make sense. I assumed from reading the 
OpenBIOS code that PCI devices were just mapped directly to virtual 
addresses, but I can see that this may not necessary be the case. Does 
that mean OpenBIOS is missing some kind of PCI controller emulation in 
order to access PCI memory space?

Though I can also see that this wouldn't just affect the Qemu/SPARC 
combination so I'm quite surprised that this hasn't been noticed before 
on other guest/host combinations.

>> But there are several address spaces, which it sounds like are being
>> overlapped here:
> 
> Right, that's the issue we have at the moment; both qemu and openbios
> are to be changed.
> 
>> 1) Actual memory
>> 2) PCI memory space
>> 3) PCI IO space
>>
>> They are each independent address spaces. Zero in any one of them is
>> independent from zero in all the others.

I've never looked at PCI devices in much detail before, however if there 
is any C coding I can do to help out, please let me know.


ATB,

Mark.

-- 
Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
http://www.siriusit.co.uk
t: +44 870 608 0063

Sirius Labs: http://www.siriusit.co.uk/labs



More information about the OpenBIOS mailing list