[OE-core] [oe-core] QEMU with ARM Cortex A9 with hard float configuration - Kernel panic

Elvis Dowson elvis.dowson at gmail.com
Mon Aug 26 03:58:57 UTC 2013


Hi Bruce,

On Aug 26, 2013, at 5:03 AM, Bruce Ashfield <bruce.ashfield at windriver.com> wrote:

> On 13-08-25 3:09 PM, Elvis Dowson wrote:
>> I noticed that you've committed the changes for qemuarma9 KMACHINE configuration to the linux-yocto kernel.
>> 
>> http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.8/tree/meta/cfg/kernel-cache/bsp?h=meta
>> 
>> I adapted the qemuarm.conf configuration and booted it up, but nothing shows up in the QEMU window, I just get a black screen.
>> 
>> Has qemu with the qemuarma9 configuration been successfully built and tested before?
> 
> It has been, but not with a machine definition that is part of oe-core
> or Yocto.
> 
> It was contributed as the output from some cortexA9 testing, and I've
> been carrying the kernel parts ever since.

Can you share the qemucortexa9.conf machine definition please?

> 
>> 
>> This is how my qemuarm.conf looks like, locally at the moment:
>> 
>> #@TYPE: Machine
>> #@NAME: qemuarmhf
>> #@DESCRIPTION: Machine configuration for QEMU ARM Cortex A9 hard float.
>> 
>> # Specify the default tune.
>> DEFAULTTUNE = "armv7a-neon"
>> 
>> require conf/machine/include/qemu.inc
>> require conf/machine/include/tune-cortexa9.inc
>> 
>> # Specify the machine name used by the kernel.
>> KMACHINE_qemuarm = "qemuarma9"
> 
> This is a default, so you don't need to set it.


The default for qemuarm, as documented in 

http://www.yoctoproject.org/docs/1.5/ref-manual/ref-manual.html#var-KFEATURE_DESCRIPTION

is arm_versatile926ejs.

So I had to modify it to force it to use qemuarma9.

> 
>> 
>> # Specify the kernel image type.
>> KERNEL_IMAGETYPE = "zImage"
> 
> I recall booting it with a uImage, but maybe my memory is failing.
> 
>> 
>> # Specify the serial console parameters.
>> SERIAL_CONSOLE = "115200 ttyAMA0"
> 
> All of the above looks reasonably sane, but it's more about how you
> launch qemu than the kernel build that is probably resulting in your
> issues. What machine subtype did you use ?

I used -M versatilepb. I also passed the -cpu cortex-a9 parameter to qemu.

I just got a blank screen. 

FYI, I was able to get the qemuzynq machine working with the meta-xilinx
layer, and in that, there was also a blank screen, but the QEMU output
and login prompt came on the console from where the rumqemu qemuzynq
command was run. A different type of behaviour from that of qemuarm running
arm_versatile926ejs.

The qemuzynq machine uses the linux-xlnx kernel.

I'd like to get a generic qemuarma9 machine configuration working with 
linux-yocto, if possible, and add it to the standard list of qemu targets.

Best regards,

Elvis Dowson


More information about the Openembedded-core mailing list