qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-ppc] [PATCH 1/7] pci: add MPC105 PCI host bridge emulation


From: Alexander Graf
Subject: Re: [Qemu-ppc] [PATCH 1/7] pci: add MPC105 PCI host bridge emulation
Date: Tue, 7 May 2013 00:16:40 +0200

On 06.05.2013, at 22:57, Hervé Poussineau wrote:

> Alexander Graf a écrit :
>> On 05/03/2013 07:57 AM, Hervé Poussineau wrote:
>>> Alexander Graf a écrit :
>>>> 
>>>> Am 02.05.2013 um 22:08 schrieb Hervé Poussineau <address@hidden>:
>>>> 
>>>>> Non-contiguous I/O is not implemented.
>>>>> 
>>>>> There is also somewhere a bug in the memory controller, which means
>>>>> that some real firmwares may not detect the correct amount of memory.
>>>>> This can be bypassed by adding '-m 1G' on the command line.
>>>>> 
>>>>> Add x-auto-conf property, to automatically configure the memory
>>>>> controller at startup. This will be required by OpenBIOS, which
>>>>> doesn't know how to do it.
>>>> 
>>>> Why not teach it? I'd prefer to see that logic in firmware.
>>> 
>>> Me too, but I'm not confident enough in my capabilities to do it.
>> Huh? Why not? Most of the device initialization code in OpenBIOS happens in 
>> C, so you don't even have to touch Forth code :).
>>> Autoconfiguration is only in one place of the code, so I think it can be 
>>> removed easily once OpenBIOS has this logic.
>> I'd prefer if we could come up with a clean model from the start. It really 
>> shouldn't be hard at all.
> 
> I thought that for all other usages of OpenBIOS in QEMU, RAM was supposed to 
> be available as soon as machine was powered on.
> 
> However, I checked OpenBIOS code:
> One of the first things done in arch/ppc/qemu/start.S is to copy the 
> exception vectors. So, I should add code before it to detect memory 
> controller, detect ram size and configure memory controller?

You could just try to poke fw_cfg and ask it for the machine model. Based on 
that you can do all the initialization hardcoded.

> It seems quite a bit of code.
> Do you have an example of how to do it for another memory controller, so I 
> can adapt the code?

Unfortunately not, no.


Alex




reply via email to

[Prev in Thread] Current Thread [Next in Thread]