User talk:Xen intruction setup for dra7xx-evm board: Difference between revisions

From Xen
Jump to navigationJump to search
 
(Blanked the page)
Line 1: Line 1:
== Xen instruction setup for dra7xx-evm board ==

= Introduction =
The purpose of this tutorial is to run Xen on dra7xx-evm board.

Some commands are to be executed on the Linux development host, some on the Linux target and some on the u-boot (bootloader) prompt. The following conventions are used to distinguish the commands on a host and on the target:
* '''host $''' <this command is to be executed on the host>
* '''target #''' <this command is to be executed on the target>
* '''u-boot :>''' <this command is to be executed on the u-boot prompt>
= Setup instruction =
== Download patches on ti-glsdk and Xen ==
<pre>
git clone https://github.com/inisider/gl_patches
</pre>
== Download and setup ti-glsdk ==
Download and setup ti-glsdk_dra7xx-evm_7_04_00_03 according to http://processors.wiki.ti.com/index.php/OMAP5_GLSDK_Software_Developers_Guide ( '''do just step 2 from this guide''' )
== Apply glsdk patches ==
* $ cd $GL_SDK
* $ git am <path_to_folder_with_unzip_archive>/glsdk/*.patch
== Build yocto file system ==
Build yocto filesystem system according to http://processors.wiki.ti.com/index.php/OMAP5_GLSDK_Software_Developers_Guide ( '''do step 4 from this guide''' )
== Build Xen ==
=== Install packages ===
install checkpolicy, flex on host system
=== Get Xen ===
<pre>
git clone git://xenbits.xen.org/xen.git
</pre>
=== Change branch ===
<pre>
git checkout stable-4.6
</pre>
=== Apply patches on Xen ===
$ git am <path_to_folder_witn_unziped_archove>/xen/*.patch
=== Creating environment and build Xen/tools ===
==== Creating envrinment and build Xen ====
<pre>
$ export DRA7_SYSROOT=<path_to_glsdk>/yocto-layers/build/arago-tmp-external-linaro-toolchain/sysroots/dra7xx-evm
$ export TOOLCHAIN=<path_to_toolchain_folder_that_you_entered_when_setup_ti_glsdk>
$ export PATH=$TOOLCHAIN/bin:$PATH
$ export SDKTARGETSYSROOT=$DRA7_SYSROOT
$ export PKG_CONFIG_SYSROOT_DIR=$DRA7_SYSROOT
$ export PKG_CONFIG_PATH=$DRA7_SYSROOT/usr/lib/pkgconfig:$DRA7_SYSROOT/usr/share/pkgconfig
$ export CFLAGS=" -isystem$DRA7_SYSROOT/usr/include -fstack-protector -O2 -pipe -g -feliminate-unused-debug-types --sysroot=$DRA7_SYSROOT"
$ make -j3 xen XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- XSM_ENABLE=y HAS_REMOTEPROC=y debug=y CONFIG_EARLY_PRINTK=dra7
</pre>
==== Creating Xen image ====
<pre>
$ mkimage -A arm -C none -T kernel -a 0x90000000 -e 0x90000000 -n "XEN" -d xen/xen xen-uImage
</pre>
==== Creating envinroment and build dist-tools ====
<pre>
$ export LDFLAGS="-L$DRA7_SYSROOT/usr/lib -Wl,-rpath-link,$TOOLCHAIN/arm-linux-gnueabihf/lib --sysroot=$DRA7_SYSROOT"
$ ./configure --build=x86_64-unknown-linux-gnu --host=arm-linux-gnueabihf LIBNL3_CFLAGS=-I$DRA7_SYSROOT/usr/include/libnl3
$ make -j3 dist-tools CROSS_COMPILE=arm-linux-gnueabihf- XEN_TARGET_ARCH=arm32 XSM_ENABLE=y CONFIG_QEMU_XEN=n
</pre>
==== Createing xenpolicy image ====
<pre>
$ mkimage -A arm -C none -T filesystem -n "XP" -a 0xc3000000 -d tools/flask/policy/xenpolicy-4.6.2-pre xenpolicy-uImage
</pre>
=== Copy built images to glsdk ===
$ copy xen-uIamge and xenpolicy-uImage to <path_to_glsdk>/board-support/prebuilt-images/
== Make sd boot ==
'''Insert SD card to your PC’s card reader. SD card will be used for boot. ALL DATA ON THIS CARD WILL BE LOST.'''
<pre>
$ cd {GL_SDK}
$ ./bin/mksdboot.sh --device /dev/sdX --sdk ${GLSDK}, where /dev/sdX is a SD block device node
</pre>
== Setup u-boot environment ==
Insert sd card to board
=== Start minicom ===
* # ll /dev/ttyUSB*
* # sudo minicom -D /dev/ttyUSBx, where x - is number for previous step
=== Entering u-boot console ===
Press and hold C while powering a board to enter U-Boot console
=== Set environment variables ===
<pre>
:> env default -a -f
:> env set bootcmd “run findfdt;fatload mmc 0:1 0xc1000000 xen-uimage;fatload mmc 0:1 0xc2ffffc0 xenpolicy-uimage;ext4load mmc 0:2 0xc0000000 boot/zImage;ext4load mmc 0:2 0xc2f00000 boot/dra7-evm-dom0-lcd7.dtb;bootm 0xc1000000 - 0xc2f00000”
:> saveenv
</pre>

[[Category:Tutorial]]

Revision as of 07:28, 24 June 2016