Difference between revisions of "IMX8/Nitrogen8M/Getting Started/Selecting Boot Options"

From RidgeRun Developer Connection
Jump to: navigation, search
(Physical Setup)
m
 
(30 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<noinclude>{{IMX8/Head}}</noinclude>
+
<noinclude>{{IMX8/Head|previous=Nitrogen8M/Getting Started|next=Nitrogen8M/Getting Started/System Setup|metakeywords=carrier,carrier board,base board,SOM,System on Module,Boundary Devices,Nitrogen8M,configure,configure host machine,boot configuration,emmc boot,usb boot,advanced boot}}</noinclude>
  
==Physical Setup==
+
__TOC__
The i.MX8M Evaluation Kit provides two switches in order to set the boot configurations according to your needs. You can see both switches on the following picture: 
 
[[File:switchesevk.png|300px|center|Boot switches on the i.MX8M EVK]]
 
Where the one surrounded by a red square is the '''SW801''' switch and the one surrounded by a yellow square is the '''SW802''' switch.
 
*'''SW801:''' This switch allows to configure the boot source by selecting one of the following options:
 
**Boot From Fuses.
 
**Serial Downloader.
 
**Internal Boot (Development).
 
**Reserved.
 
  
*'''SW802:''' This switch allows to configure the boot mode.
+
==Boot Loading Options==
**Boot from EMMC.
+
The Nitrogen8M provides a switch in order to set the boot configurations according to your needs.  
**Boot from SD2.
 
  
The i.MX8M Applications Processor can be the boot configuration selected on '''SW802''' or by the boot configuration stored on internal eFUSE. Alternatively, the i.MX8M can download a program image from a USB connection when configured in serial downloader mode. The method used to determine where the processor finds its boot information is from two dedicated BOOT MODE pins.
+
This switch allows configuring the boot source by selecting one of the following options:
 +
*Serial Downloader: The Nitrogen8M downloads a program image from a USB connection.
 +
*Internal Boot: The boot mode is selected according to U-Boot, and the variable '''boot_targets''' controls the boot device (EMMC or SDCARD).
  
In the following table you can see how to configure each mode:
+
In the following table, you can see how to configure each boot mode.
  
 
{| class="wikitable" style="margin-right: auto; margin-left: auto; border: none;"
 
{| class="wikitable" style="margin-right: auto; margin-left: auto; border: none;"
 
|-
 
|-
! style="background: black; color: white;" | Boot Source!! style="background: black; color: white;" | BOOT_MODE1 !! style="background: black; color: white;" | BOOT_MODE0
+
! style="background: black; color: white;" | Boot Source!! style="background: black; color: white;" | PIN
 
|-
 
|-
! scope="row" | Boot from fuses
+
! scope="row" | Serial Downloader
| style="text-align: center" | 0 || style="text-align: center" | 0
+
| style="text-align: center" | ON 
 +
|-
 +
! scope="row" | Internal Boot
 +
| style="text-align: center" | OFF
 +
|}
 +
 
 +
The bootable source code is selected from the switch and U-Boot, the complete information is presented in the following table:
 +
 
 +
{| class="wikitable" style="margin-right: auto; margin-left: auto; border: none;"
 +
|-
 +
! style="background: black; color: white;" | BOOT Source!! style="background: black; color: white;" | PIN !! style="background: black; color: white;" | boot_targets
 
|-
 
|-
 
! scope="row" | Serial Downloader
 
! scope="row" | Serial Downloader
| style="text-align: center" | || style="text-align: center" | 1
+
| style="text-align: center" | ON || style="text-align: center" | ---
 
|-
 
|-
! scope="row" | Internal Boot
+
! scope="row" | Boot from EMMC
| style="text-align: center" | 1 || style="text-align: center" | 0
+
| style="text-align: center" | OFF || style="text-align: center" | mmc0
 
|-
 
|-
! scope="row" | Reserved
+
! scope="row" | Boot from USB
| style="text-align: center" | 1 || style="text-align: center" | 1
+
| style="text-align: center" | OFF || style="text-align: center" | usb0
 
|}
 
|}
  
[[File:switchemmc.png|200px|center|Boot switches on the i.MX8M EVK]]
+
==BOOT Switch Configuration for EMMC and USB==
[[File:switchsd.png|200px|center|Boot switches on the i.MX8M EVK]]
+
This is how the physical switch should be set in order to boot from EMMC or USB:
 +
 
 +
[[File:Nitrogen8m_boot_sw.png|400px|center|Boot switch on Nitrogen8M]]
 +
 
 +
==EMMC==
 +
 
 +
The EMMC device is the default boot device chosen by U-Boot, this memory is preloaded with Android 8.1.
 +
 
 +
Just in case, follow the instructions to set the EMMC as a boot device.
  
The board is able to boot from more that one way, below you will see how to configure the boot device.
+
Instructions to set up the EMMC Boot from U-Boot:
 +
* Connect the Nitrogen8M to a host machine with the Serial Console Cable.
 +
* Start any serial console (i.e minicom or term).
 +
* Power on the board, the console will display the U-boot start-up screen.
 +
* Press any key on your keyboard to stop the boot sequence, this will display the U-Boot console.
 +
* Change the Boot Device with the following command:
 +
<pre>
 +
setenv boot_targets mmc0
 +
</pre>
 +
* If you do not want to repeat this process, you can save the selected Boot Device with this command:
 +
<pre>
 +
saveenv
 +
</pre>
 +
* Continue the Boot sequence by typing the next command:
 +
<pre>
 +
boot
 +
</pre>
  
== eMMC ==
+
After the previous instructions, the board will boot from the EMMC memory.
By default, the board will boot from eMMC.
 
Just be sure that the '''Boot Mode Switch''' is place on left side before connecting the power adapter.  
 
  
 
== USB Boot ==
 
== USB Boot ==
This Boot option requires a Bootable USB stick and a Serial Console Cable, refer to iMX8 Software Support section to download a prebuilt image or create your own image with the instructions provided in the Custom Image section.
 
  
Instructions to setting up the USB Boot:
+
This Boot option also requires a Bootable USB stick and a Serial Console Cable.
* Connect the Nitrogen8m to a host machine with the Serial Console Cable.
+
 
* Start any serial console (i.e minicom or term)
+
Instructions to set up the USB Boot from U-Boot:
 +
* Connect the Nitrogen8M to a host machine with the Serial Console Cable.
 +
* Start any serial console (i.e minicom or term).
 
* Power on the board, the console will display the U-boot start-up screen.  
 
* Power on the board, the console will display the U-boot start-up screen.  
 
* Press any key on your keyboard to stop the boot sequence, this will display the U-Boot console.
 
* Press any key on your keyboard to stop the boot sequence, this will display the U-Boot console.
Line 57: Line 83:
 
setenv boot_targets usb0
 
setenv boot_targets usb0
 
</pre>
 
</pre>
* If you do not want to repeat this commands, you can save the selected Boot Device with this command:
+
* If you do not want to repeat this process, you can save the selected Boot Device with this command:
 
<pre>
 
<pre>
 
saveenv
 
saveenv
Line 66: Line 92:
 
</pre>
 
</pre>
  
After the previous instructions, the board will boot from the USB stick
+
After the previous instructions, the board will boot from the USB stick.
  
 +
==Advanced Boot Options==
 +
You can load the kernel and filesystem by using advanced methods. Please refer the [[IMX8/Nitrogen8M/Getting_Started/Advanced_Boot_Options | Advanced Boot Options]] page for more information.
  
<noinclude>{{IMX8/Foot|<Replace with "previous" page>|<Replace with "next" page>}}</noinclude>
+
<noinclude>{{IMX8/Foot|Nitrogen8M/Getting Started|Nitrogen8M/Getting Started/System Setup}}</noinclude>

Latest revision as of 12:13, 9 March 2023


NXP Partner Program Registered Vertical.jpg NXP Partner Program Horizontal.jpg
Previous: Nitrogen8M/Getting Started Index Next: Nitrogen8M/Getting Started/System Setup





Boot Loading Options

The Nitrogen8M provides a switch in order to set the boot configurations according to your needs.

This switch allows configuring the boot source by selecting one of the following options:

  • Serial Downloader: The Nitrogen8M downloads a program image from a USB connection.
  • Internal Boot: The boot mode is selected according to U-Boot, and the variable boot_targets controls the boot device (EMMC or SDCARD).

In the following table, you can see how to configure each boot mode.

Boot Source PIN
Serial Downloader ON
Internal Boot OFF

The bootable source code is selected from the switch and U-Boot, the complete information is presented in the following table:

BOOT Source PIN boot_targets
Serial Downloader ON ---
Boot from EMMC OFF mmc0
Boot from USB OFF usb0

BOOT Switch Configuration for EMMC and USB

This is how the physical switch should be set in order to boot from EMMC or USB:

Boot switch on Nitrogen8M

EMMC

The EMMC device is the default boot device chosen by U-Boot, this memory is preloaded with Android 8.1.

Just in case, follow the instructions to set the EMMC as a boot device.

Instructions to set up the EMMC Boot from U-Boot:

  • Connect the Nitrogen8M to a host machine with the Serial Console Cable.
  • Start any serial console (i.e minicom or term).
  • Power on the board, the console will display the U-boot start-up screen.
  • Press any key on your keyboard to stop the boot sequence, this will display the U-Boot console.
  • Change the Boot Device with the following command:
setenv boot_targets mmc0
  • If you do not want to repeat this process, you can save the selected Boot Device with this command:
saveenv
  • Continue the Boot sequence by typing the next command:
boot

After the previous instructions, the board will boot from the EMMC memory.

USB Boot

This Boot option also requires a Bootable USB stick and a Serial Console Cable.

Instructions to set up the USB Boot from U-Boot:

  • Connect the Nitrogen8M to a host machine with the Serial Console Cable.
  • Start any serial console (i.e minicom or term).
  • Power on the board, the console will display the U-boot start-up screen.
  • Press any key on your keyboard to stop the boot sequence, this will display the U-Boot console.
  • Change the Boot Device with the following command:
setenv boot_targets usb0
  • If you do not want to repeat this process, you can save the selected Boot Device with this command:
saveenv
  • Continue the Boot sequence by typing the next command:
boot

After the previous instructions, the board will boot from the USB stick.

Advanced Boot Options

You can load the kernel and filesystem by using advanced methods. Please refer the Advanced Boot Options page for more information.


Previous: Nitrogen8M/Getting Started Index Next: Nitrogen8M/Getting Started/System Setup