...
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: [
For u-boot 2014.04, u-boot 2014.07, Linux 3.2, Linux 3.12 and Linux 3.14], use the following newer Linaro arm compilier that TI used in theirAMSDK 6 and AMSDK7..
Info | ||
---|---|---|
| ||
$ wget http://releases.linaro.org/archive/13.04/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz $ sudo tar -C /opt -xJf gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux.tar.xz $ export CC=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415_linux/bin/arm-linux-gnueabihf- |
For u-boot 2015.07 and Linux 4.1.10 or newer, you need to use the following newer Linaro arm compilier that TI used in their Processor SDK 02.00.01.07.
Info | ||
---|---|---|
| ||
$ sudo tar -C /opt -xJf gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf.tar.xz $ export CC=/opt/gcc-linaro-4.9-2015.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- |
For u-boot v2016.05 and Linux kernel v4.4.12, use Linaro arm compilier that TI used in their Processor SDK 03.00.00.04
Info | ||
---|---|---|
| ||
$ wget https://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 $ sudo tar -C /opt -xJf gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf.tar.xz $ export CC=/opt/gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- |
Test:
If this test fails, verify that you have the 32bit libraries installed on your development system.
...
Download:
For u-boot v2014.04 (AMSDK6 and AMSDK7):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git $ cd smarc-t335x-uboot $ git checkout v2014.04-smarct33 |
Note | ||
---|---|---|
| ||
For SBC-SMART-MEN $ git checkout v2014.04-smartmen |
For u-boot v2014.07 (Processor-SDK-01.00.00.03):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git $ cd smarc-t335x-uboot $ git checkout v2014.07-smarct33 |
Configure and Build:
Info | ||
---|---|---|
| ||
$ make ARCH=arm CROSS_COMPILE=${CC} distclean $ make ARCH=arm CROSS_COMPILE=${CC} smarct335x_evm_uart3_config $ make ARCH=arm CROSS_COMPILE=${CC} |
For u-boot v2015.07 (Processor-SDK-02.00.00.00):
Download
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git $ cd smarc-t335x-uboot $ git checkout v2015.07-smarct33 |
For u-boot v2016.05 (Processor-SDK-03.00.00.04):
Download
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-t335x-uboot.git $ cd smarc-t335x-uboot $ git checkout v2016.05-smarct3x |
Configure and Build:
Info | ||
---|---|---|
| ||
$ make ARCH=arm CROSS_COMPILE=${CC} distclean $ make ARCH=arm CROSS_COMPILE=${CC} smarct335x_evm_uart3_defconfig $ make ARCH=arm CROSS_COMPILE=${CC} |
Note | ||
---|---|---|
| ||
The uartx in u-boot config (defconfig) file is to specify the debug console outputs. |
...
For 3.2 (AMSDK6, Stable, LTS release):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/linux-smarc-t335x-v3.2.git $ cd linux-smarc-t335x-v3.2 $ git checkout v3.2_SMARCT335xPSP_04.06.00.11 |
Note | ||
---|---|---|
| ||
For board SBC-SMART-MEN: $ git checkout v3.2_SBC_SMARTMEN |
Configure and Build:
Info | ||
---|---|---|
| ||
$ make ARCH=arm CROSS_COMPILE=${CC} distclean $ make ARCH=arm CROSS_COMPILE=${CC} smarc_t335x_defconfig $ make ARCH=arm CROSS_COMPILE=${CC} uImage modules |
For 3.12.y (AMSDK7, Stable, LTS):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git $ cd smarc-ti-linux-kernel $ git checkout smarc-ti-linux-3.12.y |
For 3.14.y (Processor-SDK-01.00.00.03, Stable, LTS):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git $ cd smarc-ti-linux-kernel $ git checkout smarc-ti-linux-3.14.y |
For 4.1.y (Processor-SDK-02.00.01.07, Stable, LTS):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git $ cd smarc-ti-linux-kernel $ git checkout smarct3x-processor-sdk-linux-02.00.01 |
For 4.4.12 (Processor-SDK-03.00.00.04, Stable, LTS):
Info | ||
---|---|---|
| ||
$ git clone git@git.embedian.com:developer/smarc-ti-linux-kernel.git $ cd smarc-ti-linux-kernel $ git checkout smarct3x-processor-sdk-linux-03.00.00.04 |
Configure and Build (v3.12 and later):
Info | ||
---|---|---|
| ||
$ make ARCH=arm CROSS_COMPILE=${CC} distclean $ make ARCH=arm CROSS_COMPILE=${CC} smarc_t335x_defconfig $ make ARCH=arm CROSS_COMPILE=${CC} zImage modules am335x-smarct335x.dtb |
Note:
- The kernel sources packaged in this release do not have the required PM firmware binary already copied in the firmware/ folder of the kernel sources. Due to this building the kernel using the default kernel configuration will fail with this error:
...
To resolve this for kernel 3.2, after you clone the kernel sources, copy the firmware binary into the firmware/ folder of kernel sources
Info | ||
---|---|---|
| ||
$ cd linux-smarc-t335x-v3.2/firmware $ wget http://developer.embedian.com/download/attachments/2883656/am335x-pm-firmware.bin |
To resolve this for kernel 3.14, kernel 4.1 and kernel 4.14, after you clone the kernel sources, copy the firmware elf binary into the firmware/ folder of kernel sources
Info | ||
---|---|---|
| ||
$ cd smarc-ti-linux-kernel/firmware $ wget http://developer.embedian.com/download/attachments/2883656/am335x-pm-firmware.elf $ wget http://developer.embedian.com/download/attachments/2883656/am335x-evm-scale-data.bin |
- If you see the error message like this:
...
Arago:
User | Password |
---|---|
root | N/A |
SDK7 Processor-SDK-02.00.01.07 Download:
Info | ||
---|---|---|
| ||
$ wget -c ftp://ftp.embedian.com/public/dev/minfs/arago/smarct335x-rootfs-image-smarct335x- sdk7sdk2.tar.gz |
Verify:
Info | ||
---|---|---|
| ||
$ md5sum smarct335x-rootfs-image-smarct335x-sdk7sdk2.tar.gz |
SDK6 SDK7 Download:
Info | ||
---|---|---|
| ||
$ wget -c ftp://ftp.embedian.com/public/dev/minfs/arago/smarct335x-rootfs-image-smarct335x- sdk6sdk7.tar.gz |
Verify:
Info | ||
---|---|---|
| ||
$ md5sum smarct335x-rootfs-image-smarct335x-sdk6sdk7.tar.gz |
Ubuntu 12.04:
User | Password |
---|---|
root | root |
ubuntu | temppwd |
SDK6 Download:
Info | ||
---|---|---|
| ||
$ wget -c ftp://ftp.embedian.com/public/dev/minfs/precise arago/ubuntu smarct335x-12.04 rootfs-minimal image-armhf-2012-11-29 smarct335x-sdk6.tar.gz |
Verify:
Info | ||
---|---|---|
| ||
$ md5sum ubuntusmarct335x-12.04rootfs-minimalimage-armhf-2012-11-29smarct335x-sdk6.tar.gz fd2327e5d563ae7c001d38da05cf5fe2 smarct335x-rootfs-image-smarct335x-sdk6.tar.gz |
Ubuntu 14.04:
User | Password |
---|---|
root | root |
ubuntu | temppwd |
Download:
Info | ||
---|---|---|
| ||
$ wget -c ftp://ftp.embedian.com/public/dev/minfs/trusty/smarc-ubuntu14.04.tar.gz |
Verify:
Info | ||
---|---|---|
| ||
$ md5sum smarc-ubuntu14.04.tar.gz e883c8fca4ab5c6e396ee54202f20e35 smarc-ubuntu14.04.tar.gz |
...
Install Kernel Device Tree Binary
Info | ||
---|---|---|
| ||
$ sudo mkdir -p /media/boot/dtbs $ sudo cp -v arch/arm/boot/dts/am335x-smarct335x.dtb /media/boot/dtbs |
...
Unmount eMMC:
Info | ||
---|---|---|
| ||
$ sync $ sudo umount /media/boot $ sudo umount /media/rootfs |
Note |
---|
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. |
Switch your Boot Select to eMMC and you will be able to boot up from eMMC now.
Last updated 20152016-1008-2224