<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de-AT">
	<id>https://becomwiki.live.md-websolutions.com/index.php?action=history&amp;feed=atom&amp;title=Boot_media_%28SBC-i.MX51%29</id>
	<title>Boot media (SBC-i.MX51) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://becomwiki.live.md-websolutions.com/index.php?action=history&amp;feed=atom&amp;title=Boot_media_%28SBC-i.MX51%29"/>
	<link rel="alternate" type="text/html" href="https://becomwiki.live.md-websolutions.com/index.php?title=Boot_media_(SBC-i.MX51)&amp;action=history"/>
	<updated>2026-05-13T14:12:50Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in BECOM Systems Support</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://becomwiki.live.md-websolutions.com/index.php?title=Boot_media_(SBC-i.MX51)&amp;diff=246&amp;oldid=prev</id>
		<title>Peter: 1 Version importiert</title>
		<link rel="alternate" type="text/html" href="https://becomwiki.live.md-websolutions.com/index.php?title=Boot_media_(SBC-i.MX51)&amp;diff=246&amp;oldid=prev"/>
		<updated>2023-10-31T08:03:08Z</updated>

		<summary type="html">&lt;p&gt;1 Version importiert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de-AT&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 31. Oktober 2023, 10:03 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de-AT&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Peter</name></author>
	</entry>
	<entry>
		<id>https://becomwiki.live.md-websolutions.com/index.php?title=Boot_media_(SBC-i.MX51)&amp;diff=245&amp;oldid=prev</id>
		<title>en&gt;Peter: 1 Version importiert</title>
		<link rel="alternate" type="text/html" href="https://becomwiki.live.md-websolutions.com/index.php?title=Boot_media_(SBC-i.MX51)&amp;diff=245&amp;oldid=prev"/>
		<updated>2023-08-22T19:35:50Z</updated>

		<summary type="html">&lt;p&gt;1 Version importiert&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= General idea =&lt;br /&gt;
The SBC supports booting from multiple media. The following is just a guideline - of course you are free to take whatever path you want.&lt;br /&gt;
&lt;br /&gt;
For the initial setup, the easiest way is to write the boot loader and the root file system to an SD card. You can then boot from this SD card and subsequently e.g. set up the NAND flash for booting.&lt;br /&gt;
&lt;br /&gt;
In case you need to update the boot loader you can do this from the already running boot loader. In case this goes wrong, you can go back to SD card to boot the &amp;quot;old but working&amp;quot; one.&lt;br /&gt;
&lt;br /&gt;
The other modes are mainly used for production or special applications (using the Freescale ATK Tool).&lt;br /&gt;
&lt;br /&gt;
= Boot mode pins =&lt;br /&gt;
&lt;br /&gt;
The boot mode pins define from which source the i.MX51 will boot. You can change these by setting the DIP switches on the board accordingly.&lt;br /&gt;
&lt;br /&gt;
= Booting from SD card =&lt;br /&gt;
&lt;br /&gt;
Dip switch setup: {{dipswitch|0|0|0|0|1|0|0|0}}&lt;br /&gt;
&lt;br /&gt;
== Setting up a bootable SD card ==&lt;br /&gt;
&lt;br /&gt;
The easiest way to set up a bootable SD card is to use the following script:&lt;br /&gt;
 btmxc/scripts/sd_card_setup.sh&lt;br /&gt;
It uses the SD card&amp;#039;s device file as first argument, and the type of image as second argument, e.g.&lt;br /&gt;
 btmxc/scripts/sd_card_setup.sh /dev/sde gnome&lt;br /&gt;
