Difference between revisions of "Building VIBE2 Boot Image"
From Yantrr Wiki
(→ARM Cross Compiler: GCC) |
|||
Line 30: | Line 30: | ||
This is free software; see the source for copying conditions. There is NO | This is free software; see the source for copying conditions. There is NO | ||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | ||
+ | |||
+ | == Bootloader: U-Boot == | ||
+ | ''Download :'' | ||
+ | '''~/''' | ||
+ | |||
+ | git clone https://github.com/u-boot/u-boot | ||
+ | cd u-boot/ | ||
+ | git checkout v2017.03 -b tmp | ||
+ | |||
+ | ''Patches :'' | ||
+ | wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2017.03/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch | ||
+ | wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2017.03/0002-U-Boot-BeagleBone-Cape-Manager.patch | ||
+ | |||
+ | patch -p1 < 0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch | ||
+ | patch -p1 < 0002-U-Boot-BeagleBone-Cape-Manager.patch | ||
+ | |||
+ | ''Configure and Build :'' | ||
+ | '''~/u-boot''' | ||
+ | |||
+ | make ARCH=arm CROSS_COMPILE=${CC} distclean | ||
+ | make ARCH=arm CROSS_COMPILE=${CC} am335x_evm_defconfig | ||
+ | make ARCH=arm CROSS_COMPILE=${CC} |
Revision as of 06:56, 10 May 2017
Note : All steps are executed on the Ubuntu 16.04.2 LTS and as a root user. Most of the steps are similar Robert C Nelson BBB Wiki.
Basic Requirements
- Running a recent release of Debian, Fedora or Ubuntu; without OS Virtualization Software.
- ARM Cross Compiler – Linaro: http://www.linaro.org
- Linaro Toolchain Binaries: http://www.linaro.org/downloads/
- Bootloader
- Das U-Boot – the Universal Boot Loader: http://www.denx.de/wiki/U-Boot
- Source: http://git.denx.de/?p=u-boot.git;a=summary
- Linux Kernel
- Linus's Mainline tree: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git
- ARM based rootfs
- Debian : http://www.debian.org/
- Ubuntu: http://www.ubuntu.com
ARM Cross Compiler: GCC
Download and extract the ARM Cross compiler linaro gcc.
~/
wget -c https://releases.linaro.org/components/toolchain/binaries/5.4-2017.01/arm-linux-gnueabihf/gcc-linaro-5.4.1-2017.01-x86_64_arm-linux-gnueabihf.tar.xz tar xf gcc-linaro-5.4.1-2017.01-x86_64_arm-linux-gnueabihf.tar.xz export CC=`pwd`/gcc-linaro-5.4.1-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
Test:
~/
${CC}gcc --version arm-linux-gnueabihf-gcc (Linaro GCC 5.4-2017.01) 5.4.1 20161213 Copyright (C) 2015 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Bootloader: U-Boot
Download :
~/
git clone https://github.com/u-boot/u-boot cd u-boot/ git checkout v2017.03 -b tmp
Patches :
wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2017.03/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2017.03/0002-U-Boot-BeagleBone-Cape-Manager.patch patch -p1 < 0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch patch -p1 < 0002-U-Boot-BeagleBone-Cape-Manager.patch
Configure and Build :
~/u-boot
make ARCH=arm CROSS_COMPILE=${CC} distclean make ARCH=arm CROSS_COMPILE=${CC} am335x_evm_defconfig make ARCH=arm CROSS_COMPILE=${CC}