summaryrefslogtreecommitdiffstats
path: root/doc/book-enea-nfv-access-guide/doc/getting_started.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/book-enea-nfv-access-guide/doc/getting_started.xml')
-rw-r--r--doc/book-enea-nfv-access-guide/doc/getting_started.xml244
1 files changed, 0 insertions, 244 deletions
diff --git a/doc/book-enea-nfv-access-guide/doc/getting_started.xml b/doc/book-enea-nfv-access-guide/doc/getting_started.xml
deleted file mode 100644
index 4e2b3a3..0000000
--- a/doc/book-enea-nfv-access-guide/doc/getting_started.xml
+++ /dev/null
@@ -1,244 +0,0 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
3"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4<chapter id="plat-release-content">
5 <title>Getting Started with Enea NFV Access</title>
6
7 <para>Using Enea NFV Access requires access to a Linux machine, which is
8 used for preparing a boot setup or for developing applications. System
9 requirements for the development host are detailed in the <xi:include
10 href="../../s_docbuild/olinkdb/pardoc-common.xml"
11 xmlns:xi="http://www.w3.org/2001/XInclude"
12 xpointer="element(book_enea_nfv_access_release_info/1)" /></para>
13
14 <section condition="hidden" id="release-content">
15 <title>NFV Access Release content</title>
16
17 <para>The NFV Access 1.1 Release contains along with other items,
18 documentation, pre-built kernels and images, a bootloader and a
19 SDK.</para>
20
21 <para>The directories structure is detailed below:</para>
22
23 <programlisting>-- documentation/
24 /* NFV Access documentation */
25-- inteld1521/
26 /* artifacts for the host side */
27 -- deb/
28 /* deb packages */
29 -- images/
30 -- enea-image-virtualization-host
31 /* precompiled artifacts for the Host release image */
32 -- various artifacts
33 -- enea-image-virtualization-host-sdk
34 /* precompiled artifacts for the Host SDK image.
35 The SDK image contains userspace tools and kernel
36 configurations necessary for developing, debugging
37 and profiling applications and kernel modules */
38 -- various artifacts
39 -- sdk
40 /* NFV Access SDK for the host */
41 -- enea-glibc-x86_64-enea-image-virtualization-host-sdk /
42 -corei7-64-toolchain-7.0.sh
43 /* self-extracting archive installing
44 cross-compilation toolchain for the host */
45-- qemux86-64
46 /* artifacts for the guest side */
47 -- deb/
48 /* deb packages */
49 -- images/
50 -- enea-image-virtualization-guest
51 /* precompiled artifacts for the Guest image */
52 -- various artifacts
53 -- sdk
54 /* NFV Access SDK for the guest */
55 -- enea-glibc-x86_64-enea-image-virtualization-guest-sdk /
56 -core2-64-toolchain-7.0.sh
57 /* self-extracting archive installing cross-compilation
58 toolchain for the guest (QEMU x86-64) */</programlisting>
59
60 <para>For each combination of image and target, the following set of
61 artifacts is available:</para>
62
63 <programlisting format="linespecific">-- bzImage
64 /* kernel image */
65-- bzImage-&lt;target&gt;.bin
66 /* kernel image, same as above */
67-- config-&lt;target&gt;.config
68 /* kernel configuration file */
69-- core-image-minimal-initramfs-&lt;target&gt;.cpio.gz
70 /* cpio archive of the initramfs */
71-- core-image-minimal-initramfs-&lt;target&gt;.qemuboot.conf
72 /* qemu config file for the initramfs image */
73-- &lt;image-name&gt;-&lt;target&gt;.ext4
74 /* EXT4 image of the rootfs */
75-- &lt;image-name&gt;-&lt;target&gt;.hddimg
76 /* msdos filesystem containing syslinux, kernel, initrd and rootfs image */
77-- &lt;image-name&gt;-&lt;target&gt;.iso
78 /* CD .iso image */
79-- &lt;image-name&gt;-&lt;target&gt;.qemuboot.conf
80 /* qemu config file for the image */
81-- &lt;image-name&gt;-&lt;target&gt;.tar.gz
82 /* tar archive of the image */
83-- &lt;image-name&gt;-&lt;target&gt;.wic
84 /* Wic image */
85-- microcode.cpio
86 /* kernel microcode data */
87-- modules-&lt;target&gt;.tgz
88 /* external kernel modules */
89-- ovmf.*.qcow2
90 /* ovmf firmware for uefi support in qemu */
91-- rmc.db
92 /* Central RMC Database */
93-- systemd-bootx64.efi
94 /* systemd-boot EFI file */
95-- grub-efi-bootx64.efi
96 /* GRUB EFI file */</programlisting>
97 </section>
98
99 <section id="prebuilt-artifacts">
100 <title>How to use the Prebuilt Artifacts</title>
101
102 <section id="sysshell_config">
103 <title>Booting NFV Access to RAM</title>
104
105 <para>Enea NFV Access can be booted on a target using the RAMDISK
106 images. How to set the environment, configure the bootloader (U-Boot),
107 load and boot on the target, is detailed below. Please check the <link
108 linkend="boot_prereq">Prerequisites</link> section before starting the
109 boot process.</para>
110
111 <para><emphasis role="bold">Setting up the environment and booting on
112 the target</emphasis></para>
113
114 <itemizedlist>
115 <listitem>
116 <para>Connect to the target over serial and stop the default boot
117 process in the U-Boot command line interface.</para>
118 </listitem>
119
120 <listitem>
121 <para>Set up the U-Boot network configuration for the ethernet port,
122 which connects the target to the network.</para>
123 </listitem>
124
125 <listitem>
126 <para>If the target is not connected on a specific network, Enea
127 provides DHCP and TFTP servers that can be used to setup a local
128 network. Please see <link linkend="boot_docker">Docker
129 Installer</link> section, on how to install these two servers on a
130 development host.</para>
131
132 <programlisting>&gt; setenv ethact &lt;vnic0/vnic1&gt;
133&gt; setenv gatewayip &lt;GatewayIP&gt;
134&gt; setenv serverip &lt;TFTPserverIP&gt;
135&gt; setenv netmask &lt;netmask&gt;
136&gt; setenv ipaddr &lt;target IP&gt;</programlisting>
137 </listitem>
138
139 <listitem>
140 <para>Boot the Enea NFV Access images:</para>
141
142 <programlisting>&gt; tftpboot $kernel_addr Image
143&gt; setenv rootfs_addr 0x60000000
144&gt; tftpboot $rootfs_addr enea-nfv-access-cn8304.ext4.gz.u-boot
145&gt; booti $kernel_addr $rootfs_addr $fdtcontroladdr
146&gt; setenv bootargs root=/dev/ram0 rw ramdisk_size=1000000 console=ttyAMA0,115200n8 \
147 earlycon=pl011,0x87e028000000 coherent_pool=16M</programlisting>
148 </listitem>
149 </itemizedlist>
150
151 <section id="boot_prereq">
152 <title>Prerequisites</title>
153
154 <para>The following requirements are needed in order to successfully
155 boot Enea NFV Access to RAM:</para>
156
157 <itemizedlist>
158 <listitem>
159 <para>Enea NFV Acccess images - see the <xi:include
160 href="../../s_docbuild/olinkdb/pardoc-common.xml"
161 xmlns:xi="http://www.w3.org/2001/XInclude"
162 xpointer="element(book_enea_nfv_access_release_info/1)" />, under
163 section <emphasis role="bold">Release Content</emphasis>, for
164 details on the images provided.</para>
165 </listitem>
166 </itemizedlist>
167
168 <itemizedlist>
169 <listitem>
170 <para>DHCP server - If the board is not connected to a specific
171 network, Enea provides a Docker image with a DHCP server. Please
172 see the <link linkend="boot_docker">Docker Installer</link>
173 section for further details.</para>
174 </listitem>
175 </itemizedlist>
176
177 <itemizedlist>
178 <listitem>
179 <para>TFTP server - If the board is not connected to a specific
180 network, Enea provides a Docker image with a TFTP server. Please
181 see the <link linkend="boot_docker">Docker Installer</link>
182 section for further details.</para>
183 </listitem>
184 </itemizedlist>
185
186 <itemizedlist>
187 <listitem>
188 <para>The reference board, with U-Boot connected to a development
189 host over serial and ethernet.</para>
190 </listitem>
191 </itemizedlist>
192 </section>
193
194 <section id="boot_docker">
195 <title>Docker Installer</title>
196
197 <para>A suite of tools are provided in order to create a complete boot
198 process setup. System requirements for the development host are
199 detailed in the <xi:include
200 href="../../s_docbuild/olinkdb/pardoc-common.xml"
201 xmlns:xi="http://www.w3.org/2001/XInclude"
202 xpointer="element(book_enea_nfv_access_release_info/1)" /> included
203 with this release.</para>
204
205 <para>All required tools are leveraged by the Docker image, which must
206 be built and run on a development host. DHCP and TFTP servers will be
207 installed and configured in order to facilitate a RAMDISK boot process
208 on the target.</para>
209
210 <para>The example procedure below details how to build and run a
211 provided Docker image. In this case, the host is directly connected to
212 a target on <literal>eth1</literal>. For more details about the Docker
213 installer, please see <filename>README</filename> file from the Docker
214 installer folder.</para>
215
216 <para>Prior to using this example setup, on the target side, U-Boot
217 needs to be configured with these values, before booting Linux. Note
218 that the first eth port (<literal>vnic0</literal>) is connected to a
219 network in this example:</para>
220
221 <programlisting>&gt; setenv ethact vnic0
222&gt; setenv gatewayip 192.168.1.1
223&gt; setenv serverip 192.168.1.1
224&gt; setenv netmask 255.255.255.0
225&gt; setenv ipaddr 192.168.1.150</programlisting>
226
227 <para><emphasis role="bold">How to build and run a provided Docker
228 image</emphasis></para>
229
230 <programlisting>&gt; cd nfv-access-tools/nfv-installer/docker-pxe-ramboot/
231&gt; mkdir -p ./images
232&gt; cp &lt;NFVAccessReleasePath&gt;/Image $(pwd)/images/Image
233&gt; cp &lt;NFVAccessReleasePath&gt;/enea-nfv-access-cn8304.ext4.gz.u-boot \
234 $(pwd)/images/enea-nfv-access-cn8304.ext4.gz.u-boot
235&gt; docker build . -t el_installer
236&gt; docker run -it --net=host --privileged \
237-v $(pwd)/dhcpd.conf:/etc/dhcp/dhcpd.conf \
238-v $(pwd)/images/Image:/var/lib/tftpboot/Image \
239-v $(pwd)/images/eenea-nfv-access-cn8304.ext4.gz.u-boot:/var/lib/tftpboot/ \
240enea-nfv-access-cn8304.ext4.gz.u-boot el_installer eth1</programlisting>
241 </section>
242 </section>
243 </section>
244</chapter> \ No newline at end of file