Steps to Configure INITRD Boot - 2021.2 English

PetaLinux Tools Documentation: Reference Guide

Document ID
UG1144
Release Date
2021-10-27
Version
2021.2 English
  1. Set the RootFS type to INITRD. For more information, see Configuring Root File System Type.
  2. Set RAMDISK loadaddr. Ensure loadaddr does not overlap with kernel or DTB address and that it is a valid DDR address.
  3. Set INITRAMFS/INITRD Image name. The default image name is set to petalinux-intramfs-image to enable the switch_root. The build system generates two types of root file systems: ramdisk images and rootfs images. The ramdisk image is as specified in INITRAMFS/INITRD Image name. It is packed into Fit image (image.ub).
    Note: Setting petalinux-initramfs-image enables the switch_root and searches for the rootfs in ext2/3/4 of SD partitions.
  4. Build the system image. For more information, see Build System Image.
  5. Use one of the following methods to boot the system image:
    1. Boot a PetaLinux Image on Hardware with SD Card, see Booting PetaLinux Image on Hardware with an SD Card.
    2. Boot a PetaLinux Image on Hardware with JTAG, see Booting PetaLinux Image on Hardware with JTAG.
      • Make sure you have configured TFTP server in host.
      • Set the server IP address to the host IP address using the following command at U-Boot prompt:
        ZynqMP> setenv serverip <HOST IP ADDRESS>
      • Read the images using following command:
        ZynqMP> tftpb <dtb load address> system.dtb;tftpb <kernel load address> Image; tftpb <rootfs load address> rootfs.cpio.gz.u-boot.

        Example:

        ZynqMP> tftpb 0x00100000 system.dtb;tftpb 0x00200000 Image; tftpb 0x04000000 rootfs.cpio.gz.u-boot
      • Boot images using following command:
        ZynqMP> booti <kernel load address> <rootfs loadaddress> <device tree load address>

        Example:

        ZynqMP> booti 0x00200000 0x04000000 0x00100000