summaryrefslogtreecommitdiffstats
path: root/documentation/bsp-guide
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/bsp-guide')
-rw-r--r--documentation/bsp-guide/bsp.xml69
1 files changed, 40 insertions, 29 deletions
diff --git a/documentation/bsp-guide/bsp.xml b/documentation/bsp-guide/bsp.xml
index 94dd5160a7..cf9c91f4b6 100644
--- a/documentation/bsp-guide/bsp.xml
+++ b/documentation/bsp-guide/bsp.xml
@@ -319,46 +319,57 @@ meta-<bsp_name>/recipes-kernel/linux/linux-wrs_git.bbappend
319 </programlisting> 319 </programlisting>
320 320
321 <para> 321 <para>
322 These files make up the definition of a kernel to use with this hardware. 322 This file appends your specific changes to the kernel you are using.
323 In this case, it is a complete self-contained kernel with its own
324 configuration and patches.
325 However, kernels can be shared between many machines as well.
326 Following is an example:
327 <programlisting>
328meta-emenlow/recipes-kernel/linux/linux-bsp_2.6.50.bb
329 </programlisting>
330 This example file is the core kernel recipe that details from where to get the kernel
331 source.
332 All standard source code locations are supported.
333 Consequently, the source could be a release tarball, a git repository, or source included in
334 the directory within the BSP itself.
335 </para>
336 <para>
337 The file then contains information about what patches to apply and how to configure and build them.
338 Because the file can reuse the main Poky kernel build class, the definitions here can
339 remain very simple.
340 </para> 323 </para>
341 <para> 324 <para>
342 <programlisting> 325 For your BSP you typically want to use an existing Poky kernel found in the
343linux-bsp-2.6.50/*.patch 326 Poky repository at <filename class='directory'>meta/recipes-kernel/kernel</filename>.
344 </programlisting> 327 You can append your specific changes to the kernel by using a
328 <filename>.bbappend</filename> file, which is located in the
329 <filename class='directory'>meta-&lt;bsp_name&gt;/recipes-kernel/linux</filename>
330 directory.
345 </para> 331 </para>
346 <para> 332 <para>
347 The above example file contains patches you can apply against the base kernel, from wherever 333 Consider a BSP that uses the <filename>linux-yocto-stable_git.bb</filename> kernel.
348 they may have been obtained. 334 You would use the <filename>linux-yocto-stable_git.bbappend</filename> file to add
335 specific BSP settings to the kernel, thus configuring the kernel for your particular BSP.
349 </para> 336 </para>
350 <para> 337 <para>
338 Consider an example for the existing "crownbay" BSP.
339 The <filename>.bbaappend</filename> file used for the "crownbay" BSP is:
340 <programlisting>
341meta-crownbay/recipes-kernel/linux/linux-wrs_git.bbappend
342 </programlisting>
343 The file contains the following:
351 <programlisting> 344 <programlisting>
352meta-emenlow/recipes-kernel/linux/linux-bsp-2.6.50/defconfig-bsp 345FILESEXTRAPATHS := "${THISDIR}/${PN}"
346COMPATIBLE_MACHINE_crownbay = "cronwbay"
347KMACHINE_crownbay = "crownbay"
353 </programlisting> 348 </programlisting>
349 This <filename>.bbappend</filename> file adds "crownbay" as a compatible machine,
350 and additionally sets a Yocto Kernel-specific variable that identifies the name of the
351 BSP branch to use in the GIT repository to find configuration information.
354 </para> 352 </para>
355 <para> 353 <note><para>
356 Finally, this last example file contains kernel configuration information. 354 For an established BSP the configuration information is incorporated directly into the
355 git tree.
356 For a new BSP, however, the <filename>.bbappend</filename> file needs to
357 include its own set of configuration options in a file called
358 <filename>defconfig</filename> located in a directory that matches the recipe name.
359 <programlisting>
360SRC_URI += "file://defconfig"
361 </programlisting>
362 Once a BSP is committed, the Yocto kernel maintainer moves this configuration information
363 into the git tree so that the <filename>.bbappend</filename> file does not need to locate
364 its own configuration options.
365 Again, the initial configuration options using the SRC_URI are put into a
366 directory named
367 <filename class='directory'>meta-&lt;bsp_name&gt;/recipes/linux/linux-yocto-stable</filename>.
357 </para> 368 </para>
358 <para> 369 <para>
359 Examples of kernel recipes are available in Poky itself, and thus, make these files optional. 370 You can find more information about creating a BSP that is based on an existing similar
360 However, it would be unusual not to have a kernel configuration. 371 BSP by reading the "Yocto Project Kernel Architecture and Use Manual."
361 </para> 372 </para></note>
362 </section> 373 </section>
363 374
364<!-- <section id='bsp-filelayout-packages'> 375<!-- <section id='bsp-filelayout-packages'>