Re: [Qemu-devel] Linux kernel configurations for various Microblaze systems

From: Guenter Roeck
Date: Thu Jun 28 2018 - 00:41:14 EST


On 06/27/2018 09:12 PM, Edgar E. Iglesias wrote:
On Wed, Jun 27, 2018 at 05:34:15PM -0700, Guenter Roeck wrote:
Hi Edgar,

On 06/27/2018 03:47 PM, Edgar E. Iglesias wrote:


Hi Guenter,

Re: ml605
The thing to watch out for with kernel configs for microblaze systems is the
physmem address setting. Unfortunately the kernel does not auto-detect this.

I'm attaching a kernelconfig for the ml605 that works for me and a qemu commandline.

qemu-system-microblazeel -M petalogix-ml605 -m 256 -serial mon:stdio -dtb petalogix-ml605.dtb -kernel arch/microblaze/boot/linux.bin -append rdinit=/bin/sh


Can you also send me the dtb file or even better its source ? I don't think
the one in qemu is correct. It lists the serial port at 0x83e00000, but qemu
instantiates it at 0x83e01000.

I used the one from QEMU. IIRC, there's some offsetting going on there
that differs between the Xilinx version and the PC version of these
UARTs...

Yes, I noticed after I sent the previous e-mail.


Can you try again and see how it goes?
If it doesn't work, I can share my kernel Image and we can compare from there.


I tried lots of things, nothing worked. Until I got your e-mail, tried again,
and suddenly it works just great. Go figure. Turns out I had used a big endian
toolchain to build a little endian target. Shameface.

I do get this odd gcc warning:

cc1: warning: -mxl-multiply-high can be used only with -mcpu=v6.00.a or greater

Actual parameters are "-mcpu=v10.0 -mxl-multiply-high", so that doesn't really make
sense to me. I tried various toolchains, all with the same result. Any idea what
that is about ?

Thanks,
Guenter