Spaces
Browse
Pages
Blog
Labels
Space Operations
Quick Search
Help
Online Help
Keyboard Shortcuts
Feed Builder
What’s new
Available Gadgets
About Embedian
Log In
Sign Up
Linux on SMARC
Linux on SMARC
Copy Page
You are not logged in. Any changes you make will be marked as
anonymous
. You may want to
Log In
if you already have an account. You can also
Sign Up
for a new account.
This page is being edited by
.
image-effects
image-attributes
search
attachments
weblink
advanced
Paragraph
Paragraph
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Preformatted
Quote
Bold
Italic
Underline
Colour picker
More colours
Formatting
Strikethrough
Subscript
Superscript
Monospace
Clear Formatting
Bullet list
Numbered list
Task list
Outdent
Indent
Align left
Align center
Align right
Page Layout
Link
Table
Insert
Insert Content
Image
Link
Attachment
Symbol
Emoticon
Markup
Horizontal rule
Task List
Insert Macro
Evernote
User Mention
JIRA Issue/Filter
Info
Status
Gallery
Table of Contents
Other Macros
Page Layout
No Layout
Two column (simple)
Two column (simple, left sidebar)
Two column (simple, right sidebar)
Three column (simple)
Two column
Two column (left sidebar)
Two column (right sidebar)
Three column
Three column (left and right sidebars)
Undo
Redo
Find/Replace
Keyboard Shortcuts Help
<p><img class="editor-inline-macro" src="/plugins/servlet/confluence/placeholder/macro?definition=e3RvYzpzdHlsZT1zcXVhcmV9&locale=en_GB&version=2" data-macro-name="toc" data-macro-parameters="style=square"></p><h1><span style="color: rgb(0,51,102);">Build and Install Linux System for SMARC T335X</span></h1><hr /><p>This document provides instructions for advanced users how Embedian offers patches and builds a customized version of u-boot and linux kernel for Embedian's SMARC T335X product platform and how to install the images to bring the evaluation board up and running. </p><p><span style="color: rgb(0,0,0);">Our aim is to fully support our hardware through device drivers. We also provide unit tests so that testing a board is easy and custom development can start precisely.</span></p><h1><span style="color: rgb(0,51,102);">Availability</span></h1><hr /><p><a href="http://www.embedian.com/index.php?main_page=product_info&cPath=1&products_id=1" style="line-height: 1.4285715;">SMARC T335X</a> at Embedian</p><h1><span style="color: rgb(0,51,102);">Carrier Board</span></h1><hr /><p><a href="http://www.embedian.com/index.php?main_page=product_info&cPath=6&products_id=3" style="line-height: 1.4285715;">SBC-SMART-BEE</a> (module and carrier board) at Embedian</p><p><span style="color: rgb(51,51,51);"><a href="http://www.embedian.com/index.php?main_page=product_info&cPath=6&products_id=19">SBC-SMART-MEN</a> (module and carrier board) at Embedian</span></p><h1><span style="color: rgb(0,51,102);">Basic Resources</span></h1><hr /><p><span style="color: rgb(0,51,102);"> </span></p><ul><li>ARM Cross Compiler<ul><li>Linaro: <a class="external-link" href="https://launchpad.net/linaro-toolchain-binaries" rel="nofollow">https://launchpad.net/linaro-toolchain-binaries</a></li></ul></li><li>Bootloader<ul><li>Das U-Boot – the Universal Boot Loader <a class="external-link" href="http://www.denx.de/wiki/U-Boot" rel="nofollow">http://www.denx.de/wiki/U-Boot</a></li><li>Source – <a class="external-link" href="http://git.denx.de/?p=u-boot.git;a=summary" rel="nofollow">http://git.denx.de/?p=u-boot.git;a=summary</a></li></ul></li><li>Linux Kernel<ul><li>Linus's Mainline tree: <a class="external-link" href="http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=summary" rel="nofollow">http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=summary</a></li><li>Linux omap tree: <a class="external-link" href="http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap.git" rel="nofollow">http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap.git</a></li><li><span style="line-height: 1.4285715;">TI Linux source tree: <span style="color: rgb(0,0,0);"><a href="http://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git">http://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git</a></span></span></li><li><span style="line-height: 1.4285715;"><span style="color: rgb(0,0,0);">TI’s overall Processor SDK build and test process: <a href="http://arago-project.org/git/projects/tisdk-build-scripts.git" rel="nofollow">http://arago-project.org/git/projects/tisdk-build-scripts.git</a></span><span style="color: rgb(0,0,0);"> </span></span></li><li>Arago Project TI Staging tree: <a class="external-link" href="http://arago-project.org/git/projects/?p=linux-am33x.git;a=shortlog;h=refs/heads/v3.2-staging" rel="nofollow">http://arago-project.org/git/projects/?p=linux-am33x.git;a=shortlog;h=refs/heads/v3.2-staging</a></li><li>Embedian smarc-t335x kernel source tree for linux 3.2: <a href="http://git.embedian.com/developer/linux-smarc-t335x-v3.2.git">http://git.embedian.com/developer/linux-smarc-t335x-v3.2.git</a></li><li>Embedian smarc-t335x kernel source tree for linux 3.12 and after: <a href="http://git.embedian.com/developer/smarc-ti-linux-kernel">http://git.embedian.com/developer/smarc-ti-linux-kernel</a></li></ul></li><li>ARM based rootfs<ul><li>Debian Squeeze: <a class="external-link" href="http://www.debian.org/" rel="nofollow">http://www.debian.org/</a><br /><br /></li></ul></li></ul><h1><span style="color: rgb(0,51,102);">ARM Cross Compiler: GCC</span></h1><hr /><p><span style="color: rgb(51,51,51);">This is a pre-built (32bit) version of Linaro GCC that runs on generic linux, so 64bit users need to make sure they have installed the 32bit libraries for their distribution.</span></p><table class="confluenceTable"><tbody><tr><th class="confluenceTh">debian based</th><th class="confluenceTh">extra</th><th class="confluenceTh"><span>pkgs: (sudo apt-get update ; sudo apt-get install xyz)</span></th></tr><tr><td class="confluenceTd"><p>Ubuntu 12.04</p></td><td class="confluenceTd"><p> </p></td><td class="confluenceTd"><p>ia32-libs</p></td></tr><tr><td class="confluenceTd"><p>Debian 7 (Wheezy)</p></td><td class="confluenceTd"><p>sudo dpkg --add-architecture i386</p></td><td class="confluenceTd"><p><a href="http://libc6i386">libc6:i386</a> libstdc++6:i386 <a href="http://libncurses5i386">libncurses5:i386</a> <a href="http://zlib1gi386">zlib1g:i386</a></p></td></tr><tr><td colspan="1" class="confluenceTd"><p>Ubuntu 12.10 -> 14.04</p></td><td colspan="1" class="confluenceTd"><p> </p></td><td colspan="1" class="confluenceTd"><p><a href="http://libc6i386">libc6:i386</a> libstdc++6:i386 <a href="http://libncurses5i386">libncurses5:i386</a> <a href="http://zlib1gi386">zlib1g:i386</a></p></td></tr><tr><td class="confluenceTd"><p>Red Hat/Centos/Fedora</p></td><td class="confluenceTd"><p> </p></td><td class="confluenceTd"><p>libstdc++.i686 ncurses-devel.i686 zlib.i686</p></td></tr><tr><th class="confluenceTh"><p>Red Hat based (rpm)</p></th><th class="confluenceTh"><p>extra</p></th><th class="confluenceTh"><p>pkgs: (yum install xyz)</p></th></tr><tr><td class="confluenceTd"><p>Red Hat/Centos/Fedora</p></td><td class="confluenceTd"><p> </p></td><td class="confluenceTd"><p>libstdc++.i686 ncurses-devel.i686 zlib.i686</p></td></tr><tr><td colspan="1" class="confluenceTd"><p>Ubuntu 12.04</p></td><td colspan="1" class="confluenceTd"><p> </p></td><td colspan="1" class="confluenceTd"><p>ia32-libs</p></td></tr><tr><td colspan="1" class="confluenceTd"><p>Ubuntu 12.10 -> 14.04</p></td><td colspan="1" class="confluenceTd"><p> </p></td><td colspan="1" class="confluenceTd"><p><a href="http://libc6i386">libc6:i386</a> libstdc++6:i386 <a href="http://libncurses5i386">libncurses5:i386</a> <a href="http://zlib1gi386">zlib1g:i386</a></p></td></tr></tbody></table><p><span style="color: rgb(0,0,0);"><br /></span></p><p><span style="color: rgb(0,0,0);">To build Embedian’s smarct335x u-boot and linux kernel, you will need to install the Linaro arm compiler that TI used for their release: <br /></span></p><p>For <span style="color: rgb(0,51,102);"><strong>u-boot v2017.01</strong></span> and<strong> <span style="color: rgb(0,51,102);">Linux kernel v4.9.41</span></strong>, use Linaro arm compilier that TI used in their Processor SDK 04.01.00.06</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ wget -c <span class="nolink">http://releases.linaro.org/components/toolchain/binaries/6.2-2016.11/arm-linux-gnueabihf/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf.tar.xz</span></pre><pre>$ sudo tar -C /opt -xJf gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf.tar.xz</pre><pre>$ export CC=/opt/gcc-linaro-6.2.1-2016.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-</pre></td></tr></table><p><span style="color: rgb(0,0,0);"> <br /></span>For <span style="color: rgb(0,51,102);"><strong>u-boot v2016.05</strong></span> and<strong> <span style="color: rgb(0,51,102);">Linux kernel v4.4.12</span></strong>, use Linaro arm compilier that TI used in their Processor SDK 03.00.00.04</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ wget http://releases.linaro.org/components/toolchain/binaries/5.3-2016.02/arm-linux-gnueabihf/gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf.tar.xz</pre><pre>$ sudo tar -C /opt -xJf gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf.tar.xz</pre><pre>$ export CC=/opt/gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-</pre></td></tr></table><p><span style="color: rgb(0,0,0);"> <br /></span>For <span style="color: rgb(0,51,102);"><strong>u-boot 2015.07</strong> and<strong> Linux 4.1.10</strong></span>, you need to use the following newer Linaro arm compilier that TI used in their Processor SDK 02.00.01.07.<span style="color: rgb(0,0,0);"> </span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ wget -c <span class="nolink">http://releases.linaro.org/archive/15.05/components/toolchain/binaries/arm-linux-gnueabihf/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf.tar.xz</span></pre><pre>$ sudo tar -C /opt -xJf gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf.tar.xz</pre><pre>$ export CC=/opt/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-</pre></td></tr></table><p><span style="color: rgb(0,51,102);"><br />For </span><strong style="color: rgb(0,51,102);">u-boot 2014.04</strong><span style="color: rgb(0,51,102);">, </span><strong style="color: rgb(0,51,102);">u-boot 2014.07</strong><span style="color: rgb(0,51,102);">, </span><strong style="color: rgb(0,51,102);">Linux 3.2</strong><span style="color: rgb(0,51,102);">,</span><strong style="color: rgb(0,51,102);"> Linux 3.12</strong><span style="color: rgb(0,51,102);"> and</span><strong style="color: rgb(0,51,102);"> Linux 3.14</strong><span style="color: rgb(0,51,102);">, use the following newer Linaro arm compilier that TI used in theirAMSDK 6 and AMSDK7..</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ wget <span class="nolink">http://releases.linaro.org/archive/13.04/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz</span></pre><pre>$ sudo tar -C /opt -xJf gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz</pre><pre>$ export CC=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/arm-linux-gnueabihf-</pre></td></tr></table><p>Test:</p><p><strong>If this test fails, verify that you have the 32bit libraries installed on your development system.</strong></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ ${CC}gcc --version</span></code><br /><code>arm-linux-gnueabihf-gcc (crosstool-NG linaro-1.13.1-4.7-2013.04-20130415 - Linaro GCC 2013.04) 4.7.3 20130328 (prerelease)</code><br /><code>Copyright (C) 2012 Free Software Foundation, Inc.</code><br /><code>This is free software; see the source for copying conditions. There is NO</code><br /><code>warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</code></p></td></tr></table><h1><span style="color: rgb(0,51,102);">Generating SSH Keys</span></h1><hr /><p>We recommend you use SSH keys to establish a secure connection between your computer and Embedian Gitlab server. The steps below will walk you through generating an SSH key and then adding the public key to our Gitlab account.</p><h3><span style="color: rgb(0,51,102);">Step 1. Check for SSH keys</span></h3><hr /><p><span style="color: rgb(51,51,51);">First, we need to check for existing ssh keys on your computer. Open up <span class="platform-windows">Git Bash</span> and run:</span></p><table class="wysiwyg-macro" data-macro-name="code" data-macro-parameters="language=cpp|theme=Confluence" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvZGU6dGhlbWU9Q29uZmx1ZW5jZXxsYW5ndWFnZT1jcHB9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="PLAIN_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ cd ~/.ssh $ ls # Lists the files in your .ssh directory</pre></td></tr></table><p><span style="color: rgb(51,51,51);"><span>Check the directory listing to see if you have a file named either </span><code>id_rsa.pub</code><span> or </span><code>id_dsa.pub</code><span>. If you don't have either of those files go to </span><strong>step 2</strong><span>. Otherwise, you already have an existing keypair, and you can skip to </span><strong>step 3</strong><span>.</span></span></p><h3><span style="color: rgb(0,51,102);">Step 2. Generate a new SSH key</span></h3><hr /><p><span style="color: rgb(51,51,51);">To generate a new SSH key, enter the code below. We want the default settings so when asked to enter a file in which to save the key, just press enter.</span></p><table class="wysiwyg-macro" data-macro-name="code" data-macro-parameters="language=cpp|theme=Confluence" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvZGU6dGhlbWU9Q29uZmx1ZW5jZXxsYW5ndWFnZT1jcHB9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="PLAIN_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ ssh-keygen -t rsa -C "your_email@example.com" # Creates a new ssh key, using the provided email as a label # Generating public/private rsa key pair. # Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter] $ ssh-add id_rsa</pre></td></tr></table><p><span style="color: rgb(51,51,51);"><span>Now you need to enter a passphrase.</span></span></p><table class="wysiwyg-macro" data-macro-name="code" data-macro-parameters="language=cpp|theme=Confluence" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvZGU6dGhlbWU9Q29uZmx1ZW5jZXxsYW5ndWFnZT1jcHB9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="PLAIN_TEXT"><tr><td class="wysiwyg-macro-body"><pre>Enter passphrase (empty for no passphrase): [Type a passphrase] Enter same passphrase again: [Type passphrase again]</pre></td></tr></table><p><span>Which should give you something like this:</span></p><table class="wysiwyg-macro" data-macro-name="code" data-macro-parameters="language=cpp|theme=Confluence" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvZGU6dGhlbWU9Q29uZmx1ZW5jZXxsYW5ndWFnZT1jcHB9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="PLAIN_TEXT"><tr><td class="wysiwyg-macro-body"><pre>Your identification has been saved in /c/Users/you/.ssh/id_rsa. Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub. The key fingerprint is: 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com</pre></td></tr></table><h3><span style="color: rgb(0,51,102);">Step 3. Add your SSH key to Embedian Gitlab Server</span></h3><hr /><p><span style="color: rgb(51,51,51);">Copy the key to your clipboard.</span></p><table class="wysiwyg-macro" data-macro-name="code" data-macro-parameters="language=cpp|theme=Confluence" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2NvZGU6dGhlbWU9Q29uZmx1ZW5jZXxsYW5ndWFnZT1jcHB9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="PLAIN_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAABDAQABAAABAQDQUEnh8uGpfxaZVU6+uE4bsDrs/tEE5/BPW7jMAxak 6qgOh6nUrQGBWS+VxMM2un3KzwvLRJSj8G4TnTK2CSmlBvR+X8ZeXNTyAdaDxULs/StVhH+QRtFEGy4o iMIzvIlTyORY89jzhIsgZzwr01nqoSeWWASd+59JWtFjVy0nwVNVtbek7NfuIGGAPaijO5Wnshr2uChB Pk8ScGjQ3z4VqNXP6CWhCXTqIk7EQl7yX2GKd6FgEFrzae+5Jf63Xm8g6abbE3ytCrMT/jYy5OOj2XSg 6jlxSFnKcONAcfMTWkTXeG/OgeGeG5kZdtqryRtOlGmOeuQe1dd3I+Zz3JyT your_email@example.c om</pre></td></tr></table><p><span style="color: rgb(51,51,51);">Go to <a href="http://git.embedian.com">Embedian Git Server</a>. At <span style="color: rgb(0,51,102);">Profile Setting --> SSH Keys --> Add SSH Key </span></span></p><p><span style="color: rgb(51,51,51);"><span style="color: rgb(0,51,102);"><span style="color: rgb(51,51,51);">Paste your public key and press "<span style="color: rgb(0,51,102);">Add Key</span>" and your are done.</span></span></span></p><h1><span style="color: rgb(0,51,102);"><span style="font-size: 24.0px;line-height: 1.25;">Bootloader: U-Boot</span> </span></h1><hr /><p><span style="color: rgb(51,51,51);"><span style="color: rgb(0,51,102);"><span style="color: rgb(51,51,51);">Clone the U-Boot source code from <a href="http://git.embedian.com/developer/smarc-t335x-uboot.git">Embedian Git Server</a>.</span></span></span></p><p><span style="color: rgb(51,51,51);"><span style="color: rgb(0,51,102);"><span style="color: rgb(51,51,51);">Download:<br /></span></span></span></p><p><span style="color: rgb(0,51,102);"><u><strong>For u-boot v2017.01 (Processor-SDK-04.01.00.06):</strong></u> </span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git</pre><pre>$ cd smarc-t335x-uboot</pre><pre>$ git checkout v2017.01-smarct3x</pre></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>If Boot up from eMMC, change #define<em> CONFIG_SYS_MMC_ENV_DEV</em> from 0 to <strong>1</strong> in include/configs/smarct335x_evm.h file and compile again.</p></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br />For u-boot v2016.05 (Processor-SDK-03.00.00.04):</strong></u> </span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git</pre><pre>$ cd smarc-t335x-uboot</pre><pre>$ git checkout v2016.05-smarct3x</pre></td></tr></table><p><u style="color: rgb(0,51,102);"><strong><br />For u-boot v2015.07 (Processor-SDK-02.00.00.00):</strong></u><span style="color: rgb(0,51,102);"> </span> </p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git<br />$ cd smarc-t335x-uboot<br />$ git checkout v2015.07-smarct33</pre></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>If Boot up from eMMC, change mmcdev=0 to mmcdev=1 in include/configs/smarct335x_evm.h file and compile again.</pre></td></tr></table><p>Configure and Build:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ make ARCH=arm CROSS_COMPILE=${CC} distclean</pre><pre>$ make ARCH=arm CROSS_COMPILE=${CC} smarct335x_evm_uart3_defconfig</pre><pre>$ make ARCH=arm CROSS_COMPILE=${CC}</pre></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br />For u-boot v2014.07 (Processor-SDK-01.00.00.03):</strong></u> </span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git<br />$ cd smarc-t335x-uboot<br />$ git checkout v2014.07-smarct33</pre></td></tr></table><p><span style="color: rgb(0,51,0);"><u style="color: rgb(51,51,153);"><strong><br /><span style="color: rgb(0,51,102);">For u-boot v2014.04 (AMSDK6 and AMSDK7):</span></strong></u><span style="color: rgb(0,51,102);"> </span></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git<br />$ cd smarc-t335x-uboot<br />$ git checkout v2014.04-smarct33</pre></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>For SBC-SMART-MEN</pre><pre>$ git checkout v2014.04-smartmen</pre></td></tr></table><p>Configure and Build:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ make ARCH=arm CROSS_COMPILE=${CC} distclean<br />$ make ARCH=arm CROSS_COMPILE=${CC} smarct335x_evm_uart3_config<br />$ make ARCH=arm CROSS_COMPILE=${CC}</pre></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>The uart<strong>x</strong> in u-boot config (defconfig) file is to specify the debug console outputs.</p></td></tr></table><h1><span style="color: rgb(0,51,102);">Linux Kernel</span></h1><hr /><p>Download:</p><p><span style="color: rgb(0,51,102);"><u><strong>For 4.9.41 (Processor-SDK-04.01.00.06, Stable, LTS):</strong></u> </span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git</pre><pre>$ cd smarc-ti-linux-kernel</pre><pre>$ git checkout smarct3x-processor-sdk-04.01.00.06</pre></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br />For 4.4.12 (Processor-SDK-03.00.00.04, Stable, LTS):</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git<br />$ cd smarc-ti-linux-kernel<br />$ git checkout smarct3x-processor-sdk-linux-03.00.00.04</pre></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br /></strong></u></span></p><p><span style="color: rgb(0,51,102);"><u><strong>For 4.1.y (Processor-SDK-02.00.01.07, Stable, LTS):</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git</pre><pre>$ cd smarc-ti-linux-kernel</pre><pre>$ git checkout smarct3x-processor-sdk-linux-02.00.01</pre></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br /></strong></u></span></p><p><span style="color: rgb(0,51,102);"><u><strong>For 3.14.y (Processor-SDK-01.00.00.03, Stable, LTS):</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git</pre><pre>$ cd smarc-ti-linux-kernel</pre><pre>$ git checkout smarc-ti-linux-3.14.y</pre></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br /></strong></u></span></p><p><span style="color: rgb(0,51,102);"><u><strong>For 3.12.y (AMSDK7, Stable, LTS):</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git</pre><pre>$ cd smarc-ti-linux-kernel</pre><pre>$ git checkout smarc-ti-linux-3.12.y</pre></td></tr></table><p><br />Configure and Build (v3.12 and later):</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ make ARCH=arm CROSS_COMPILE=${CC} distclean</span></pre><pre><span style="color: rgb(0,51,102);">$ make ARCH=arm CROSS_COMPILE=${CC} smarc_t335x_defconfig</span></pre><pre><span style="color: rgb(0,51,102);">$ make ARCH=arm CROSS_COMPILE=${CC} zImage modules am335x-smarct335x.dtb</span></pre></td></tr></table><p><span style="color: rgb(0,51,102);"><u><strong><br /></strong></u></span></p><p><span style="color: rgb(0,51,102);"><u><strong>For 3.2 (AMSDK6, Stable, LTS release):</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ git clone <a href="mailto:git@git.embedian"><span style="color: rgb(0,51,102);">git@git.embedian</span></a>.com:developer/linux-smarc-t335x-v3.2.git</span></pre><pre><span style="color: rgb(0,51,102);">$ cd <a href="http://comdeveloper/"><span style="color: rgb(0,51,102);">linux-smarc-t335x-v3.2</span></a></span></pre><pre><span style="color: rgb(0,51,102);">$ git checkout v3.2_SMARCT335xPSP_04.06.00.11</span></pre></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>For board SBC-SMART-MEN:</p><pre>$ git checkout v3.2_SBC_SMARTMEN</pre></td></tr></table><p><br />Configure and Build:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ make ARCH=arm CROSS_COMPILE=${CC} distclean</span></pre><pre><span style="color: rgb(0,51,102);">$ make ARCH=arm CROSS_COMPILE=${CC} smarc_t335x_defconfig</span></pre><pre><span style="color: rgb(0,51,102);">$ make ARCH=arm CROSS_COMPILE=${CC} uImage modules</span></pre></td></tr></table><p><strong style="line-height: 1.4285715;color: rgb(0,51,102);"><br /></strong></p><p><strong style="line-height: 1.4285715;color: rgb(0,51,102);">Note:</strong></p><ul><li><span style="color: rgb(0,0,0);">The kernel sources packaged in this release do not have the required PM firmware binary already copied in the </span>firmware/<span style="color: rgb(0,0,0);"> folder of the kernel sources. Due to this building the kernel using the default kernel configuration will fail with this error:</span></li></ul><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>MK_FW firmware/am335x-pm-firmware.bin.gen.S make[2]: *** No rule to make target `firmware/am335x-pm-firmware.bin', needed by `firmware/am335x-pm-firmware.bin.gen.o'. Stop. make[1]: *** [firmware] Error 2 make: *** [uImage] Error 2</pre></td></tr></table><p><span style="color: rgb(0,0,0);"><span style="color: rgb(0,0,0);">To resolve this for<span style="color: rgb(0,51,102);"> kernel 3.2</span>, after you clone the kernel sources, copy the <a class="confluence-link unresolved" data-filename="am335x-pm-firmware.bin" data-linked-resource-default-alias="am335x-pm-firmware.bin" href="#">firmware binary</a> into the firmware/ folder of kernel sources</span></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ cd linux-smarc-t335x-v3.2/firmware</span></pre><pre><span style="color: rgb(0,51,102);">$ wget http://developer.embedian.com/download/attachments/2883656/am335x-pm-firmware.bin</span></pre></td></tr></table><p><span style="color: rgb(0,0,0);">To resolve this for<span style="color: rgb(0,51,102);"> kernel 3.14, kernel 4.1, kernel 4.4 and kernel 4.9</span>, after you clone the kernel sources, copy the <a class="confluence-link unresolved" data-filename="am335x-pm-firmware.elf" data-linked-resource-default-alias="am335x-pm-firmware.elf" href="#">firmware elf binary</a> into the firmware/ folder of kernel sources</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ cd smarc-ti-linux-kernel/firmware</span></pre><pre><span style="color: rgb(0,51,102);">$ wget <span class="nolink">http://developer.embedian.com/download/attachments/2883656/am335x-pm-firmware.elf</span></span></pre><pre><span style="color: rgb(0,51,102);">$ wget <span style="color: rgb(0,51,102);">http://developer.embedian.com/download/attachments/2883656/am335x-evm-scale-data.bin</span> </span></pre></td></tr></table><p> </p><ul><li>If you see the error message like this:</li></ul><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre>"mkimage" command not found - U-Boot images will not be built</pre></td></tr></table><p>You can simply install the mkimage by:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo apt-get install uboot-mkimage</span></code></p></td></tr></table><p>and make the kernel again.</p><h1><span style="color: rgb(0,51,102);">Root File System</span></h1><hr /><p><strong><u><span style="color: rgb(0,51,102);">Arago:</span></u></strong></p><table class="confluenceTable"><tbody><tr><th class="confluenceTh">User</th><th class="confluenceTh">Password</th></tr><tr><td class="confluenceTd">root</td><td class="confluenceTd">N/A</td></tr></tbody></table><p>Processor-SDK-04.01.00.06 Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/arago/processor_sdk_04.01.00.06/smarct335x-rootfs-image-smarct335x.tar.xz</span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum smarct335x-rootfs-image-smarct335x.tar.xz</span></code><br />e698ddf06918e5eb864d27d717b21f7c smarct335x-rootfs-image-smarct335x.tar.xz</p></td></tr></table><p> </p><p>Processor-SDK-03.00.00.04 Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/arago/processor_sdk_03.00.00.04/smarct335x-rootfs-image-smarct335x.tar.gz</span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum smarct335x-rootfs-image-smarct335x.tar.gz</span></code><br />788011e063b79ee8a18c1508f39aa9f1 smarct335x-rootfs-image-smarct335x.tar.gz</p></td></tr></table><p> </p><p>Processor-SDK-02.00.01.07 Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/arago/processor_sdk_02.00.01.07/smarct335x-rootfs-image-smarct335x.tar.gz</span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum smarct335x-rootfs-image-smarct335x.tar.gz</span></code><br />ea0c7490047314d125c20231ad9eaa78 smarct335x-rootfs-image-smarct335x.tar.gz</p></td></tr></table><p><br />SDK7 Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/arago/sdk7/smarct335x-rootfs-image-smarct335x.tar.gz</span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum smarct335x-rootfs-image-smarct335x.tar.gz</span></code><br />ee272266a6bbeb718c129f51f71c52f5 smarct335x-rootfs-image-smarct335x.tar.gz</p></td></tr></table><p><u><span style="color: rgb(0,51,102);"><strong><br />Ubuntu 16.04:</strong></span></u></p><table class="confluenceTable"><tbody><tr><th class="confluenceTh">User</th><th class="confluenceTh">Password</th></tr><tr><td class="confluenceTd">root</td><td class="confluenceTd">root</td></tr><tr><td class="confluenceTd">ubuntu</td><td class="confluenceTd">temppwd</td></tr></tbody></table><p>Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/ubuntu/xenial/smarct3x-ubuntu-16.04.tar.gz<a href="ftp://ftp.embedian.com/public/dev/minfs/raring/ubuntu-13.04-smarct335x-v12+-minimal-armhf-2013-08-25.tar.gz" /></span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum smarct3x-ubuntu-16.04.tar.gz</span></code></p><pre>957625f56f786a22d44b60480155cfd9 smarct3x-ubuntu-16.04.tar.gz</pre></td></tr></table><p> </p><p><u><span style="color: rgb(0,51,102);"><strong>Ubuntu 14.04:</strong></span></u></p><table class="confluenceTable"><tbody><tr><th class="confluenceTh">User</th><th class="confluenceTh">Password</th></tr><tr><td class="confluenceTd">root</td><td class="confluenceTd">root</td></tr><tr><td class="confluenceTd">ubuntu</td><td class="confluenceTd">temppwd</td></tr></tbody></table><p>Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/ubuntu/trusty/smarct3x-ubuntu-14.04.tar.gz<a href="ftp://ftp.embedian.com/public/dev/minfs/raring/ubuntu-13.04-smarct335x-v12+-minimal-armhf-2013-08-25.tar.gz" /></span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum smarct3x-ubuntu-14.04.tar.gz</span></code></p><pre>05db5b85224e84e9898a1c5925703b8b smarct3x-ubuntu-14.04.tar.gz</pre></td></tr></table><p><u><span style="color: rgb(0,51,102);"><strong><br />Debian 9.8:</strong></span></u></p><table class="confluenceTable"><tbody><tr><th class="confluenceTh">User</th><th class="confluenceTh">Password</th></tr><tr><td class="confluenceTd">root</td><td class="confluenceTd">root</td></tr><tr><td class="confluenceTd">debian</td><td class="confluenceTd">temppwd</td></tr></tbody></table><p>Download:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><pre><span style="color: rgb(0,51,102);">$ wget -c ftp://ftp.embedian.com/public/dev/minfs/debian/stretch/smarct3x-debian-9.8-armhf-2019-02-16.tar.gz<a href="ftp://ftp.embedian.com/public/dev/minfs/raring/ubuntu-13.04-smarct335x-v12+-minimal-armhf-2013-08-25.tar.gz" /></span></pre></td></tr></table><p>Verify:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ md5sum </span></code><span style="color: rgb(0,51,102);">smarct3x-debian-9.8-armhf-2019-02-16.tar.gz</span></p><p><span style="color: rgb(0,51,102);">8969f249307d9b2c2ef5c76f7ca1c6b8 </span><span style="color: rgb(0,51,102);">smarct3x-debian-9.8-armhf-2019-02-16.tar.gz</span><span style="color: rgb(0,51,102);"> </span></p></td></tr></table><h1><span style="color: rgb(0,51,102);font-size: 24.0px;">Setup SD Card</span></h1><hr /><p><span style="color: rgb(51,51,51);">For these instruction, we are assuming: DISK=/dev/mmcblk0, "lsblk" is very useful for determining the device id.</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ export DISK=/dev/mmcblk0</span></code></p></td></tr></table><p><span style="color: rgb(51,51,51);">Erase SD card:</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><span style="color: rgb(0,51,102);">$ <code class="java plain">sudo dd </code><code class="java keyword">if</code><code class="java plain">=/dev/zero of=${DISK} bs=1M count=</code><code class="java value">16</code></span></p></td></tr></table><p><span style="color: rgb(51,51,51);">Create Partition Layout:</span></p><p><strong><span style="color: rgb(51,51,51);">With util-linux v2.26, sfdisk was rewritten and is now based on libfdisk</span></strong><span style="color: rgb(51,51,51);">.</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=sfdisk" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1zZmRpc2t9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo sfdisk --version</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);font-family: monospace;">sfdisk from util-linux 2.27.1</span></div></td></tr></table><p>Create Partitions:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="title=sfdisk >\=2.26.x" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86dGl0bGU9c2ZkaXNrID49Mi4yNi54fQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo sfdisk ${DISK} <<-__EOF__</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java value">1M</code><code class="java plain">,</code><code class="java value">48M</code><code class="java plain">,</code><code class="java value">0xE</code><code class="java plain">,*</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">,,,-</code></span></div><div class="line number4 index3 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">__EOF__</code></span></div></td></tr></table><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="title=sfdisk <\=2.25" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86dGl0bGU9c2ZkaXNrIDw9Mi4yNX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo sfdisk --in-order --Linux --unit M ${DISK} <<-__EOF__</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java value">1</code><code class="java plain">,</code><code class="java value">48</code><code class="java plain">,</code><code class="java value">0xE</code><code class="java plain">,*</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">,,,-</code></span></div><div class="line number4 index3 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">__EOF__</code></span></div></td></tr></table><p>Format Partitions:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(153,51,0);"><code class="java keyword">for</code><code class="java plain">: DISK=/dev/mmcblk0</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkfs.vfat -F </code><code class="java value">16</code> <code class="java plain">${DISK}p1 -n boot</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkfs.ext4 ${DISK}p2 -L rootfs</code></span></div><div class="line number4 index3 alt1"> </div><div class="line number5 index4 alt2"><span style="color: rgb(128,0,0);"><code class="java keyword">for</code><code class="java plain">: DISK=/dev/sdX</code></span></div><div class="line number6 index5 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkfs.vfat -F </code><code class="java value">16</code> <code class="java plain">${DISK}</code><code class="java value">1</code> <code class="java plain">-n boot</code></span></div><div class="line number7 index6 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkfs.ext4 ${DISK}</code><code class="java value">2</code> <code class="java plain">-L rootfs</code></span></div></td></tr></table><p><span style="color: rgb(51,51,51);">Mount Partitions:</span></p><p><span style="color: rgb(51,51,51);"><strong>On some systems, these partitions may be auto-mounted...</strong></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkdir -p /media/boot/</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkdir -p /media/rootfs/</code></span></div><div class="line number3 index2 alt2"> </div><div class="line number4 index3 alt1"><span style="color: rgb(128,0,0);"><code class="java keyword">for</code><code class="java plain">: DISK=/dev/mmcblk0</code></span></div><div class="line number5 index4 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}p1 /media/boot/</code></span></div><div class="line number6 index5 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}p2 /media/rootfs/</code></span></div><div class="line number7 index6 alt2"><code class="java plain"> </code></div><div class="line number8 index7 alt1"><span style="color: rgb(128,0,0);"><code class="java keyword">for</code><code class="java plain">: DISK=/dev/sdX</code></span></div><div class="line number9 index8 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}</code><code class="java value">1</code> <code class="java plain">/media/boot/</code></span></div><div class="line number10 index9 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}</code><code class="java value">2</code> <code class="java plain">/media/rootfs/</code></span></div></td></tr></table><p><strong style="color: rgb(0,51,102);font-size: 16.0px;line-height: 1.5625;"><br />Install Bootloader</strong></p><p>Copy MLO/u-boot.img to the boot partition</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=~/smarc-t335x-uboot" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1-L3NtYXJjLXQzMzV4LXVib290fQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><hr /><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo cp -v MLO /media/boot/</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo cp -v u-boot.img /media/boot/</code> </span></div></td></tr></table><h3><span style="color: rgb(0,51,102);">uEnv.txt based bootscript</span></h3><p>Create "uEnv.txt" boot script: (vim uEnv.txt)</p><p><span style="color: rgb(0,51,102);"><u><strong>For v3.2:</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=~/uEnv.txt" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1-L3VFbnYudHh0fQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p>optargs="consoleblank=0 mem=512M"<br />bootfile=zImage<br />loadaddr=0x80200000<br />#fdtaddr=0x80F80000<br />#fdtfile=am335x-smarct335x.dtb<br />console=ttyO3,115200n8<br />mmcroot=/dev/mmcblk0p2 rw<br />mmcrootfstype=ext4 rootwait fixrtc</p><p>#To boot old v3.2.x based kernel enable: (SMARC T335X and BeagleBone)<br />uenvcmd=run loadimage; run mmc_classic_boot</p><p>#For u-boot 13.10<br />#uenvcmd=run loadzimage; run mmc_classic_boot</p><p>###Begin Rootfs from NFS<br />#serverip=192.168.1.51<br />#rootpath=/srv/nfs/smarct335x/arago6/<br />#nfsopts=nolock<br />#netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp<br />##netboot=echo Loading kernel from SDCARD and booting from NFS ...; run loaduimage; run netargs; bootz ${loadaddr}<br />##uenvcmd=run netboot<br />###End Rootfs from NFS</p><p><span>###Begin Load kernel from TFTP</span><br /><span>#netmask=255.255.255.0</span><br /><span>#ipaddr=192.168.1.65</span><br /><span>#serverip=192.168.1.51</span><br /><span>#netboot=echo Loading kernel from TFTP and booting from NFS ...; setenv autoload no; tftp ${loadaddr} ${bootfile}; run netargs; bootz ${loadaddr}</span><br /><span>#uenvcmd=run netboot</span><br /><span>###End Load kernel from TFTP</span></p><p> </p></td></tr></table><p> </p><p><span style="color: rgb(0,51,102);"><u><strong>For 3.12.y or after :</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=~/uEnv.txt" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1-L3VFbnYudHh0fQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p>optargs="consoleblank=0 mem=512M"<br />#u-boot eMMC specific overrides; Angstrom Distribution (SMARC T335X) 2014-05-20<br />kernel_file=zImage<br />initrd_file=initrd.img</p><p>loadaddr=0x82000000<br />initrd_addr=0x88080000<br />fdtaddr=0x88000000<br />fdtfile=am335x-smarct335x.dtb </p><p>initrd_high=0xffffffff<br />fdt_high=0xffffffff</p><p>loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${kernel_file}<br />loadinitrd=load mmc ${mmcdev}:${mmcpart} ${initrd_addr} ${initrd_file}; setenv initrd_size ${filesize}<br />loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdtaddr} /dtbs/${fdtfile}<br />#</p><p>##Un-comment to enable systemd in Debian Wheezy<br />#optargs=quiet init=/lib/systemd/systemd</p><p>console=ttyS3,115200n8<br /><span style="color: rgb(0,51,102);">mmcroot=/dev/mmcblk1p2 ro</span><br />mmcrootfstype=ext4 rootwait fixrtc</p><p>mmcargs=setenv bootargs console=${console} root=${mmcroot} rootfstype=${mmcrootfstype} ${optargs}</p><p>#zImage:<br />uenvcmd=run loadimage; run loadfdt; run mmcargs; bootz ${loadaddr} - ${fdtaddr}</p><p>#zImage + uInitrd: where uInitrd has to be generated on the running system.<br />#boot_fdt=run loadimage; run loadinitrd; run loadfdt<br />#uenvcmd=run boot_fdt; run mmcargs; bootz ${loadaddr} ${initrd_addr}:${initrd_size} ${fdtaddr}</p><p>###Begin Rootfs from NFS<br />#serverip=192.168.1.51<br />#rootpath=/srv/nfs/smarct335x/ubuntu1204/<br />#nfsopts=nolock,acdirmin=60<br />#netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp<br />##netboot=echo Loading kernel from SDCARD and booting from NFS ...; run loadimage; run netargs; bootz ${loadaddr} - ${fdtaddr}<br />##uenvcmd=run netboot<br />###End Rootfs from NFS</p><p>###Begin Load kernel from TFTP<br />#netmask=255.255.255.0<br />#ipaddr=192.168.1.65<br />#serverip=192.168.1.51<br />#netboot=echo Loading kernel and device tree from TFTP and booting from NFS ...; setenv autoload no; tftp ${loadaddr} ${kernel_file}; tftp ${fdtaddr} ${fdtfile}; run netargs; bootz ${loadaddr} - ${fdtaddr}<br />#uenvcmd=run netboot<br />###End Load kernel from TFTP</p></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGV9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>For kernel <strong>3.12.y,</strong> the serial port device descriptor changes from<em><span style="color: rgb(0,51,102);"><strong> ttyS</strong></span></em> to<em><strong><span style="color: rgb(0,51,102);"> ttyO</span></strong></em></p><p><span style="color: rgb(0,51,102);">The above uEnv.txt file needs to change accordingly. (ttyS3 --> ttyO3)</span></p><p><span style="color: rgb(0,51,102);">SD card will always be emulated as /dev/mmcblk1 at kernel 3.12 and newer version </span></p></td></tr></table><p> </p><p>Copy uEnv.txt to the boot partition:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=~/" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1-L30&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v ./uEnv.txt /media/boot/</span></code></p></td></tr></table><h3><span style="color: rgb(0,51,102);">Install Kernel zImage</span></h3><p>Copy zImage to the boot partition:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=~/linux-smarc-t335x-v3.x (v3.2) or ~/smarc-ti-linux-kernel (v3.12 or after)" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1-L2xpbnV4LXNtYXJjLXQzMzV4LXYzLnggKHYzLjIpIG9yIH4vc21hcmMtdGktbGludXgta2VybmVsICh2My4xMiBvciBhZnRlcil9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v arch/arm/boot/zImage /media/boot</span></code></p></td></tr></table><p> </p><p><span style="color: rgb(0,51,102);"><u><strong>Only for v3.12.y or after:</strong></u></span></p><h3><span style="color: rgb(0,51,102);">Install Kernel Device Tree Binary</span></h3><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo mkdir -p /media/boot/dtbs</span></code></p><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v arch/arm/boot/dts/am335x-smarct335x.dtb /media/boot/dtbs</span></code></p></td></tr></table><h1><span style="color: rgb(0,51,102);">Install Root File System and </span><span style="color: rgb(0,51,102);">Kernel Modules</span></h1><hr /><h3><span style="color: rgb(153,51,0);">Copy Root File System:</span></h3><p><u style="color: rgb(0,51,102);line-height: 1.42857;"><strong>Arago SDK7:</strong></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=directory where your root file system is" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1kaXJlY3Rvcnkgd2hlcmUgeW91ciByb290IGZpbGUgc3lzdGVtIGlzfQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p><code><span style="color: rgb(0,51,102);">$ sudo tar xvfz smarct335x-rootfs-image-smarct335x-sdk7.tar.gz -C /media/rootfs</span></code></p></td></tr></table><p><span style="color: rgb(0,51,102);"> </span></p><p><span style="color: rgb(0,51,102);"><u><strong>Arago SDK6:</strong></u></span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=directory where your root file system is" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1kaXJlY3Rvcnkgd2hlcmUgeW91ciByb290IGZpbGUgc3lzdGVtIGlzfQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p><code><span style="color: rgb(0,51,102);">$ sudo tar xvfz smarct335x-rootfs-image-smarct335x-sdk6.tar.gz -C /media/rootfs</span></code></p></td></tr></table><p><u><span style="color: rgb(0,51,102);"><strong><br />Ubuntu 14.04:</strong></span></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=directory where your root file system is" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1kaXJlY3Rvcnkgd2hlcmUgeW91ciByb290IGZpbGUgc3lzdGVtIGlzfQ&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p><code><span style="color: rgb(0,51,102);">$ sudo tar xvfz smarc-ubuntu14.04.tar.gz -C /media/rootfs</span></code></p></td></tr></table><h3><span style="color: rgb(153,51,0);">Copy Kernel Modules:</span></h3><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=~/linux-smarc-t335x-v3.2 (v3.2) or ~/smarc-ti-linux-kernel (v3.12 or after)" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT1-L2xpbnV4LXNtYXJjLXQzMzV4LXYzLjIgKHYzLjIpIG9yIH4vc21hcmMtdGktbGludXgta2VybmVsICh2My4xMiBvciBhZnRlcil9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><hr /><p><code><span style="color: rgb(0,51,102);">$ sudo make ARCH=arm INSTALL_MOD_PATH=/media/rootfs modules_install</span></code></p></td></tr></table><p><u style="line-height: 1.4285715;"><strong><br />Networking:</strong></u></p><p>Edit: /etc/network/interfaces</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ </span><span style="color: rgb(0,51,102);">sudo vim /media/rootfs/etc/network/interfaces</span></code></p></td></tr></table><p>Add:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false|title=/media/rootfs/etc/network/interfaces" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZXx0aXRsZT0vbWVkaWEvcm9vdGZzL2V0Yy9uZXR3b3JrL2ludGVyZmFjZXN9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><hr /><code class="java plain">auto lo</code></div><div class="line number2 index1 alt1"><code class="java plain">iface lo inet loopback</code></div><div class="line number3 index2 alt2"> </div><div class="line number4 index3 alt1"><code class="java plain">auto eth0</code></div><div class="line number5 index4 alt2"><code class="java plain">iface eth0 inet dhcp</code></div></td></tr></table><p>Remove SD card:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sync</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo umount /media/boot</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo umount /media/rootfs</code></span></div></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>If your rootfs is ubuntu, before un-mounting it, check</p><p><span style="color: rgb(0,51,102);">/media/rootfs/etc/fstab to see if the mounting point is /dev/mmcblk1p2 and </span></p><p><span style="color: rgb(0,51,102);">/media/rootfs/etc/init/serial.conf to see if your console port device descriptor correct or not.</span></p></td></tr></table><h1><span style="color: rgb(0,51,102);">Setup eMMC</span></h1><hr /><p>Setting up eMMC usually is the last step at development stage after the development work is done at your SD card or NFS environments. eMMC on module will be always emulated as<em><span style="color: rgb(0,51,102);"> /dev/mmcblk0</span></em>. Setting up eMMC now is nothing but changing the device descriptor. </p><p>This section gives a step-by-step procedure to setup eMMC flash. Users can write a shell script your own at production to simplify the steps.</p><p>First, we need to backup the final firmware from your SD card or NFS.</p><h3><span style="color: rgb(0,51,102);">Prepare for eMMC binaries from SD card (or NFS):</span><span style="color: rgb(0,51,102);"> </span></h3><p>Insert SD card into your Linux PC. For these instructions, we are assuming: DISK=/dev/mmcblk0, "lsblk" is very useful for determining the device id.</p><p><span style="line-height: 1.42857;">For these instruction, we are assuming: DISK=/dev/mmcblk0, "lsblk" is very useful for determining the device id.</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ export DISK=/dev/mmcblk0</span></code></p></td></tr></table><p>Mount Partitions:</p><p><strong>On some systems, these partitions may be auto-mounted...</strong></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkdir -p /media/boot/</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkdir -p /media/rootfs/</code></span></div><div class="line number3 index2 alt2"> </div><div class="line number4 index3 alt1"><span style="color: rgb(128,0,0);"><code class="java keyword">for</code><code class="java plain">: DISK=/dev/mmcblk0</code></span></div><div class="line number5 index4 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}p1 /media/boot/</code></span></div><div class="line number6 index5 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}p2 /media/rootfs/</code></span></div><div class="line number7 index6 alt2"><code class="java plain"> </code></div><div class="line number8 index7 alt1"><span style="color: rgb(128,0,0);"><code class="java keyword">for</code><code class="java plain">: DISK=/dev/sdX</code></span></div><div class="line number9 index8 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}</code><code class="java value">1</code> <code class="java plain">/media/boot/</code></span></div><div class="line number10 index9 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}</code><code class="java value">2</code> <code class="java plain">/media/rootfs/</code></span></div></td></tr></table><p><u><span style="color: rgb(0,51,102);"><strong>Copy zImage to rootfs partition:</strong></span></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v /media/boot/zImage /media/rootfs/home/root</span></code></p></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="title=Note" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6dGl0bGU9Tm90ZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><ol><li>If your rootfs is Ubuntu 14.04, copy to <em><span style="color: rgb(0,51,102);">/media/rootfs/home/ubuntu</span></em> instead of /media/rootfs/home/root</li></ol></td></tr></table><p><u><span style="color: rgb(0,51,102);"><strong><br />Copy zImage to rootfs partition:<br /></strong></span></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v <kernel source dorectory>/arch/arm/boot/zImage /media/rootfs/home/root</span></code></p></td></tr></table><p> </p><p><u><span style="color: rgb(0,51,102);"><strong>For kernel v3.12.y or later:</strong></span></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v /media/boot/dtbs/am335x-smarct335x.dtb /media/rootfs/home/root</span></code></p></td></tr></table><p> </p><p><u><span style="color: rgb(0,51,102);"><strong>Copy uEnv.txt to rootfs partition:</strong></span></u></p><p>Copy and paste the following contents to /media/rootfs/home/root ($ sudo vim /media/rootfs/home/root/uEnv.txt)</p><p> <u><strong><span style="color: rgb(0,51,102);">For kernel v3.2:</span></strong></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>optargs="consoleblank=0 mem=512M"<br />bootfile=zImage<br />loadaddr=0x80200000<br />#fdtaddr=0x80F80000<br />#fdtfile=am335x-smarct335x.dtb<br />console=ttyO3,115200n8<br />mmcroot=/dev/mmcblk0p2 rw<br />mmcrootfstype=ext4 rootwait fixrtc</p><p>#To boot old v3.2.x based kernel enable: (SMARC T335X and BeagleBone)<br />uenvcmd=run loadimage; run mmc_classic_boot</p><p>#For u-boot 13.10<br />#uenvcmd=run loadzimage; run mmc_classic_boot</p><p>###Begin Rootfs from NFS<br />#serverip=192.168.1.51<br />#rootpath=/srv/nfs/smarct335x/arago6/<br />#nfsopts=nolock<br />#netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp<br />##netboot=echo Loading kernel from SDCARD and booting from NFS ...; run loaduimage; run netargs; bootz ${loadaddr}<br />##uenvcmd=run netboot<br />###End Rootfs from NFS</p><p>###Begin Load kernel from TFTP<br />#netmask=255.255.255.0<br />#ipaddr=192.168.1.65<br />#serverip=192.168.1.51<br />#netboot=echo Loading kernel from TFTP and booting from NFS ...; setenv autoload no; tftp ${loadaddr} ${bootfile}; run netargs; bootz ${loadaddr}<br />#uenvcmd=run netboot<br />###End Load kernel from TFTP</p></td></tr></table><p> </p><p> <u><strong><span style="color: rgb(0,51,102);">For kernel v3.12.y+:</span></strong></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>optargs="consoleblank=0 mem=512M"<br />#u-boot eMMC specific overrides; Angstrom Distribution (SMARC T335X) 2014-05-20<br />kernel_file=zImage<br />initrd_file=initrd.img</p><p>loadaddr=0x82000000<br />initrd_addr=0x88080000<br />fdtaddr=0x88000000<br />fdtfile=am335x-smarct335x.dtb </p><p>initrd_high=0xffffffff<br />fdt_high=0xffffffff</p><p>loadimage=load mmc ${mmcdev}:${mmcpart} ${loadaddr} ${kernel_file}<br />loadinitrd=load mmc ${mmcdev}:${mmcpart} ${initrd_addr} ${initrd_file}; setenv initrd_size ${filesize}<br />loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdtaddr} /dtbs/${fdtfile}<br />#</p><p>##Un-comment to enable systemd in Debian Wheezy<br />#optargs=quiet init=/lib/systemd/systemd</p><p>console=ttyS3,115200n8<br /><span style="color: rgb(0,51,102);">mmcroot=/dev/mmcblk0p2 ro</span><br />mmcrootfstype=ext4 rootwait fixrtc</p><p>mmcargs=setenv bootargs console=${console} root=${mmcroot} rootfstype=${mmcrootfstype} ${optargs}</p><p>#zImage:<br />uenvcmd=run loadimage; run loadfdt; run mmcargs; bootz ${loadaddr} - ${fdtaddr}</p><p>#zImage + uInitrd: where uInitrd has to be generated on the running system.<br />#boot_fdt=run loadimage; run loadinitrd; run loadfdt<br />#uenvcmd=run boot_fdt; run mmcargs; bootz ${loadaddr} ${initrd_addr}:${initrd_size} ${fdtaddr}</p><p>###Begin Rootfs from NFS<br />#serverip=192.168.1.51<br />#rootpath=/srv/nfs/smarct335x/ubuntu1204/<br />#nfsopts=nolock,acdirmin=60<br />#netargs=setenv bootargs console=${console} ${optargs} root=/dev/nfs nfsroot=${serverip}:${rootpath},${nfsopts} rw ip=dhcp<br />##netboot=echo Loading kernel from SDCARD and booting from NFS ...; run loadimage; run netargs; bootz ${loadaddr} - ${fdtaddr}<br />##uenvcmd=run netboot<br />###End Rootfs from NFS</p><p>###Begin Load kernel from TFTP<br />#netmask=255.255.255.0<br />#ipaddr=192.168.1.65<br />#serverip=192.168.1.51<br />#netboot=echo Loading kernel and device tree from TFTP and booting from NFS ...; setenv autoload no; tftp ${loadaddr} ${kernel_file}; tftp ${fdtaddr} ${fdtfile}; run netargs; bootz ${loadaddr} - ${fdtaddr}<br />#uenvcmd=run netboot<br />###End Load kernel from TFTP</p></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGV9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>For kernel <strong>3.12.y</strong> and after, the serial port device descriptor changes from<em><span style="color: rgb(0,51,102);"><strong> ttyS</strong></span></em> to<em><strong><span style="color: rgb(0,51,102);"> ttyO</span></strong></em></p><p><span style="color: rgb(0,51,102);">The above uEnv.txt file needs to change accordingly. (ttyS3 --> ttyO3)</span></p><p><span style="color: rgb(0,51,102);">The uEnv.txt file only changes mmcroot from /dev/mmcblk1 (SD) to /dev/mmcblk0 (eMMC)</span></p></td></tr></table><p><u><span style="color: rgb(0,51,102);"><strong><br />Copy real rootfs to rootfs partition:</strong></span></u></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ pushd /media/rootfs</span></code></p><p><code><span style="color: rgb(0,51,102);">$ sudo tar cvfz ~/smarct335x-emmc-rootfs.tar.gz .</span></code></p><p><code><span style="color: rgb(0,51,102);">$ sudo mv ~/smarct335x-emmc-rootfs.tar.gz /media/rootfs/home/root</span></code></p><p><code><span style="color: rgb(0,51,102);">$ popd</span></code></p></td></tr></table><p><br />Remove SD card:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sync</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo umount /media/boot</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo umount /media/rootfs</code></span></div></td></tr></table><p> </p><p>Insert this SD card into your SMARC T335X device and boot up the devices from SD card.</p><p><span>Now it will be almost the same as you did when setup your SD card, but the eMMC device descriptor is /dev/mmcblk0 now.</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ export DISK=/dev/mmcblk0</span></code></p></td></tr></table><p><span>Erase eMMC Flash:</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><span style="color: rgb(0,51,102);">$ <code class="java plain">sudo dd </code><code class="java keyword">if</code><code class="java plain">=/dev/zero of=${DISK} bs=1M count=</code><code class="java value">16</code></span></p></td></tr></table><p><span>Create Partition Layout:</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo sfdisk --in-order --Linux --unit M ${DISK} <<-__EOF__</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java value">1</code><code class="java plain">,</code><code class="java value">48</code><code class="java plain">,</code><code class="java value">0xE</code><code class="java plain">,*</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">,,,-</code></span></div><div class="line number4 index3 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">__EOF__</code></span></div></td></tr></table><p><br />In SDK6, Arago rootfs will mount partition2 as /media/mmcblk0p2 automatically after executing the above command. Umount the partition first.</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><span style="color: rgb(0,51,102);">$ <code class="java plain">sudo umount /media/mmcblk0p2</code></span></p></td></tr></table><p><br />Format Partitions:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><code class="java plain" style="color: rgb(0,51,102);line-height: 1.4285715;">$ sudo mkfs.vfat -F </code><code class="java value" style="color: rgb(0,51,102);line-height: 1.4285715;">16</code><span style="color: rgb(0,51,102);"> </span><code class="java plain" style="color: rgb(0,51,102);line-height: 1.4285715;">${DISK}p1 -n boot</code></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkfs.ext4 ${DISK}p2 -L rootfs</code></span></div></td></tr></table><p><span><br />Mount Partitions:</span></p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkdir -p /media/boot/</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mkdir -p /media/rootfs/</code></span></div><div class="line number5 index4 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}p1 /media/boot/</code></span></div><div class="line number6 index5 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo mount ${DISK}p2 /media/rootfs/</code></span></div></td></tr></table><h3><span style="color: rgb(0,51,102);">Install binaries for partition 1</span></h3><p>Copy MLO/u-boot.img/uEnv.txt/zImage to the boot partition</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><hr /><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo cp -v MLO u-boot.img zImage uEnv.txt /media/boot/</code></span></div></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGU6aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>The U-Boot for SD Boot up and eMMC Boot up has one line difference in include/configs/smarct335x_evm.h. The mmcdev is 0 for SD boot up and is 1 for eMMC boot up.</p></td></tr></table><p><u style="color: rgb(0,51,102);line-height: 1.42857;"><strong><br />Only for v3.12.y or after:</strong></u></p><h3><span style="color: rgb(0,51,102);">Install Kernel Device Tree Binary</span></h3><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo mkdir -p /media/boot/dtbs</span></code></p><p><code><span style="color: rgb(0,51,102);">$ sudo cp -v am335x-smarct335x.dtb /media/boot/dtbs</span></code></p></td></tr></table><h1><span style="color: rgb(0,51,102);">Install Root File System</span></h1><hr /><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p><code><span style="color: rgb(0,51,102);">$ sudo tar -zxvf smarct335x-emmc-rootfs.tar.gz -C /media/rootfs</span></code></p></td></tr></table><p><span style="color: rgb(0,51,102);"> </span></p><div><p>Unmount eMMC:</p><table class="wysiwyg-macro" data-macro-name="info" data-macro-parameters="icon=false" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e2luZm86aWNvbj1mYWxzZX0&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><div class="line number1 index0 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sync</code></span></div><div class="line number2 index1 alt1"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo umount /media/boot</code></span></div><div class="line number3 index2 alt2"><span style="color: rgb(0,51,102);"><code class="java plain">$ sudo umount /media/rootfs</code></span></div></td></tr></table><table class="wysiwyg-macro" data-macro-name="note" style="background-image: url(/plugins/servlet/confluence/placeholder/macro-heading?definition=e25vdGV9&locale=en_GB&version=2); background-repeat: no-repeat;" data-macro-body-type="RICH_TEXT"><tr><td class="wysiwyg-macro-body"><p>If your rootfs id Ubuntu, you need to modify /media/rootfs/etc/fstab and change the mount point from /dev/mmcblk1p2 to /dev/mmcblk0p2 before un-mounting it.</p></td></tr></table><p>Switch your Boot Select to eMMC and you will be able to boot up from eMMC now.</p><div class="paragraph"><div class="paragraph"><div class="paragraph"><hr /><p>Last updated 2018-10-04</p></div></div></div></div>
If you are unable to use this CAPTCHA please
contact your administrator
for assistance.
Attachments
Labels
Location
Edit
Preview
Save
Cancel
Next hint