It assumes that you have built everything (Redboot, Linux zImage, Linux rootfs image) before. It will also set up the Redboot configuration and generate a random MAC address. If anything goes wrong, it will output error messages. The script was successfully tested on Ubuntu 9.04, 9.10, and 10.04 LTS.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;WARNING!&amp;#039;&amp;#039;&amp;#039; The script executes several commands as root by running &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;. Double-check that you give the correct device file to the script, e.g. by looking at the &amp;#039;&amp;#039;dmesg&amp;#039;&amp;#039; output after inserting the card. You may damage content of your hard disk!&lt;br /&gt;
&lt;br /&gt;
What the script will do:&lt;br /&gt;
*Write Redboot to the SD card, including the FIS, configuration data, and logo&lt;br /&gt;
*Write the Linux kernel to the SD card&lt;br /&gt;
*Create a partition and format it with EXT3&lt;br /&gt;
*Unpacks the root file system into the partition&lt;br /&gt;
*Unmounts the card&lt;br /&gt;
&lt;br /&gt;
If the script tells you that it was successful, you can remove the card and use it for the SBC.&lt;br /&gt;
&lt;br /&gt;
== Redboot configuration ==&lt;br /&gt;
&lt;br /&gt;
 RedBoot&amp;gt; fconfig -l&lt;br /&gt;
 Run script at boot: true&lt;br /&gt;
 Boot script: &lt;br /&gt;
 .. sdhc 0 0x100000 0x100000 0x300000 r&lt;br /&gt;
 .. e -b 0x100000 -l 0x300000 -c &amp;quot;console=ttymxc0,115200 console=tty1 root=/dev/mmcblk0p1 psplash=false rootdelay=1 display=hdmi:1024x768M-16@60&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 Boot script timeout (1000ms resolution): 0&lt;br /&gt;
 Use BOOTP for network configuration: true&lt;br /&gt;
 Default server IP address: 0.0.0.0&lt;br /&gt;
 Board specifics: 0&lt;br /&gt;
 Console baud rate: 115200&lt;br /&gt;
 Enable fast logo display at boot: true&lt;br /&gt;
 Set FEC network hardware address [MAC]: true&lt;br /&gt;
 FEC network hardware address [MAC]: 0x6A:0x50:0x69:0x7F:0x26:0x8E&lt;br /&gt;
 GDB connection port: 9000&lt;br /&gt;
 Force console for special debug messages: false&lt;br /&gt;
 Network debug at boot time: false&lt;br /&gt;
 RedBoot&amp;gt; &lt;br /&gt;
&lt;br /&gt;
= Booting from NAND flash =&lt;br /&gt;
&lt;br /&gt;
This is the default boot mode for the SBC.&lt;br /&gt;
&lt;br /&gt;
Dip switch setup: {{dipswitch|0|0|1|1|0|1|1|0}}&lt;br /&gt;
&lt;br /&gt;
== Setting up the NAND flash with a bootable SD card ==&lt;br /&gt;
&lt;br /&gt;
The easiest way to set up the NAND flash is booting up with an SD card and executing the setup in Linux. We have made a little script that copies the necessary files to the SD card.&lt;br /&gt;
It assumes that you already have a bootable SD card (see above).&lt;br /&gt;
 btmxc/scripts/prepare_for_nand_setup.sh&lt;br /&gt;
It uses the SD card&amp;#039;s mount directory as first argument and the type of image as second argument, e.g.&lt;br /&gt;
 btmxc/scripts/sd_card_setup_for_nand_setup.sh /media/disk gnome&lt;br /&gt;
