diff options
author | Olivier Deprez <o-deprez@ti.com> | 2013-03-01 16:32:03 +0100 |
---|---|---|
committer | Leif Lindholm <leif.lindholm@linaro.org> | 2014-01-24 15:44:19 +0000 |
commit | 702f28f851ae97cbea6f888604e59609da83e66b (patch) | |
tree | 937e5b2ebc0065649f1fb117951c81f1fae6bcfe | |
parent | c185f476af447cc731a58c1db8d7a6adb8646ce6 (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.txt | 221 |
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 - |