[U-Boot] [ppc] qemu-ppce500 howto

Alexander Graf
2014-05-25T11:16:01Z

On 25.05.2014, at 13:10, Alon Bar-Lev <alon.barlev@gmail.com> wrote:

> On Sun, May 25, 2014 at 1:08 PM, Alexander Graf <agraf@suse.de> wrote:
>>
>>
>> On 24.05.14 09:23, Alon Bar-Lev wrote:
>>>
>>> On Thu, May 22, 2014 at 12:04 PM, Alexander Graf <agraf@suse.de> wrote:
>>>>
>>>>
>>>> On 22.05.14 09:52, Alon Bar-Lev wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> Trying to run the qemu-ppce500 within qemu. I am using -bios u-boot.bin and no luck, I get live signal.
>>>>>
>>>>> I am using latest u-boot master and qemu master.
>>>>>
>>>>> Command:
>>>>> $ ./qemu-system-ppc -M ppce500 -nographic -bios u-boot.bin
>>>>>
>>>>> Tried to load u-boot as well, same.
>>>>
>>>>
>>>> Yes, that command should work with the right patches :). Unfortunately they are not in master yet, but instead waiting in my queue:
>>>>
>>>> https://github.com/agraf/qemu
>>>>
>>>> Please give things a try with the ppc-next branch in there. That should get things working for you.
>>>>
>>> WORKING! thanks!
>>>
>>> Is there any support for flush and/or mtd for this target (-drive
>>> if=pflash, -mtdblock)?
>>
>>
>> I haven't implemented pflash yet, sorry. Do you need the flash device for configuration storage or as backing storage for your kernel?
>>
>
> Well, I wish both... :)
>
> boot qemu as if it were a target....
>
> 1. put u-boot on pflash, and boot from it.
> 2. have backing storage for kernel (can be mtd).
> 3. have data partition (can be mtd).
>
> we can skip (1) as -bios is good enough... but for (2), (3) I do not

For (2) you can use the -kernel option. It should make the payload's physical address available through an environment variable. If it's a uImage, it will get loaded automatically.
For (3) you can use all the emulated block storage options QEMU provides, such as virtio-pci or ahci.

> see solution but have either mtd or other block device support... is
> that possible?

It's definitely possible, yes :). I simply didn't implement any mtd device emulation so far in the QEMU machine model. But patches are definitely welcome!

Alex