[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-ia64-devel] Open GFW Howto


  • To: "xen-ia64-devel" <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Zhang, Xing Z" <xing.z.zhang@xxxxxxxxx>
  • Date: Tue, 25 Sep 2007 13:41:11 +0800
  • Delivery-date: Mon, 24 Sep 2007 22:41:43 -0700
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: Acf/Nq255p/Ai2ZDQkSE+69h2//tpQ==
  • Thread-topic: Open GFW Howto

Hi All:
        As you know, open source firmware is available now.
It performs stable in our internal test. To be a pure 
open source project, open firmware is natural for RHEL5.2.
It's really exciting if community could switch to open firmware
in your common test and use. 
        Here is a doc of how to build open firmware. Hope it make
things happy.




                                                BKM: Open Source Guest Firmware 
of XEN/IA64 VTI Guest

1.      How to get the source?
        Do below command( with HG tool ):
                hg clone http://xenbits.xensource.com/ext/efi-vfirmware.hg 

        *notice: Get HG tool
                A.  Get HG tool. You can download it from 
http://www.selenic.com/mercurial/wiki/
                B.  Install HG tool. Follow steps below:

                        tar xf mercurial-0.9.4.tar
                        cd mercurial-0.9.4
                        python setup.py install

2.      Get EDK2 Source
        The firmware developed base on EDK2 which is an open source EFI 
implementation.
        Before building, you must get a specific version of EDK2 source. Follow 
below steps:
            svn co -r 2398 https://edk2.tianocore.org/svn/edk2/trunk/edk2
        
        The 2398 is the requested version needed by firmware.

        *notice: To use SVN download the source, you must register an account 
on 
                         Tianno’s website. The URL is https://www.tianocore.org/

3.      Install building tools:
        a)      Tools pre-requisite(From EDK2 buildnotes):
                The following list of tools must be installed on the 
development workstation
                prior to using the EDK II.

                Compiler Tool Chain
                A special GCC version 4.x or later (http://gcc.gnu.org). See 
below.

                Assembler Tool Chain
                GNU binutils 2.16.1 or later
                (Http://ftp.gnu.org/gnu/binutils)

                Java Development Kit ( Java 5.0 or later)
                Bea Systems* jrockit-25.2.0-jdk1.5.0_03 or later 
(http://www.bea.com)

                Java Tools
                Apache-ANT, version 1.6.5 or later (http://ant.apache.org)

                Ant-contrib, version 1.0b2 or later
                
(http://prdownloads.sourceforge.net/ant-contrib/ant-contrib-1.0b2-bin.zip?download)

                Saxon8, version 8.1.1
                
(http://prdownloads.sourceforge.net/saxon/saxonb8-1-1.zip?download)

                XMLBeans, version 2.1.0 (http://xmlbeans.apache.org)
                *** DO NOT download the latest XMLBeans, version 2.2.0. It is 
not compatible 
                with Saxon8, version 8.1.1 ***

        b)      Install tools:

                *** Below info all from tianno's website. We suggest you 
installing these
                tools without configure environment variable. Because we are 
going to do
                this in a script which you will see it later ***

                Software Installation Order
                After installing the compiler tools and your Subversion client, 
the following required 
                tools should be installed in this order: 
                        Java JDK, Apache-Ant, ant-contrib, xmlbeans, saxon8

                Java Development Kit
                The Java Environment Variable must be set before attempting to 
build.
                e.g export JAVA_HOME=/root/jrockit-R27.2.0-jdk1.5.0_10


                Java Tools
                The Apache-ANT requires the ANT_HOME environment variable to be 
set before attempting to build:
                Unzip apache-ant-1.6.5-bin.zip to a directory. We need to set 
an environment variable ANT_HOME to this location: 

                        export ANT_HOME=<full path to where ant was unzipped>

                Unzip the ant-contrib-1.0b2-bin.zip file. 
                The ant-contrib.jar file should be copied into the 
%ANT_HOME%/lib directory.

                Unzip xmlbeans-2.1.0.zip to a directory. 
                XMLBeans requires the XMLBEANS_HOME environment variable to be 
set before attempting to build:

                        export XMLBEANS_HOME=<full path to where xmlbeans was 
unzipped>

                Unzip the saxonb8-1-1.zip file. 
                The saxon8.jar file should be copied to the %XMLBEANS_HOME%\lib 
directory. 
                *** DO NOT DOWNLOAD A LATER VERSION OF SAXON 8 ***/

                The Ant and XMLBean tools are required to be in the path.

                        export PATH=%PATH%;%ANT_HOME%\bin;%XMLBEANS_HOME%\bin

                Other Tools
                TortoiseSVN version 1.3.3. (http://tortoisesvn.tigris.org/)

4.      Prepare building:
                Congratulations! You have finished install these awesome tools. 
Now let
                us do some prepare works for building.

                a) Create a symbolic link in your efi-vfirmware.hg:
                        
                         ln -s /path/to/my/private/edk2 edk2

                b)  Cutomize edk2-spare/env.sh
                        Correctly define the environment variable and path, for 
instance:

                        *************** env.h **********************

                        export JAVA_HOME=/root/jrockit-R27.2.0-jdk1.5.0_10
                        export ANT_HOME=/root/EDK2_tool_linux/apache-ant-1.7.0
                        export 
XMLBEANS_HOME=/root/EDK2_tool_linux/xmlbeans-2.1.0/xmlbeans-2.1.0
                        
PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:$ANT_HOME/bin:$XMLBEANS_HOME/bin
                        . ./edksetup.sh

                        ********************************************
                
                c)  Run build.sh, it creates the source hierarchy:

                                > sh build.sh

                d)      Start the build:

                                > cd edk2-xen
                                > . ./link.sh
                                > . ./env.sh
                                > build         

5.      Get firmware binary:
                It is at edk2-xen/Build/Xen/DEBUG_UNIXGCC/FV/FV_RECOVERY.bin. 
If you are here, you are 
                lucky and have an useable firmware!

Good good study,day day up ! ^_^
-Wing(zhang xin)

OTC,Intel Corporation

Attachment: OpenGFW_BKM.txt
Description: OpenGFW_BKM.txt

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.