qemu-system-ppc give error Trying to write invalid spr 532 (0x214) at c0001c94

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

qemu-system-ppc give error Trying to write invalid spr 532 (0x214) at c0001c94

Jump to solution
4,207 Views
abhinavbipnesh
Contributor I

Hi All,

I was trying to run qemu for QorIQ-SDK-V1.6-20140619 for t1024 processors and get error as below

(qemu) Trying to write invalid spr 532 (0x214) at c0001c94

The command which I run for running qemu is given below

~//QorIQ-SDK-V1.6-20140619-yocto/build_t1040rdb_release/tmp/sysroots/x86_64-linux/usr/bin/qemu-system-ppc -nographic -M ppce500 -kernel /home/abhinav/QorIQ-SDK-V1.6-20140619-yocto/build_t1040rdb_release/tmp/deploy/images/t1040rdb/uImage -initrd /home/abhinav/QorIQ-SDK-V1.6-20140619-yocto/build_t1040rdb_release/tmp/deploy/images/t1040rdb/fsl-image-minimal-t1040rdb-20141222103228.rootfs.ext2.gz -append "root=dev/vda1 rw console=ttyS0,115200" -serial tcp::4444,server,nowait -smp 2

QEMU 1.7.0 monitor - type 'help' for more information

(qemu) Trying to write invalid spr 532 (0x214) at c0001c94

qemu: terminating on signal 2

Also when I tried with -enable-kvm I get below errors

~//QorIQ-SDK-V1.6-20140619-yocto/build_t1040rdb_release/tmp/sysroots/x86_64-linux/usr/bin/qemu-system-ppc -enable-kvm -nographic -M ppce500 -kernel /home/abhinav/QorIQ-SDK-V1.6-20140619-yocto/build_t1040rdb_release/tmp/deploy/images/t1040rdb/uImage -initrd /home/abhinav/QorIQ-SDK-V1.6-20140619-yocto/build_t1040rdb_release/tmp/deploy/images/t1040rdb/fsl-image-minimal-t1040rdb-20141222103228.rootfs.ext2.gz -append "root=dev/ram rw console=ttyS0,115200" -serial tcp::4444,server,nowait -smp 2

KVM not supported for this target

"kvm" accelerator does not exist.

No accelerator found!

While building images using bitbake it gives below output

Build Configuration:

BB_VERSION        = "1.22.0"

BUILD_SYS         = "x86_64-linux"

NATIVELSBSTRING   = "CentOS-7.0.1406"

TARGET_SYS        = "powerpc-fsl-linux"

MACHINE           = "t1040rdb"

DISTRO            = "fsl-networking"

DISTRO_VERSION    = "1.6"

TUNE_FEATURES     = "m32 fpu-hard e5500"

TARGET_FPU        = "hard"

meta

meta-yocto

meta-yocto-bsp    = "(detachedfromfsl-sdk-v1.6):0d2ce44c2b0f8cc9699e30cca2c24655be89d58b"

meta-fsl-ppc      = "(detachedfromfsl-sdk-v1.6):6cf59d9de63a9fc5f8942c0d10c622898f4315ce"

meta-fsl-ppc-toolchain = "(detachedfromfsl-sdk-v1.6):a546e42f86e7d57de19e27907365d170b13fc18f"

meta-fsl-networking

meta-fsl-networking = "(detachedfrom8dec9c6):8dec9c690188cce5305ef5055f91e5cfa35c63f4"

meta-virtualization

meta-virtualization = "(detachedfromfsl-sdk-v1.6):8044073f63a0d99541a43ac5f2f6d789f94c7c7c"

meta-oe

meta-networking

meta-webserver

meta-ruby

meta-filesystems  = "(detachedfromfsl-sdk-v1.6):b86007f742a1b829ccc8d76e485bb3f789cefaa4"

meta-java         = "(detachedfromfsl-sdk-v1.6):d01f7d39e513790ddce20e6724723722119a3700"

meta-openstack

meta-openstack-compute-deploy

meta-openstack-controller-deploy

meta-openstack-qemu = "(detachedfromfsl-sdk-v1.6):f627404399a134672e0b5e26a0d9b794a6f8adf4"

So any thoughts to fix this issue.

Thanks,

Abhinav

Tags (2)
0 Kudos
1 Solution
2,715 Views
scottwood
NXP Employee
NXP Employee

SPR 532 is IVOR36 (Processor Doorbell).  When not using KVM, the default CPU for ppce500 is e500v2, which does not implement doorbells.  You need to make sure the QEMU machine model matches what the OS you're trying to run expects.  You can use the -cpu option to specify the CPU type -- for t1024 (or t1040), this should be e5500 and you should be using qemu-system-ppc64.

As for KVM, that is virtualization, not emulation.  You need to be running on a PPC of the same type as you want the guest to see.  From the path to the binary I can see that you're running this on an x86 host.

View solution in original post

0 Kudos
3 Replies
2,716 Views
scottwood
NXP Employee
NXP Employee

SPR 532 is IVOR36 (Processor Doorbell).  When not using KVM, the default CPU for ppce500 is e500v2, which does not implement doorbells.  You need to make sure the QEMU machine model matches what the OS you're trying to run expects.  You can use the -cpu option to specify the CPU type -- for t1024 (or t1040), this should be e5500 and you should be using qemu-system-ppc64.

As for KVM, that is virtualization, not emulation.  You need to be running on a PPC of the same type as you want the guest to see.  From the path to the binary I can see that you're running this on an x86 host.

0 Kudos
2,715 Views
abhinavbipnesh
Contributor I

Hi,

Just an query as above answer helped and I was able to run the QEMU.  But whenever I tried passing -enable-kvm (as refered in the documentations also http://www.freescale.com/infocenter/index.jsp?topic=%2FQORIQSDK%2F2888263.html ) I always get error as below

KVM not supported for this target

"kvm" accelerator does not exist.

No accelerator found!

So when this option can be used and if not then where I can find proper arguments need to be used as part of the stuff.

Thanks,

Abhinav

0 Kudos
2,715 Views
scottwood
NXP Employee
NXP Employee

Again, KVM is for virtualization, not emulation.  If you want to use KVM with an e5500 VM, you need to be running on an e5500 host.  If you are wanting to emulate a PPC on an x86 host, you cannot use KVM.  What host are you running on, and what type of guest are you trying to create?

0 Kudos