We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 60666

Embedded Linux – My System Hangs At “Starting Kernel…”


My system is hanging at the UBOOT to Linux hand-off with the message "Starting Kernel".


This scenario is very common.

While the solutions vary, the information below provides general troubleshooting tips and techniques for resolving this scenario.

1) Update the boot arguments to include earlyprintk

This enables additional debug information during the initial stages of kernel startup that can be insightful for further triage.
"earlyprintk" can be enabled as a kernel configuration option, a variable in the UBOOT environment, or a value in the bootargs node of the systems device tree DTS file.

2) Ensure that the system has a system timer device included in the hardware definition and device tree DTS file.

  • For Zynq, ensure that a TTC peripheral is enabled in the hardware platform. In the DTS file, ensure that a ttc node appears.
  • For MicroBlaze, ensure that an AXI_TIMER peripheral is part of the hardware platform, that it utilizes its interrupt, and that it is included in the DTS file

3) If your system was previously working, double-check your DTS against a reference DTS as found in the Xilinx GitHub repository.

4) For PetaLinux 2014.2 users, using more than one UART with earlyprintk enabled can result in similar behavior.  Please see (Xilinx Answer 61039) for more details.

Occasionally, Linux kernel device drivers will be updated in such a way that previously working DTS nodes for hardware peripherals are no longer valid. 

This can sometimes result in a kernel hang during startup as described above.

For these scenarios, utilizing earlyprintk during kernel startup can usually provide enough information to determine which peripheral is having difficulty during startup.

AR# 60666
Date Created 05/15/2014
Last Updated 11/06/2014
Status Active
Type General Article
  • SoC
  • Zynq-7000
  • FPGA Device Families
  • PetaLinux
  • EDK
  • Vivado Design Suite