summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Deprez <o-deprez@ti.com>2013-03-01 16:32:03 +0100
committerLeif Lindholm <leif.lindholm@linaro.org>2014-01-24 15:44:19 +0000
commit702f28f851ae97cbea6f888604e59609da83e66b (patch)
tree937e5b2ebc0065649f1fb117951c81f1fae6bcfe
parentc185f476af447cc731a58c1db8d7a6adb8646ce6 (diff)
panda: readme update for march 1st release
history and descriptions updated Signed-off-by: Steven Kinney <steven.kinney@linaro.org>
-rw-r--r--PandaBoardPkg/readme.txt221
1 files changed, 110 insertions, 111 deletions
diff --git a/PandaBoardPkg/readme.txt b/PandaBoardPkg/readme.txt
index 32b163754..fee17d8fb 100644
--- a/PandaBoardPkg/readme.txt
+++ b/PandaBoardPkg/readme.txt
@@ -1,83 +1,59 @@
-
-Overview
-=========
+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 ARM LT team.
-
-History
-========
-
-11/09/2012 PANDA_EDK2_110912
- Rebased to uefi-next commit-id 99af201b87a6048c26f372e3f75a46d291b2f683
- 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
- Rebased to linaro-uefi-2012.04 label
- Boots linux "OMAP Ubuntu Core" kernel
-
-06/25/2012 PANDA_EDK2_062512
- First drop able to boot EBL
+http://git.linaro.org/gitweb?p=arm/uefi/uefi-next.git by Linaro maintainer.
-Environment setup
-==================
+B. Environment setup
+====================
- 1. General setup
- ----------------
-
-bash
-mkdir panda_uefi; cd panda_uefi
-export PANDA_UEFI=`pwd`
-
- 2. Toolchain
+ 1. Toolchain
------------
-For a list of possible toolchains visit:
-*http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPkg/Toolchain
-
-PandaBoardPkg was built using gcc version 4.5.1 (Sourcery G++ Lite 2010.09-51).
-If you want to use the same compiler, use below commands (copy/paste from above webpage):
+PandaBoardPkg was built/tested using gcc version 4.6 on an Ubuntu Precise machine.
-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
-rm !$
-
-$ Add arm gcc compiler to path
-export PATH=$PANDA_UEFI/arm-2010.09/bin:$PATH
+For a list of possible toolchains visit:
+http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPkg/Toolchain
- 3. Install necessary package
+ 2. Install necessary package
----------------------------
-# Install uuid-dev package if not present already
-sudo apt-get install uuid-dev
+Install uuid-dev package if not present already:
-Note: the build was done an Ubuntu 10.04 machine.
+sudo apt-get install uuid-dev
-Building
-=========
+C. Building
+===========
Build information is found on uefi-next summary page:
http://git.linaro.org/gitweb?p=arm/uefi/uefi-next.git;a=summary
-cd PandaBoardPkg
-./build.sh RELEASE
+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:
-Note: you can build the debug version by invoking the build.sh command without parameters.
+ ./build.sh -b DEBUG
-Running EDK2 on Panda
-======================
+D. Running EDK2 on Panda
+========================
- 1. UEFI EBL shell
- -----------------
+ 1. UEFI Shell
+ -------------
-If you just intend to see how UEFI boots up and make a try with EBL, you
-can just do a raw copy of the firmware image to an SD card (e.g. /dev/sdc):
+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
@@ -86,66 +62,53 @@ Open your favorite serial terminal e.g.
Plug serial and power cables.
-After few seconds, you should see following boot menu:
+After few seconds, the following boot menu shall pop up:
- The default boot selection will start in 1 seconds
- ERROR: Did not find Linux kernel.
[1] Linux from SD
- [2] EBL
- [3] Boot Manager
-Start:
-
-[Type 2 for starting EBL.]
-
-More info on EBL:
-*http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=EDK_Boot_Loader_(EBL)_WiKi
+ - 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
--------------------------
-As a matter of testing linux boot, you can clone "OMAP Ubuntu Core" kernel, instructions located here:
-*http://omappedia.org/wiki/OMAP_Ubuntu_Core
-
-1. Copy/pasted the relevant commands for cloning and building omap linux kernel:
-
- bash
- export PATH=<path to your toolchain>:$PATH
- export ARCH=arm
- export CROSS_COMPILE=arm-none-linux-gnueabi-
-
- git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
- cd linux; git checkout -b v3.3-rc1 v3.3-rc1
- make omap2plus_defconfig
- make zImage
-
-2. InPandaBoardPkg.dsc, update the boot device path with the one matching your SD card:
- gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"VenHw(100C2CFA-B586-4198-9B4C-1683D195B1DA)/HD(1,MBR,0x00000000,0x3F,0x2348A)/zImage"
-
-Note: this device path changes any time your swap/change SD card. If ever you need to boot up same build or another SD card, you need to re-build with updated device path.
+Check following page: http://releases.linaro.org/13.01/ubuntu/panda
-3. Re-build PandaBoardPkg
+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
-4. Format the SD card with a FAT32 and an ext3 partiton
+Unzip and dd to an sd card as described on Linaro's website.
-More information on how to format an SD card here:
-*http://www.omappedia.com/wiki/SD_Configuration
+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.
-5. Drop following files in FAT32 partition:
- edk2/Build/PandaBoard/RELEASE_ARMGCC/FV/MLO
- linux/arch/arm/boot/zImage generated at step 1
-
-6. Insert SD card and boot up Panda board.
- You should see the boot menu and kernel starting after 3 seconds.
-
-Boards tested
-==================
+E. Boards tested
+================
PandaBoard Rev EA2 - EBL and linux boot (PANDA_EDK2_080912)
-PandaBoard Rev A3 - EBL and linux boot (PANDA_EDK2_080912)
-PandaBoard ES Rev B1 - EBL (PANDA_EDK2_062512)
+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).
-chtool
-=======
+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
@@ -155,8 +118,42 @@ This tool is tracked in the following tree: git://gitorious.org/omap-romcode/cht
The version of chtool present in PandaBoardPkg is v0.4.
-Resources
-=========
+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
@@ -167,14 +164,16 @@ Beagle Board - TI OMAP3
ArmPlatformPkg - Generic package for ARM platforms
*http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=ArmPlatformPkg
-To do/next steps
-======================
--Enable >512MiB external SDRAM
--Add PMIC management e.g. for SD card detection
+I. To do/next steps
+===================
+
+-Enable Network
-Enable display/gui
--Clean PandaBoardLib for: detection of PandaBoard revision, pad conf, clocks speed up (if necessary)
-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
-