cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Anonymous
Not applicable
7,933 Views

Running a Linux Kernel In QEMU

When I start QEMU with a Linux kernel that compiled by myself ,It stopped at the Calibrating delay loop ...

 

root@ubuntu:/opt/zynq_linux# ./arm-softmmu/qemu-system-arm -M xilinx-zynq-a9 -m 1024 -serial null -serial mon:stdio -kern-dtb /opt/zynq_linux/xilinx_zynq.dtb -kernel /opt/zynq_linux/zImage -initrd /opt/zynq_linux/filesystem/ramdisk.img -nographic
ram size=40000000
error reading QSPI block device
error no mtd drive for nand flash
a0mpcore_priv: smp_priv_base f8f00000
error no sd drive for sdhci controller (0)
error no sd drive for sdhci controller (1)
Number of configured NICs 0x1
ram_size 40000000, board_id d32, loader_start 0
Uncompressing Linux... done, booting the kernel.
Booting Linux on physical CPU 0
Linux version 3.3.0-14.2-build1-01464-ged63a4d (root@Embedded) (gcc version 4.6.1 (Sourcery CodeBench Lite 2011.09-50) ) #1 SMP PREEMPT Fri Jul 20 13:40:04 CST 2012
CPU: ARMv7 Processor [410fc090] revision 0 (ARMv7), cr=10c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: Xilinx Zynq Platform, model: Xilinx Zynq EP107
bootconsole [earlycon0] enabled
Memory policy: ECC disabled, Data cache writealloc
PERCPU: Embedded 7 pages/cpu @c06bd000 s5696 r8192 d14784 u32768
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 60864
Kernel command line: console=ttyPS0,115200 root=/dev/ram rw initrd=0x800000,8M earlyprintk ip=:::::eth0:dhcp
PID hash table entries: 1024 (order: 0, 4096 bytes)
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 240MB = 240MB total
Memory: 230408k/230408k available, 31736k reserved, 0K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    vmalloc : 0xd0800000 - 0xff000000   ( 744 MB)
    lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .text : 0xc0008000 - 0xc0409c4c   (4104 kB)
      .init : 0xc040a000 - 0xc042e640   ( 146 kB)
      .data : 0xc0430000 - 0xc045dba0   ( 183 kB)
       .bss : 0xc045dbc4 - 0xc0477e1c   ( 105 kB)
Preemptible hierarchical RCU implementation.
 Verbose stalled-CPUs detection is disabled.
NR_IRQS:128
Xilinx, no compatible timer found, using default
xlnx,ps7-ttc-1.00.a #0 at 0xd0800000, irq=43
Error, no clock-frequency specified for timer
Error, no clock-frequency specified for timer
Console: colour dummy device 80x30
Calibrating delay loop...  

 

Excuse me, what reason is this?Thank you.

0 Kudos
4 Replies
tmarti22
Newbie
Newbie
7,918 Views
Registered: ‎08-09-2012

--Bump--

 

I have the same problem.  Still present in the latest Git update of Tue, 31 Jul 2012 00:13:11 +0000.

 

Anyone out there actually using the QEMU version?

 

Other than changing the kernel out, I'm using the stock dts/dtb and root file system that comes with the QEMU tarball available here:

http://wiki.xilinx.com/zynq-qemu#toc1

 

Kernel compilation is done via the instructions here: http://wiki.xilinx.com/zynq-linux

git

make ARCH=arm xilinx_zynq_defconfig

make ARCH=arm zImage

copy the arch/boot/zImage file to the QEMU kernel folder.

 

This same process produces a kernel that works fine on a 702 board.

0 Kudos
tmarti22
Newbie
Newbie
7,917 Views
Registered: ‎08-09-2012

Note the difference between the 702 board output and the QEMU output:

 

QEMU output:

...

NR_IRQS:128
Xilinx, no compatible timer found, using default
xlnx,ps7-ttc-1.00.a #0 at 0xd0800000, irq=43
Error, no clock-frequency specified for timer
Error, no clock-frequency specified for timer
Console: colour dummy device 80x30
Calibrating delay loop...

 

702 board output:

...

NR_IRQS:128
xlnx,ps7-ttc-1.00.a #0 at 0xf0000000, irq=43
Console: colour dummy device 80x30

 

 

 

 

0 Kudos
archie888
Visitor
Visitor
7,909 Views
Registered: ‎08-08-2012

You need to change xilinx-zynq.dts and recompile it.  zynq-ep107.dts works, though you need to enable another serial.

 

Archie

0 Kudos
anupkini
Participant
Participant
7,714 Views
Registered: ‎05-16-2012

Hi,

 

Did you guys find any solution to the problem ?

 

even my qemu stops at calibrating delay loops...

I am workin on Ubuntu 12.0.4 32-bit OS.

 

 

0 Kudos