Creating a Bootable SD Card

Re-creating a Development Kit SD Card

Windows Host OS

iMX6 CPU Download Link MD5SUM of .img
Quad or Dual 77b3d077743feaf314975b95b1b9a1f2
DualLite a3d475c0e4358b7b03e4cc50259bbc99
Solo 8cfc326ad31751bc6b08c54f668b7e02
  1. Download the desired SD card version from the table above based on the CPU type of your module.
  2. Unzip the file so that you have a *.img file
  3. Download and use the Win32 Disk Imager application to write the image to your SD card
    1. Using an SD card reader in your PC insert the card to be written
    2. Open the Win32 Disk Imager application and be sure you select the drive letter for the SD card as this will erase the drive contents
    3. Image the drive and safely remove it

Creating a "custom" SD card

The following instructions are based on creating the SD card partitions and copy the files to the SD card using a Linux OS.

The recommended SD card structure is:
  • No Partition (Beginning of SD Card after 1024Bytes)
    • UBoot Image
  • FAT32 Partition (BOOT)
    • Kernel (zImage)
    • Device Tree Blob (dtb)
  • EXT4 Partition (rootfs)
    • Root Filesystem
  1. Prepare the SD card partitions
    1. Set the disks label useing parted. In this case msdos
      sudo parted -s /dev/<YOUR_SD_CARD> mklabel msdos
    2. Create the FAT32 and EXT4 partitions
      sudo sfdisk /dev/<YOUR_SD-CARD> <<EOF
      label: dos
    3. Create the FAT32 filesystem
      sudo mkfs.fat -F32 -v -n "BOOT" /dev/<YOUR_SD_CARD>1
    4. Create the EXT4 filesystem
      sudo mkfs.ext4 -F -L "rootfs" /dev/<YOUR_SD_CARD>2
  2. Copy your files to the SD card
    1. UBoot is stored at the beginning of the drive but skips 1024bytes to ensure the MBR remains intact
      sudo dd if=<YOUR_u-boot.imx> of=/dev/<YOUR_SD_CARD> bs=512  seek=2
    2. Kernel and DTB
    3. Filesystem
      sudo tar -xvjf <YOUR_ROOTFS.tar.bz2> -C <YOUR_MOUNTED_ROOTFS_PARTITION>
  3. Sync the drive to ensure all data has been completely written before removing the SD card from the PC

Example Custom SD card commands

sudo parted -s /dev/sdd mklabel msdos

sudo sfdisk /dev/sdd<<EOF
label: dos

sudo mkfs.fat -F32 -v -n "BOOT" /dev/sdd1
sudo mkfs.ext4 -F -L "rootfs" /dev/sdd2

sudo dd if=/home/user/u-boot-imx/u-boot.imx of=/dev/sdd bs=512  seek=2
sudo cp /home/user/kernel-imx/zImage /media/user/BOOT
sudo cp /home/user/kernel-imx/igep-0046.dtb /media/user/BOOT
sudo tar -xvjf /home/user/rootfs/ubuntu_0046.tar.bz2 -C /media/user/rootfs


Partner source reference

Go to top
Add picture from clipboard (Maximum size: 600 MB)