Faça o download do GCC do compilador ARM no seu PC.
wget -c https://releases.linaro.org/components/toolchain/binaries/6.4-2017.11/arm-linux-gnueabihf/gcc-linaro-6.4.1-2017.11-x86_64_arm-linux-gnueabihf.tar.xz
tar xf gcc-linaro-6.4.1-2017.11-x86_64_arm-linux-gnueabihf.tar.xz
export CC=**/path to**/gcc-linaro-6.4.1-2017.11-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
Verifique se você tem o caminho correto. Ele deve ser da raiz, algo como / home / username / caminho para gcc-linaro / bin / arm-linux-gnueabihf -
Teste do Cross Compiler:
${CC}gcc --version
Você deve ver isso no seu terminal se tiver o caminho correto:
arm-linux-gnueabihf-gcc (Linaro GCC 6.4-2017.11) 6.4.1 20171012
Copyright (C) 2017 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.
Faça o download do u-boot
git clone https://github.com/u-boot/u-boot
cd u-boot/
git checkout v2018.01 -b tmp
Obter os patches (precisa de conexão com a internet)
wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2018.01/0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch
wget -c https://rcn-ee.com/repos/git/u-boot-patches/v2018.01/0002-U-Boot-BeagleBone-Cape-Manager.patch
wget -c https://raw.githubusercontent.com/RobertCNelson/Bootloader-Builder/master/patches/v2018.03-rc1/0002-NFM-Production-eeprom-assume-device-is-BeagleBone-Bl.patch
Aplique patches no u-boot
patch -p1 < 0001-am335x_evm-uEnv.txt-bootz-n-fixes.patch
patch -p1 < 0002-U-Boot-BeagleBone-Cape-Manager.patch
patch -p1 < 0002-NFM-Production-eeprom-assume-device-is-BeagleBone-Bl.patch
Configurar e construir
make ARCH=arm CROSS_COMPILE=${CC} distclean
make ARCH=arm CROSS_COMPILE=${CC} am335x_evm_defconfig
Agora, na pasta u-boot, haverá o arquivo .config que você pode editar e alterar o parâmetro bootdelay. Construir
make ARCH=arm CROSS_COMPILE=${CC}
Anexe o cartão SD ao computador e execute "lsblk" para descobrir o ID do cartão SD. No meu caso, o id era "sdb"
Instalar:
export DISK=/dev/sdb
sudo dd if=./MLO of=${DISK} count=1 seek=1 bs=128k
sudo dd if=./u-boot.img of=${DISK} count=2 seek=1 bs=384k