Overview If you just want to build Linux without Yocto.

Instructions Set Up the Environment 1. 2. 3. 4.

Add the tool chain to your PATH. Set CROSS_COMPILE to the prefix of the tools added above. Set SYSROOT to the sysroot directory in the tool chain. Set ARCH to either powerpc or arm.

Linux can be built with, or without, the Preempt-RT patch. One branch, standard/axxia-dev/base, does not have the Preempt-RT patch, while standard/preempt-rt/axxia-dev/base does. 4. Set BRANCH to either standard/lsi/base or standard/preempt-rt/lsi/base.

Check Out the Branch $ git clone https://github.com/lsigithub/lsi_axxia_yocto_public_3.10.git $ cd lsi_axxia_yocto_public_3.10 $ git checkout --track -b $BRANCH origin/$BRANCH

Create a Build Branch Based on a Tag To list the available tags, $ git tag | grep axxia Tags are available for both branches described above. When on the standard/preempt-rt/axxia-dev/base branch, use tag names that contain “preempt-rt”. Set TAG to the tag name. For example, $ TAG=axxia_linux_preempt-rt_8.8.1.57 To create a build branch based on the tag, do the following. $ git checkout $BRANCH origin/$BRANCH $ git branch build_branch $TAG $ git checkout build_branch 1

Configure and Build • • • •

For PowerPC targets, use arch/powerpc/configs/axxia_defconfig. For PowerPC targets with Preempt-RT, arch/powerpc/configs/axxia_rt_defconfig. For ARM targets, use arch/arm/configs/axxia_defconfig. For ARM targets with Preempt-RT, use arch/arm/configs/axxia_rt_defconfig.

Note the name of the config file, without the path. For example, axxia_defconfig. $ make $ make -j

Create a Bootable Image Two things are required to boot Linux. • A Linux Kernel • A Device Tree With U-Boot as the boot loader, the above need to be put into a format that U-Boot understands. The following describes using the FIT format (see doc/uImage.FIT/howto.txt in the U-Boot source tree). This format allows the image to be verified before it is used. It is possible to put more than one object in a FIT image. The following describes creating three images, • Just the Linux kernel. • Just the device tree. • Linux and the device tree. The simulator only supports using separate images for Linux and the device tree. Create a Compressed Binary Version of Linux from vmlinux $ ${CROSS_COMPILE}objcopy -O binary -R .note -R .comment -S vmlinux vmlinux.bin $ gzip -f -9 vmlinux.bin Create a Flattened Device Tree Once Linux has been built, create the flattened device tree as follows. Note that htis is only necessary if ARCH=powerpc, flattened device trees get built as part of the default target in the ARCH=arm case. 2

make To get a list of available device trees, do the following. ls arch/arm/boot/dts/axm*dts ls arch/powerpc/boot/dts/acp*dts It is only possible to build device trees for the same architecture as the kernel. For ARM, the ‘dtb’ files will be in arch/arm/boot/dts. In the PowerPC case they will be in arch/powerpc/boot. Linux Only • • • •

Copy the following device tree to linux.its. Replace DESCRIPTION with a string, “Axxia Linux” for example. Replace ARCH with either arm or powerpc as appropriate. Replace LOAD and ENTRY with 0x408000 for arm or 0x400000 for powerpc. • Replace KERNEL with the full path to the compressed binary Linux kernel created above. • mkimage -f linux.its linux.fit /dts-v1/; / { description = DESCRIPTION; #address-cells = <1>; images { [email protected] { description = "Linux Kernel"; data = /incbin/("KERNEL"); type = "kernel"; arch = "ARCH"; os = "linux"; compression = "gzip"; load = ; entry = ; [email protected] { algo = "crc32"; }; [email protected] { algo = "sha1"; 3

}; }; }; configurations { default = "[email protected]"; [email protected] { description = DESCRIPTION; kernel = "[email protected]"; }; }; }; Device Tree Only • • • •

