Linux BSP
Curtiss-Wright
Page 24 of 34
MNL-0661-01 Rev A1
ECO-N/A
Effective: 25 January
2016
E
XECUTING
THE
B
UILD
The tool used to orchestrate the build is bitbake. Bitbake will read through the configuration files for the
configured target machine, and download and build the required packages.
> bitbake core-image-sato
This command will build the full BSP including the rootfs and kernel. Note: this command will take a long
time to complete.
I
NITIAL
B
OOT
Once the BSP is built, it is recommended that it is installed to the internal eMMC on the processor
module. To do so, you must boot from a secondary storage medium, which in this guide will be the
network. The host machine will need to provide a TFTP and NFS server. To boot from the network:
1. On Linux host computer create a directory for NFS root (say /nfsroot) and extract the rootfs image
into it. E.g:
tar -xjpf /path/to/coreimagesatosmarcsamx6i.tar.bz2 -C /nfsroot
2. Then edit file /nfsroot/etc/network/interfaces and add following string at the end of file:
iface eth0 inet manual
3. And add NFS root directory to /etc/exports and start NFS server.
4. Copy kernel from extracted rootfs image(/boot/uImage-smarc-samx6i.bin) into TFTP server root
directory (/var/lib/tfptboot or /tftpboot depending on Linux distribution).
5. Configure and start TFTP server.
6. Copy an appropriate device tree table(e.g. uImage-imx6q-smx6-lcd-pcieswitch.dtb) into TFTP
server root directory (/var/lib/tfptboot or /tftpboot depending on Linux distribution).
7. Configure DHCP server to provide IP configuration for SMARC-sAMX6 board and start it.
8. Configure serial connection(see “5.5 U-Boot Access and Startup” in SMARC-sAMX6i User's
Guide), then power on the board. Interrupt autoboot process by pressing any key on serial
console and check U-boot environment variables with printenv . If needed, modify corresponding
variables with setenv command and boot Linux from TFTP server on host by executing:
setenv bootargs console=ttymxc0,115200 root=/dev/nfs rw ip=dhcp
nfsroot=<host ip>:<path to unpacked rootfs on host>
setenv serverip <host ip>
setenv ipaddr <samx6i ip>
setenv fdtfile <device tree BLOB copied to tftp>
setenv uimage <kernle copied to tftp>
tftp 11000000 ${fdtfile}
tftp 0x10800000 ${uimage}
bootm 0x10800000 11000000
For example:
setenv bootargs console=ttymxc0,115200 root=/dev/nfs rw ip=dhcp