ARM LINUX :start_kernel is not calling after decompressing uImage
The boot of Linux on embedded is done in 3 steps:
Bootloader
- Low-level hardware initialization
- Loads the Linux kernel in RAM and passes control to Linux
Bootstrap loader (inside the Linux kernel image):
- Decompress and relocate the kernel
- Pass control to it
Linux kernel:
- Boot the system by running start_kernel() which, in the end, spawns the initprocess
Your output is between step 2 and step 3 (i.e., kernel decompressed).
You've probably not set all the things to have a working console:
Compile the target Linux kernel enabling through make menuconfig the serial console in
Device Drivers -> Character Devices -> Serial Drivers
Enable the specific driver for serial communications in the kernel configuration (i.e., through make menuconfig)
Set Linux console on the right device by setting option console=device,baudrate in the bootargs variable of U-Boot.
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"
ARM board booting issue
I assume that you are connected with a serial console to the device, as you see the U-Boot output. Have you configured your kernel to use the serial console? If not, you probably will not see anything.
Show us the kernel command line, plus what did you do (to/in the kernel)? Are you using a plain vanilla kernel?
Assuming you have a kernel for your device that supports your boards hardware, you can for example add something like the following to the kernel command line: console=ttyS0,115200
.
That way, the kernel will use that console for output. But for that to work the kernel has to be built for your device (e.g., has to know where and that there is a serial device).
That being said, it can be that the kernel is just booting up, but you don't see anything, because the kernel does not know the serial console you are using is existing and thus is not displaying anything.
Related Topics
Make Install Error 'Nothing to Be Done'
How to Cross-Compile a Autotools Project for Arm
Building Subversion 1.5.4 on Debian: Could Not Find Library Containing Rsa_New
Omnibus or Source - Can't Decide Which One to Use for Gitllab Backup/Restore
How Is The Linux Calculating Memfree
/Usr/Bin/Ld: Cannot Find -Lemu
Bash - Ignore Hidden Files and Empty Source Directory When Copying
Git Is Not Ignoring File Permission Changes
Phony Targets for Parallel Execution of Make
Docker Non-Root Bind-Mount Permissions, with -Userns-Remap
How to Find/Cut for Only The Filename from an Output of Ls -Lrt in Perl
Is The Program 'Yes' Used for Anything Significant
Code for Wait_Event_Interruptible
How to Access Files in Hadoop Hdfs
How to Automatically Close The Execution of The 'Qemu' After End of Process
Replace a String in a File with Contents Copied from Another File