Copy the following device tree to fdt.its. Replace DESCRIPTION with a string, “Axxia Linux” for example. Replace ARCH with either arm or powerpc as appropriate. Replace DEVICETREE with the full path to the flattened device tree created above. • mkimage -f fdt.its fdt.fit /dts-v1/; / { description = DESCRIPTION; #address-cells = <1>; images { [email protected] { description = "Flattened Device Tree blob"; data = /incbin/("DEVICETREE"); type = "flat_dt"; arch = "ARCH"; compression = "none"; [email protected] { algo = "crc32"; }; [email protected] { algo = "sha1"; }; }; }; configurations { 4

default = "[email protected]"; [email protected] { description = DESCRIPTION; fdt = "[email protected]"; }; }; }; Linux and the Device Tree • • • •

Copy the following device tree to multi.its. Replace DESCRIPTION with a string, “Axxia Linux” for example. Replace ARCH with either arm or powerpc as appropriate. Replace LOAD and ENTRY with 0x408000 for arm or 0x400000 for powerpc. • Replace KERNEL with the full path to the compressed binary Linux kernel created above. • Replace DEVICETREE with the full path to the flattened device tree created above. • mkimage -f multi.its multi.fit /dts-v1/; / { description = DESCRIPTION; #address-cells = <1>; images { [email protected] { description = "Linux Kernel"; data = /incbin/("KERNEL"); type = "kernel"; arch = "ARCH"; os = "linux"; compression = "gzip"; load = ; entry = ; [email protected] { algo = "crc32"; }; [email protected] { algo = "sha1"; }; };

5

[email protected] { description = "Flattened Device Tree blob"; data = /incbin/("DEVICETREE"); type = "flat_dt"; arch = "ARCH"; compression = "none"; [email protected] { algo = "crc32"; }; [email protected] { algo = "sha1"; }; }; }; configurations { default = "[email protected]"; [email protected] { description = DESCRIPTION; kernel = "[email protected]"; fdt = "[email protected]"; }; }; };

6

Overview Instructions - GitHub

With U-Boot as the boot loader, the above need to be put into a format that U-Boot understands. The following describes using the FIT format (see doc/uImage.

135KB Sizes 2 Downloads 350 Views

Recommend Documents

Overview Instructions - GitHub
The build produces a kernel image, a root file system, and kernel header ... git1+973494766d7ca2401e3138f28b6257a5b899cf1d-r0/linux-lsisim-standard-build.

Mendel90 Kit Instructions - GitHub
Jul 27, 2012 - 01/10/13 Updated remaining assembly views for black screws and red ...... Start by printing a paper template from the pdf drawing y_heatshield.pdf. ...... thick then you might want to re-slice the Android STL with the PLA 0.2mm.

Monolase - Instructions - GitHub
STUFF. For any questions, comments, bugs, or feature requests contact me at [email protected] Patch can be downloaded at my webpage:.

Overview Instruction - GitHub
IMAGE_FSTYPES += "ext2". PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-custom". Other optional settings for saving disk space and build time:.

BreedR Overview - GitHub
6 0 56. 72. 0. 55 1. 14 13. 4.775. 9 0 55. 73. 0. 22 1. 8. 13. 19.099 12 0 22. 74. 0 .... Predicted genetic values vs. ...... Plus some more specific metagene functions:.

Instructions for using FALCON - GitHub
Jul 11, 2014 - College of Life and Environmental Sciences, University of Exeter, ... used in FALCON is also available (see FALCON_Manuscript.pdf. ). ... couraged to read the accompanying technical document to learn ... GitHub is an online repository

Overview Local Builds and Modifications - GitHub
restore "u-boot-spl.bin" binary S:0x20000000 set var $pc ... restore "parameters" binary S:0x2003f000 ... It is possible to use the data path instead of the FEMAC.

Makerspace RFID Lock Management Overview - GitHub
python manage.py loaddata rfid_lock_management/fixtures/initial.json. Run the Django development server. $ python manage.py runserver ... microcontroller (Arduino) that connects to the RFID scanner and operates the locking mechanism. Simulating authe