audk/BeagleBoardPkg
Ronald Cron 6332ffb0af ArmPlatformPkg/Bds: Remove any use of the "Fdt" UEFI variable
Remove the option to update the "Fdt" UEFI variable in the ARM BDS as
the "setfdt" EFI Shell command provides this service from now.

Remove the use of this variable in the legacy kernel boot loader and
use the FDT installed in the configuration table instead.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ronald Cron <Ronald.Cron@arm.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>



git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16940 6f19259b-4bc3-4df7-8a09-765794883524
2015-02-26 11:02:39 +00:00
..
Bds ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
Debugger_scripts ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
Include ARM Packages: Replace tabs by spaces for indentation 2014-08-26 10:14:17 +00:00
Library ArmPlatformPkg: Increase more ARM address Pcd entries to 64-bit. 2014-11-11 00:43:03 +00:00
Sec ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
Tools ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
BeagleBoardPkg.dec ARM Packages: Fixed line endings 2013-01-25 11:28:06 +00:00
BeagleBoardPkg.dsc ArmPlatformPkg/Bds: Remove any use of the "Fdt" UEFI variable 2015-02-26 11:02:39 +00:00
BeagleBoardPkg.fdf ARM Packages: Removed trailing spaces 2014-08-19 13:29:52 +00:00
ConfigurationHeader.dat Adding support for BeagleBoard. 2009-12-06 01:57:05 +00:00
Contributions.txt */Contributions.txt: Update example email address 2015-02-03 17:29:14 +00:00
License.txt EDK II Packages: Added License.txt files 2012-04-12 16:40:32 +00:00
b.bat ARM Packages: CRLF fixup 2014-02-12 15:30:34 +00:00
ba.bat ARM Packages: CRLF fixup 2014-02-12 15:30:34 +00:00
build.sh BeagleBoard: Support bash script when 'set -u' 2011-12-29 12:16:57 +00:00
readme.txt BeagleBoard: Update documentation 2011-07-06 18:25:47 +00:00

readme.txt

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

On Ubuntu 10.04, in your $(WORKROOT) directory (eg: ~/dev/)

Build UEFI for the BeagleBoard :
================================
# Requirements
sudo apt-get install uuid-dev

# Get the arm-none-eabi Toolchain:
cd $(WORKROOT)
wget http://www.codesourcery.com/sgpp/lite/arm/portal/package7813/public/arm-none-eabi/arm-2010.09-51-arm-none-eabi-i686-pc-linux-gnu.tar.bz2
tar xjf arm-2010.09-51-arm-none-eabi-i686-pc-linux-gnu.tar.bz2
Add the arm-none-eabi toolchain to your path

# Build UEFI
svn co https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2 edk2 --username guest
cd $(WORKROOT)/edk2
svn co https://edk2-fatdriver2.svn.sourceforge.net/svnroot/edk2-fatdriver2/trunk/FatPkg FatPkg --username guest
patch -p1 < ArmPlatformPkg/Documentation/patches/BaseTools-Pending-Patches.patch
cd BeagleBoardPkg/
./build.sh

# To Build a Release verion of UEFI
./build.sh RELEASE


Test UEFI on qEmu :
===================

Installing Linaro qEmu:
-----------------------
cd $(WORKROOT)
git clone git://git.linaro.org/qemu/qemu-linaro.git
cd $(WORKROOT)/qemu-linaro
./configure --target-list=arm-softmmu,arm-linux-user,armeb-linux-user
make

Installing Linaro image Creator:
--------------------------------
wget http://launchpad.net/linaro-image-tools/trunk/0.4.8/+download/linaro-image-tools-0.4.8.tar.gz
tar xzf linaro-image-tools-0.4.8.tar.gz
cd $(WORKROOT)/linaro-image-tools-0.4.8/
sudo apt-get install parted dosfstools uboot-mkimage python-argparse python-dbus python-debian python-parted qemu-arm-static btrfs-tools command-not-found

Creating u-boot + Linux Linaro image:
-------------------------------------
mkdir $(WORKROOT)/beagle_image && cd $(WORKROOT)/beagle_image
wget http://releases.linaro.org/platform/linaro-m/hwpacks/final/hwpack_linaro-omap3_20101109-1_armel_supported.tar.gz
wget http://releases.linaro.org/platform/linaro-m/headless/release-candidate/linaro-m-headless-tar-20101101-0.tar.gz
sudo $(WORKROOT)/linaro-image-tools-0.4.8/linaro-media-create --image_file beagle_sd.img --dev beagle --binary linaro-m-headless-tar-20101101-0.tar.gz --hwpack hwpack_linaro-omap3_20101109-1_armel_supported.tar.gz
sudo chmod a+rw beagle_sd.img

Test u-boot + Linux Linaro image on qEmu:
-----------------------------------------
$(WORKROOT)/qemu-linaro/arm-softmmu/qemu-system-arm -M beagle -sd $(WORKROOT)/beagle_image/beagle_sd.img -serial stdio -clock unix
# in u-boot:
boot

Start UEFI from NOR Flash :
---------------------------
# Adding zImage to beagle_sd.img
mkdir /tmp/beagle_img1
sudo mount -o loop,offset=$[63*512] $(WORKROOT)/beagle_image/beagle_sd.img /tmp/beagle_img1
cp zImage /tmp/beagle_img1
sudo umount /tmp/beagle_img1

./qemu-system-arm -M beagle -mtdblock /work/tianocore/Build/BeagleBoard/DEBUG_ARMGCC/FV/BeagleBoard_EFI_flashboot.fd -serial stdio -sd /work/linaro-image-tools-0.4.8/beagle_sd.img

Start UEFI from SD card :
-------------------------
# To replace u-boot by uefi in the SD card
1) Build the BeagleBoard UEFI firmware without the OMAP353x header
cd $(WORKROOT)/edk2/BeagleBoardPkg/
./build.sh -D EDK2_SECOND_STAGE_BOOTOLADER=1

2) Replace u-boot by UEFI
sudo mount -o loop,offset=$[63*512] $(WORKROOT)/beagle_image/beagle_sd.img /tmp/beagle_img1
sudo cp ../Build/BeagleBoard/DEBUG_ARMGCC/FV/BEAGLEBOARD_EFI.fd /tmp/beagle_img1/u-boot.bin
sudo umount /tmp/beagle_img1