Just Black Screen After Running Qemu

Just black screen after running Qemu

No your Load and Entry points ARE NOT CORRECT. typically below is load and entry address

Image Name:   Linux-3.9.0
Created: Thu Dec 26 09:50:57 2013
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1908056 Bytes = 1863.34 kB = 1.82 MB
Load Address: 00008000
Entry Point: 00008000

Moreover if you try with your command, kernel will be panic in the absence of rootfs. initrd parameters are missing. Also you might be missing some configuration while building kernel.

Try these steps:

1)make ARCH=arm distclean

2)make ARCH=arm versatile_defconfig

3)make ARCH=arm menuconfig

here you need to enable below feature.

Kernel Features --->
[*] Use the ARM EABI to compile the kernel. (enable this).

4)make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- uImage

5)qemu-system-arm -M versatilepb -m 128M -kernel arch/arm/boot/uImage -append "console=tty1"

Here you will get console saying that kernel panic.
to avoid this pass your rootfs parameter.

I guess you built rootfs from busybox if so try below command to boot system completely

6)qemu-system-arm -M versatilepb -m 128M -kernel arch/arm/boot/uImage -initrd rootfs.img -append "root=/dev/ram mem=128M rdinit=/sbin/init" -serial stdio.

QEMU Showing Black Screen Only

"QEMU does nothing with a black screen" almost always means "QEMU is running fine, but the guest code crashed or stopped early in the boot process without sending any output". Almost certainly either your kernel is misconfigured, or your QEMU command line is wrong. You don't give enough information to say which. You need to tell us at least:

  • what the kernel is you're running and what machine you've configured it for
  • what the QEMU command line you're using is

Given your updated question with a command line, some suggestions:

  • tell your guest to use the serial port (use the QEMU option -append 'console=ttyAMA0' to set the guest kernel command line)
  • either check the serial output view in the GUI, or send it to stdout with -nographic or -serial stdio
  • enable any earlyprintk or earlycon options in the guest config that you can and on the guest command line, so if the guest fails early you have more chance to catch it
  • pass the device tree for the kernel with -dtb integratorcp.dtb (use the one from your kernel tree; you'll probably have to tell the kernel makefiles to build it for you)

PS: integratorcp is an absolutely ancient development board -- why do you want to use it?

QEMU blank screen issue

To emulate RPI on qemu is not a straight forward as qemu doest not support BCM platform ,its tricky thing to do,anyway it can be done with qemu – vinay hunachyal Mar 19 at 5:15

QEMU Showing Black Screen After Creating Linux uImage for ARM

Try using the below command.

qemu-system-arm -M versatilepb -m 256M -nographic -kernel
arch/arm/boot/uImage -append "console=ttyS0"

Black screen when emulating Linux kernel

The device ttyS0 is usually for PC-style 8250/16550 serial ports, whereas QEMU emulates an AMBA PL011 for the versatibleab and versatilepb machines, which use the device name ttyAMA0, so you can try using console=ttyAMA0 instead.

The framebuffer console may need binding by the kernel during startup, which is controlled by setting FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y in the kernel config, that should allow a console on the tty0 device using console=tty0.

You can specify multiple console= options so using console=ttyAMA0 console=tty0 should show the kernel boot messages on both the emulated console port (on stdio, with your options) and the framebuffer.



Related Topics



Leave a reply



Submit