It assumes that you have built everything (Redboot, Linux zImage, Linux rootfs image) before. It will also set up the Redboot configuration and generate a valid random MAC address. If anything goes wrong, it will output error messages. The script was successfully tested on Ubuntu 9.0.4 and Ubuntu 9.0.10.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;WARNING!&amp;#039;&amp;#039;&amp;#039; The script executes several commands as root by running &amp;#039;&amp;#039;sudo&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
After you have booted the SBC-i.MX51 with that SD card, you have to execute &amp;#039;&amp;#039;/home/root/nand_setup/nand_setup.sh&amp;#039;&amp;#039;. This sets up the NAND flash. Afterwards, cleanly shutdown Linux,&lt;br /&gt;
switch the boot mode to NAND and power up the SBC.&lt;br /&gt;
&lt;br /&gt;
== Redboot default configuration ==&lt;br /&gt;
&lt;br /&gt;
 RedBoot&amp;gt; fconfig -l&lt;br /&gt;
 Run script at boot: true&lt;br /&gt;
 Boot script: &lt;br /&gt;
 .. fis load kernel&lt;br /&gt;
 .. e -c &amp;quot;console=ttymxc0,115200 console=tty1 root=/dev/mtdblock2 rootfstype=jffs2 psplash=false display=hdmi:1024x768M-16@60&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 Boot script timeout (1000ms resolution): 0&lt;br /&gt;
 Use BOOTP for network configuration: false&lt;br /&gt;
 Gateway IP address: 0.0.0.0&lt;br /&gt;
 Local IP address: 0.0.0.0&lt;br /&gt;
 Local IP address mask: 0.0.0.0&lt;br /&gt;
 Default server IP address: 0.0.0.0&lt;br /&gt;
 Board specifics: 0&lt;br /&gt;
 Console baud rate: 115200&lt;br /&gt;
 Enable fast logo display at boot: true&lt;br /&gt;
 Set FEC network hardware address [MAC]: true&lt;br /&gt;
 FEC network hardware address [MAC]: 0x1A:0x4A:0xC1:0xE5:0x69:0x38&lt;br /&gt;
 GDB connection port: 9000&lt;br /&gt;
 Force console for special debug messages: false&lt;br /&gt;
 Network debug at boot time: false&lt;br /&gt;
 RedBoot&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--== Updating Redboot, Linux kernel, and file system (in Redboot) ==&lt;br /&gt;
&lt;br /&gt;
 factive nand&lt;br /&gt;
 TODO&lt;br /&gt;
 ...&lt;br /&gt;
&lt;br /&gt;
 nand read -f 0x300000 -b 0x100000 -l 0x200000&lt;br /&gt;
&lt;br /&gt;
&amp;quot;empty&amp;quot; partitions:&lt;br /&gt;
 fis create -b 0x100000 -l 0x500000 -s 0x10 -f 0x300000 kernel&lt;br /&gt;
 fis create -b 0x100000 -l 0x40000000 -s 0x10 -f 0x800000 rootfs&lt;br /&gt;
 fis create -b 0x100000 -l 0x3e800000 -s 0x10 -f 0x40800000 userfs1&lt;br /&gt;
&lt;br /&gt;
 RedBoot&amp;gt; fis list&lt;br /&gt;
 ... Read from 0x1fe00000-0x1feff000 at 0x00100000: ..&lt;br /&gt;
 Name              FLASH addr  Mem addr    Length      Entry point&lt;br /&gt;
 RedBoot           0x00000000  0x00000000  0x00100000  0x00000000&lt;br /&gt;
 FIS directory     0x00100000  0x00100000  0x000FF000  0x00000000&lt;br /&gt;
 RedBoot config    0x001FF000  0x001FF000  0x00001000  0x00000000&lt;br /&gt;
 kernel            0x00300000  0x00100000  0x00500000  0x00100000&lt;br /&gt;
 rootfs            0x00800000  0x00100000  0x40000000  0x00100000&lt;br /&gt;
 userfs1           0x40800000  0x00100000  0x3E800000  0x00100000&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Boot from UART/USB =&lt;br /&gt;
