Difference between revisions of "Template:How to create a bootable SD card"

From DAVE Developer's Wiki
Jump to: navigation, search
 
(One intermediate revision by the same user not shown)
Line 24: Line 24:
 
The process is relatively straightforward: it consists of writing the WIC file of interest generated by Yocto onto the SD card.  
 
The process is relatively straightforward: it consists of writing the WIC file of interest generated by Yocto onto the SD card.  
 
The following instruction explains how to use ''balenaEtcher'' on a Windows host. The procedure is similar when working with a Linux host.
 
The following instruction explains how to use ''balenaEtcher'' on a Windows host. The procedure is similar when working with a Linux host.
* download the desired binary image to flash (<code>*.wic</code> or <code>*.wic.bz2</code>) from the [https://mirror.dave.eu/desk-mx-l/ mirror binary server] selecting the proper [[DESK-MXxx-L | DESK-MXxx-L]] release
+
* download the desired binary image to flash (<code>*.wic</code> or <code>*.wic.bz2</code>) from the [https://mirror.dave.eu/desk-mx-l/ mirror binary server] selecting the proper [[DESK-{{{kit-code}}}-L | DESK-{{{kit-code}}}-L]] release
**among the binaries made available in the [[mirror:desk-mp1-l/| mirror]] there are several <code>*.wic.bz2</code> files for the available releases. In particular, there is the <code>dave-image-devel-desk-mxXXXX.wic.bz2</code> (for {{{nome-som}}}) file. This image is the one used to program the microSD card delivered along with the evaluation kit.
+
**among the binaries made available in the [[mirror:{{{kit-repo}}}/| mirror]] there are several <code>*.wic.bz2</code> files for the available releases. In particular, there is the <code>dave-image-devel-desk-{{{kit}}}.wic.bz2</code> (for {{{nome-som}}}) file. This image is the one used to program the microSD card delivered along with the evaluation kit.
 
* connect the microSD card to the PC Host
 
* connect the microSD card to the PC Host
 
* open balenaEtcher tool
 
* open balenaEtcher tool
Line 41: Line 41:
 
=== SD card structure ===
 
=== SD card structure ===
 
The created SD card has the following structure:
 
The created SD card has the following structure:
* raw sectors for the bootloader storage: tipically this is a 8MB raw part where storing the bootloader binaries (like <code>imxXXX_flash.bin</code>) for the bootrom startup
+
* raw sectors for the bootloader storage: typically this is an 8MB raw part that stores the bootloader binaries (like <code>i{{{kit}}}_flash.bin</code>) for the bootrom startup
 
* <code>FAT32</code> first partition: this will be mapped to the <code>/dev/mmcblkXp1</code> device in Linux
 
* <code>FAT32</code> first partition: this will be mapped to the <code>/dev/mmcblkXp1</code> device in Linux
 
** usually this partition contains the Linux kernel binary and the device tree blob
 
** usually this partition contains the Linux kernel binary and the device tree blob
** the splash screen image is stored in this partition too for a splash image showing during U-Boot startup
+
** splash screen image is stored in this partition too for a splash image showing during U-Boot startup
 
* <code>ext4</code> second partition: this will be mapped to the <code>/dev/mmcblkXp2</code> device in Linux
 
* <code>ext4</code> second partition: this will be mapped to the <code>/dev/mmcblkXp2</code> device in Linux
 
** this partition contains the Linux ''root file system''
 
** this partition contains the Linux ''root file system''
Line 52: Line 52:
 
Even if the overall binary artifacts have been created by the Yocto build, it is highly discouraged to manually create the SD card starting from them.
 
Even if the overall binary artifacts have been created by the Yocto build, it is highly discouraged to manually create the SD card starting from them.
  
The Yocto build take care about the overall binary consistance (like kernel modules and so on) avoiding to mistmatch different version.
+
The Yocto build takes care of the overall binary consistency (like kernel modules and so on) avoiding mismatching different versions.
  
 
Moreover, the SD card is intended to be used during the development process and not for the production phase (where other deployment specifications and details have to be taken into account).
 
Moreover, the SD card is intended to be used during the development process and not for the production phase (where other deployment specifications and details have to be taken into account).

Latest revision as of 09:08, 17 January 2024

History
Issue Date Notes

Year/Month/Day

TBD
Year/Month/Day TBD



How to create a bootable SD card[edit source]

This article shows how to (re)create the bootable SD card, from the binary images produced by the DESK-MX-L Yocto build, using a standard SD image flasher like balenaEtcher

The process is relatively straightforward: it consists of writing the WIC file of interest generated by Yocto onto the SD card. The following instruction explains how to use balenaEtcher on a Windows host. The procedure is similar when working with a Linux host.

  • download the desired binary image to flash (*.wic or *.wic.bz2) from the mirror binary server selecting the proper [[DESK-{{{kit-code}}}-L | DESK-{{{kit-code}}}-L]] release
    • among the binaries made available in the [[mirror:{{{kit-repo}}}/| mirror]] there are several *.wic.bz2 files for the available releases. In particular, there is the dave-image-devel-desk-{{{kit}}}.wic.bz2 (for {{{nome-som}}}) file. This image is the one used to program the microSD card delivered along with the evaluation kit.
  • connect the microSD card to the PC Host
  • open balenaEtcher tool
  • once the tool is open:
    • select the binary to flash by clicking on Flash from file
    • select the microSD to flash by clicking on Select target
    • flash the uSD by clicking o Flash
Unpacking
Flashing
Validating

SD card structure[edit source]

The created SD card has the following structure:

  • raw sectors for the bootloader storage: typically this is an 8MB raw part that stores the bootloader binaries (like i{{{kit}}}_flash.bin) for the bootrom startup
  • FAT32 first partition: this will be mapped to the /dev/mmcblkXp1 device in Linux
    • usually this partition contains the Linux kernel binary and the device tree blob
    • splash screen image is stored in this partition too for a splash image showing during U-Boot startup
  • ext4 second partition: this will be mapped to the /dev/mmcblkXp2 device in Linux
    • this partition contains the Linux root file system

Creating the SD card from binary artifacts[edit source]

Even if the overall binary artifacts have been created by the Yocto build, it is highly discouraged to manually create the SD card starting from them.

The Yocto build takes care of the overall binary consistency (like kernel modules and so on) avoiding mismatching different versions.

Moreover, the SD card is intended to be used during the development process and not for the production phase (where other deployment specifications and details have to be taken into account).


[[Category:{{{nome-som}}}]]