PYNQ: PYTHON PRODUCTIVITY FOR ZYNQ

Re-build linux-xlnx , u-boot for Pynq Z1

Hello

I wanted to change some kernel configuration and re-build (cross compile) linux kernel. My target board is Pynz Z1.

I have followed simpler steps in this post. I successfully could get uImage. The article provides boot.bin and devicetree.dtb. I used these files along with uImage.

However, everytime I boot the board using SD Card, the boot process freezes after the kernel message “Starting kernel…”. Am I missing something in this kernel re-build process.

I really appreciate any help. Thanks.

It looks like the device tree has some issues. Not sure where you got the dtb file, but it is possibly not compatible with Pynq z1.

I am not sure why you want to rebuild the linux kernel since if you are using our sdbuild process, the petalinux project should just have everything - kernels, fsbl, u-boot, etc. What are you trying to do?

Thank you very much for the reply. I have not gone through the sdbuild flow. I have taken linux-xlnx, configured and built to get uImage.

I need to enable the kernel configuration CONFIG_DEBUG_INFO during the build, which is disabled in the default kernel image I downloaded from pynq.io.

Ok, so the best way to enable that kernel configuration, is to adjust that kernel configuration, and rebuild the boot_files using the SD make flow. Something like

  1. Change kernel configurations in https://github.com/Xilinx/PYNQ/blob/master/sdbuild/boot/meta-pynq/recipes-kernel/linux/linux-xlnx/pynq.cfg

  2. Rebuild the boot file only.

    make boot_files BOARDDIR=<your_board_folder>
    

After this you will see the boot files in sdbuild/boot and you need to replace the boot files in your SD card partition.

2 Likes

Thank you so much! It worked!