&lt;br /&gt;
The i.MX51 processor can boot from UART (UART1) or USB (USB-OTG). This is also the fall-back boot mode if boot from another media fails.&lt;br /&gt;
&lt;br /&gt;
DIP switch setup: {{dipswitch|1|1|0|0|0|0|0|0}}&lt;br /&gt;
&lt;br /&gt;
Use the ATK tool from Freescale (Windows program) to communicate with the i.MX51. You can download this tool from [https://www.freescale.com].&lt;br /&gt;
&lt;br /&gt;
= Boot from NFS (Network File System) =&lt;br /&gt;
&lt;br /&gt;
During development, downloading the kernel image from your PC and mounting the rootfs from your PC may save you a lot of time.&lt;br /&gt;
&lt;br /&gt;
The boot loader Redboot executes from SD card or from NAND flash.&lt;br /&gt;
&lt;br /&gt;
== NFS root file system preparation ==&lt;br /&gt;
&lt;br /&gt;
Refer to [[NFS Server]] for a quick NFS server how-to.&lt;br /&gt;
&lt;br /&gt;
We assume that the rootfs is available at &amp;#039;&amp;#039;/tftpboot/rootfs-sbc&amp;#039;&amp;#039;. Before you let your target mount this NFS share, you have to disable configuration&lt;br /&gt;
of the &amp;#039;&amp;#039;eth0&amp;#039;&amp;#039; network device. This would override the kernel&amp;#039;s network setup for the device and interrupt the connection to the NFS server and&lt;br /&gt;
hence to the root file system.&lt;br /&gt;
&lt;br /&gt;
Edit &amp;#039;&amp;#039;/tftpboot/rootfs-sbc/etc/network/interfaces&amp;#039;&amp;#039; and comment each line with &amp;#039;&amp;#039;eth0&amp;#039;&amp;#039; in it:&lt;br /&gt;
 #auto eth0&lt;br /&gt;
 #iface eth0 inet dhcp&lt;br /&gt;
&lt;br /&gt;
There&amp;#039;s also a little script that makes things faster:&lt;br /&gt;
 btmxc/scripts/rootfs_unpack.sh&lt;br /&gt;
&lt;br /&gt;
== Redboot configuration ==&lt;br /&gt;
&lt;br /&gt;
 RedBoot&amp;gt; fconfig -l&lt;br /&gt;
 Run script at boot: true&lt;br /&gt;
 Boot script: &lt;br /&gt;
 .. load -r -b 0x100000 zImage&lt;br /&gt;
 .. e -c &amp;quot;console=ttymxc0,115200 console=tty1 root=/dev/nfs nfsroot=192.168.5.1:/tftpboot/rootfs-sbc/,v3,tcp debug psplash=false ip=dhcp display=hdmi:1024x768M-16@60&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 Boot script timeout (1000ms resolution): 1&lt;br /&gt;
 Use BOOTP for network configuration: true&lt;br /&gt;
 Default server IP address: 192.168.5.1&lt;br /&gt;
 Board specifics: 0&lt;br /&gt;
 Console baud rate: 115200&lt;br /&gt;
 Set FEC network hardware address [MAC]: true&lt;br /&gt;
 FEC network hardware address [MAC]: 0x00:0x01:0x02:0x03:0x04:0x28&lt;br /&gt;
 GDB connection port: 9000&lt;br /&gt;
 Force console for special debug messages: false&lt;br /&gt;
 Network debug at boot time: false&lt;br /&gt;
&lt;br /&gt;
== Linux boot ==&lt;br /&gt;
&lt;br /&gt;
During Linux boot, you will see the following messages if the root file system mount was successful:&lt;br /&gt;
 eth0: config: auto-negotiation on, 100FDX, 100HDX, 10FDX, 10HDX.&lt;br /&gt;
 Sending DHCP requests .., OK&lt;br /&gt;
 IP-Config: Got DHCP answer from 192.168.5.1, my address is 192.168.5.121&lt;br /&gt;
 IP-Config: Complete:&lt;br /&gt;
      device=eth0, addr=192.168.5.121, mask=255.255.255.0, gw=192.168.5.1,&lt;br /&gt;
      host=192.168.5.121, domain=krapfi.intern, nis-domain=(none),&lt;br /&gt;
      bootserver=192.168.5.1, rootserver=192.168.5.1, rootpath=&lt;br /&gt;
 Looking up port of RPC 100003/3 on 192.168.5.1&lt;br /&gt;
 Looking up port of RPC 100005/3 on 192.168.5.1&lt;br /&gt;
 VFS: Mounted root (nfs filesystem).&lt;br /&gt;
&lt;br /&gt;
[[Category:SBC-i.MX51]]&lt;br /&gt;
[[Category:i.MX]]&lt;/div&gt;</summary>
		<author><name>en&gt;Peter</name></author>
	</entry>
</feed>