summaryrefslogtreecommitdiff
path: root/PandaBoardPkg/readme.txt
diff options
context:
space:
mode:
Diffstat (limited to 'PandaBoardPkg/readme.txt')
-rw-r--r--PandaBoardPkg/readme.txt179
1 files changed, 179 insertions, 0 deletions
diff --git a/PandaBoardPkg/readme.txt b/PandaBoardPkg/readme.txt
new file mode 100644
index 000000000..fee17d8fb
--- /dev/null
+++ b/PandaBoardPkg/readme.txt
@@ -0,0 +1,179 @@
+A. Overview
+===========
+
+The Panda packages are hosted on http://gitorious.org/omap-romcode/omap-edk2
+This repository contains the latest developments concerning UEFI on PandaBoard.
+Contact: o-deprez@ti.com
+
+Patches from omap-edk2 tree are regularly merged on need basis to
+http://git.linaro.org/gitweb?p=arm/uefi/uefi-next.git by Linaro maintainer.
+
+B. Environment setup
+====================
+
+ 1. Toolchain
+ ------------
+
+PandaBoardPkg was built/tested using gcc version 4.6 on an Ubuntu Precise machine.
+
+For a list of possible toolchains visit:
+http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPkg/Toolchain
+
+ 2. Install necessary package
+ ----------------------------
+
+Install uuid-dev package if not present already:
+
+sudo apt-get install uuid-dev
+
+C. Building
+===========
+
+Build information is found on uefi-next summary page:
+http://git.linaro.org/gitweb?p=arm/uefi/uefi-next.git;a=summary
+
+After cloning the Linaro EDK2 tree and before compiling the PandaBoardPkg,
+you must apply following patch to ArmPlatformPkg:
+
+ git apply PandaBoardPkg/patches/0001-Add-call-to-early-prepi-init-in-ModuleEntryPoint.patch
+
+Compilation is done with following command:
+
+ cd PandaBoardPkg
+ ./build.sh -b RELEASE
+
+Note: the Debug version is compiled by invoking build.sh without parameters or:
+
+ ./build.sh -b DEBUG
+
+D. Running EDK2 on Panda
+========================
+
+ 1. UEFI Shell
+ -------------
+
+If you just intend to see how UEFI boots up and make a try with the shell, you
+can do a raw copy of the firmware image to an SD card (e.g. /dev/sdc):
+
+ dd if=edk2/Build/PandaBoard/RELEASE_ARMGCC/FV/MLO of=/dev/sdc
+
+Open your favorite serial terminal e.g.
+ minicom -b 115200 -D /dev/ttyS0 -8 --color=on -w -o
+
+Plug serial and power cables.
+
+After few seconds, the following boot menu shall pop up:
+
+ [1] Linux from SD
+ - VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(1,MBR,0x00000000,0x3F,0
+ x19FC0)/uImage
+ - Initrd: VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(1,MBR,0x0000000
+ 0,0x3F,0x19FC0)/uInitrd
+ - Arguments: console=ttyO2,115200n8 root=/dev/mmcblk0p2 earlyprintk root
+ wait ro fixrtc nocompcache vram=48M omapfb.vram=0:24M
+ - LoaderType: Linux kernel with global FDT
+ -----------------------
+ Global FDT Config
+ - VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(1,MBR,0x00000000,0x3F,0
+ x19FC0)/board.dtb
+ -----------------------
+ [a] Boot Manager
+ [b] Shell
+ Start:
+
+From there, type 'b' for starting the shell.
+
+ 2. Starting a Linux kernel
+ --------------------------
+
+Check following page: http://releases.linaro.org/13.01/ubuntu/panda
+
+The easiest way is to get a full boot+filesystem image:
+wget http://releases.linaro.org/13.01/ubuntu/boards/panda/panda-quantal_developer_20130128-58.img.gz
+
+Unzip and dd to an sd card as described on Linaro's website.
+
+Note: on OMAP, usage of earlyprintk statement on kernel command line looks incompatible with device tree.
+Indeed early print routines use legacy machine type id to identify which uart module to use.
+In case of device tree based boot the machine type passed to kernel entry by Bds is 0xFFFFFFFF,
+which is unknown to earlyprintk routines and result in a hang.
+
+E. Boards tested
+================
+
+PandaBoard Rev EA2 - EBL and linux boot (PANDA_EDK2_080912)
+PandaBoard Rev A3 - Shell and linux boot (PANDA_EDK2_030113)
+PandaBoard ES Rev B1 - Shell (PANDA_EDK2_030113)
+
+Note: Panda ES did not fully boot up linaro 13.01 image thru UEFI (stuck at L2 cache init).
+
+F. chtool
+=========
+
+The PandaBoardPkg/Tools directory contains a tool called chtool for creating
+a Configuration Header block for use with the ROM Code boot sequence (in this port
+it serves as configuration of OMAP DPLLs, system clocks, and initlization of external SDRAM).
+
+This tool is tracked in the following tree: git://gitorious.org/omap-romcode/chtool.git
+
+The version of chtool present in PandaBoardPkg is v0.4.
+
+G. History
+==========
+
+03/01/2013 PANDA_EDK2_030113
+ Added patch early PrePi init patch to ArmPlatformPkg
+ Board revision
+ Cleaned up Pad conf
+ Cleaned up setup clocks acceleration
+ Enable 1GB support
+ Add usb host support
+ Use null sd card's uuid
+
+01/28/2013 PANDA_EDK2_012813
+ Created an edk2 top dir, moved packages in this dir
+
+11/21/2012 PANDA_EDK2_112112
+ Add TWL6030 PMIC support
+ Update GPMC base address
+ Remove unused drivers (Flash, MMCHSDxe, InterruptDxe, SemihostFs)
+ Change PcdCoreCount to 2
+ Change default boot type to Fdt
+ Update linux machine type to PandaBoard
+
+11/09/2012 PANDA_EDK2_110912
+ Fix build.sh removing tmp.bin temporary file
+ Fix SerialPollGetControl with returning correct Control parm
+ Comment out Semihostfs from PandaBoardPkg.fdf
+
+08/09/2012 PANDA_EDK2_080912
+ Boots linux "OMAP Ubuntu Core" kernel
+
+06/25/2012 PANDA_EDK2_062512
+ First drop able to boot EBL
+
+H. Resources
+============
+
+Panda Board - TI OMAP4
+*http://pandaboard.org
+
+Beagle Board - TI OMAP3
+*http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=BeagleBoardPkg
+
+ArmPlatformPkg - Generic package for ARM platforms
+*http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPlatformPkg
+
+I. To do/next steps
+===================
+
+-Enable Network
+-Enable display/gui
+-Add a CHMMCSD item in ROM's Configuration Header to accelerate image copy from SD to external RAM
+
+-DONE 03/01/2013 Enable USB host capability
+-DONE 03/01/2013 Enable >512MiB external SDRAM
+-DONE 03/01/2013 Clean PandaBoardLib for: detection of PandaBoard revision, pad conf, clocks speed up (if necessary)
+-DONE 11/21/2012 Add PMIC management e.g. for SD card detection
+-DONE 08/09/2012 Boot up linux kernel
+-DONE 08/09/2012 Switch to linaro-uefi-2012.04 tag