summaryrefslogtreecommitdiffstats
path: root/documentation/bsp-guide
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/bsp-guide')
-rw-r--r--documentation/bsp-guide/bsp.rst76
1 files changed, 38 insertions, 38 deletions
diff --git a/documentation/bsp-guide/bsp.rst b/documentation/bsp-guide/bsp.rst
index 42c8190124..4517604a2a 100644
--- a/documentation/bsp-guide/bsp.rst
+++ b/documentation/bsp-guide/bsp.rst
@@ -73,7 +73,7 @@ section in the Yocto Project Development Tasks Manual.
73 73
74The BSP layer's base directory (``meta-bsp_root_name``) is the root 74The BSP layer's base directory (``meta-bsp_root_name``) is the root
75directory of that Layer. This directory is what you add to the 75directory of that Layer. This directory is what you add to the
76```BBLAYERS`` <&YOCTO_DOCS_REF_URL;#var-BBLAYERS>`__ variable in the 76:term:`BBLAYERS` variable in the
77``conf/bblayers.conf`` file found in your `Build 77``conf/bblayers.conf`` file found in your `Build
78Directory <&YOCTO_DOCS_REF_URL;#build-directory>`__, which is 78Directory <&YOCTO_DOCS_REF_URL;#build-directory>`__, which is
79established after you run the OpenEmbedded build environment setup 79established after you run the OpenEmbedded build environment setup
@@ -466,7 +466,7 @@ This file provides information on where to locate the BSP source files
466used to build the images (if any) that reside in 466used to build the images (if any) that reside in
467``meta-bsp_root_name/binary``. Images in the ``binary`` would be images 467``meta-bsp_root_name/binary``. Images in the ``binary`` would be images
468released with the BSP. The information in the ``README.sources`` file 468released with the BSP. The information in the ``README.sources`` file
469also helps you find the `Metadata <&YOCTO_DOCS_REF_URL;#metadata>`__ 469also helps you find the :term:`Metadata`
470used to generate the images that ship with the BSP. 470used to generate the images that ship with the BSP.
471 471
472.. note:: 472.. note::
@@ -532,7 +532,7 @@ BBFILE_PATTERN_raspberrypi := "^${LAYERDIR}/"
532BBFILE_PRIORITY_raspberrypi = "9" # Additional license directories. 532BBFILE_PRIORITY_raspberrypi = "9" # Additional license directories.
533LICENSE_PATH += "${LAYERDIR}/files/custom-licenses" . . . 533LICENSE_PATH += "${LAYERDIR}/files/custom-licenses" . . .
534 534
535This file simply makes `BitBake <&YOCTO_DOCS_REF_URL;#bitbake-term>`__ 535This file simply makes :term:`BitBake`
536aware of the recipes and configuration directories. The file must exist 536aware of the recipes and configuration directories. The file must exist
537so that the OpenEmbedded build system can recognize the BSP. 537so that the OpenEmbedded build system can recognize the BSP.
538 538
@@ -549,10 +549,10 @@ in the BSP into a format that the build system can understand. Each BSP
549Layer requires at least one machine file. If the BSP supports multiple 549Layer requires at least one machine file. If the BSP supports multiple
550machines, multiple machine configuration files can exist. These 550machines, multiple machine configuration files can exist. These
551filenames correspond to the values to which users have set the 551filenames correspond to the values to which users have set the
552```MACHINE`` <&YOCTO_DOCS_REF_URL;#var-MACHINE>`__ variable. 552:term:`MACHINE` variable.
553 553
554These files define things such as the kernel package to use 554These files define things such as the kernel package to use
555(```PREFERRED_PROVIDER`` <&YOCTO_DOCS_REF_URL;#var-PREFERRED_PROVIDER>`__ 555(:term:`PREFERRED_PROVIDER`
556of 556of
557`virtual/kernel <&YOCTO_DOCS_DEV_URL;#metadata-virtual-providers>`__), 557`virtual/kernel <&YOCTO_DOCS_DEV_URL;#metadata-virtual-providers>`__),
558the hardware drivers to include in different types of images, any 558the hardware drivers to include in different types of images, any
@@ -565,7 +565,7 @@ optimization flags, which are carefully chosen to give best performance
565on a given processor. 565on a given processor.
566 566
567Tuning files are found in the ``meta/conf/machine/include`` directory 567Tuning files are found in the ``meta/conf/machine/include`` directory
568within the `Source Directory <&YOCTO_DOCS_REF_URL;#source-directory>`__. 568within the :term:`Source Directory`.
569For example, many ``tune-*`` files (e.g. ``tune-arm1136jf-s.inc``, 569For example, many ``tune-*`` files (e.g. ``tune-arm1136jf-s.inc``,
570``tune-1586-nlp.inc``, and so forth) reside in the 570``tune-1586-nlp.inc``, and so forth) reside in the
571``poky/meta/conf/machine/include`` directory. 571``poky/meta/conf/machine/include`` directory.
@@ -599,7 +599,7 @@ DISPLAY_ORIENTATION=0 DISPLAY_DPI=133
599 according to the formfactor configuration file that is installed by 599 according to the formfactor configuration file that is installed by
600 the main formfactor recipe 600 the main formfactor recipe
601 ``meta/recipes-bsp/formfactor/formfactor_0.0.bb``, which is found in 601 ``meta/recipes-bsp/formfactor/formfactor_0.0.bb``, which is found in
602 the `Source Directory <&YOCTO_DOCS_REF_URL;#source-directory>`__. 602 the :term:`Source Directory`.
603 603
604.. _bsp-filelayout-recipes-graphics: 604.. _bsp-filelayout-recipes-graphics:
605 605
@@ -639,9 +639,9 @@ located in the BSP Layer for your target device (e.g. the
639Suppose you are using the ``linux-yocto_4.4.bb`` recipe to build the 639Suppose you are using the ``linux-yocto_4.4.bb`` recipe to build the
640kernel. In other words, you have selected the kernel in your 640kernel. In other words, you have selected the kernel in your
641bsp_root_name\ ``.conf`` file by adding 641bsp_root_name\ ``.conf`` file by adding
642```PREFERRED_PROVIDER`` <&YOCTO_DOCS_REF_URL;#var-PREFERRED_PROVIDER>`__ 642:term:`PREFERRED_PROVIDER`
643and 643and
644```PREFERRED_VERSION`` <&YOCTO_DOCS_REF_URL;#var-PREFERRED_VERSION>`__ 644:term:`PREFERRED_VERSION`
645statements as follows: PREFERRED_PROVIDER_virtual/kernel ?= 645statements as follows: PREFERRED_PROVIDER_virtual/kernel ?=
646"linux-yocto" PREFERRED_VERSION_linux-yocto ?= "4.4%" 646"linux-yocto" PREFERRED_VERSION_linux-yocto ?= "4.4%"
647 647
@@ -796,7 +796,7 @@ workflow.
796 796
797 The build process supports several types of images to satisfy 797 The build process supports several types of images to satisfy
798 different needs. See the 798 different needs. See the
799 "`Images <&YOCTO_DOCS_REF_URL;#ref-images>`__" chapter in the Yocto 799 ":ref:`ref-manual/ref-images:Images`" chapter in the Yocto
800 Project Reference Manual for information on supported images. 800 Project Reference Manual for information on supported images.
801 801
802Requirements and Recommendations for Released BSPs 802Requirements and Recommendations for Released BSPs
@@ -1038,7 +1038,7 @@ also supports several other machines:
1038 1038
1039 1039
1040 The 1040 The
1041 ```FILESEXTRAPATHS`` <&YOCTO_DOCS_REF_URL;#var-FILESEXTRAPATHS>`__ 1041 :term:`FILESEXTRAPATHS`
1042 variable in the append files extends the search path the build system 1042 variable in the append files extends the search path the build system
1043 uses to find files during the build. Consequently, for this example 1043 uses to find files during the build. Consequently, for this example
1044 you need to have the ``files`` directory in the same location as your 1044 you need to have the ``files`` directory in the same location as your
@@ -1090,11 +1090,11 @@ satisfy the licensing requirements for an encumbered BSP. The following
1090list describes them in order of preference: 1090list describes them in order of preference:
1091 1091
10921. *Use 10921. *Use
1093 the*\ ```LICENSE_FLAGS`` <&YOCTO_DOCS_REF_URL;#var-LICENSE_FLAGS>`__\ *Variable 1093 the*\ :term:`LICENSE_FLAGS`\ *Variable
1094 to Define the Recipes that Have Commercial or Other Types of 1094 to Define the Recipes that Have Commercial or Other Types of
1095 Specially-Licensed Packages:* For each of those recipes, you can 1095 Specially-Licensed Packages:* For each of those recipes, you can
1096 specify a matching license string in a ``local.conf`` variable named 1096 specify a matching license string in a ``local.conf`` variable named
1097 ```LICENSE_FLAGS_WHITELIST`` <&YOCTO_DOCS_REF_URL;#var-LICENSE_FLAGS_WHITELIST>`__. 1097 :term:`LICENSE_FLAGS_WHITELIST`.
1098 Specifying the matching license string signifies that you agree to 1098 Specifying the matching license string signifies that you agree to
1099 the license. Thus, the build system can build the corresponding 1099 the license. Thus, the build system can build the corresponding
1100 recipe and include the component in the image. See the "`Enabling 1100 recipe and include the component in the image. See the "`Enabling
@@ -1266,12 +1266,12 @@ Project Reference Manual.
1266 "virtual/xserver" is "xserver-xorg", which exists in 1266 "virtual/xserver" is "xserver-xorg", which exists in
1267 ``poky/meta/recipes-graphics/xorg-xserver``. 1267 ``poky/meta/recipes-graphics/xorg-xserver``.
1268 1268
1269- ```XSERVER`` <&YOCTO_DOCS_REF_URL;#var-XSERVER>`__: The packages that 1269- :term:`XSERVER`: The packages that
1270 should be installed to provide an X server and drivers for the 1270 should be installed to provide an X server and drivers for the
1271 machine. In this example, the "xserver-xorg" and 1271 machine. In this example, the "xserver-xorg" and
1272 "xf86-video-modesetting" are installed. 1272 "xf86-video-modesetting" are installed.
1273 1273
1274- ```MACHINE_EXTRA_RRECOMMENDS`` <&YOCTO_DOCS_REF_URL;#var-MACHINE_EXTRA_RRECOMMENDS>`__: 1274- :term:`MACHINE_EXTRA_RRECOMMENDS`:
1275 A list of machine-dependent packages not essential for booting the 1275 A list of machine-dependent packages not essential for booting the
1276 image. Thus, the build does not fail if the packages do not exist. 1276 image. Thus, the build does not fail if the packages do not exist.
1277 However, the packages are required for a fully-featured image. 1277 However, the packages are required for a fully-featured image.
@@ -1283,14 +1283,14 @@ Project Reference Manual.
1283 variables exist that help you configure a particular piece of 1283 variables exist that help you configure a particular piece of
1284 hardware. 1284 hardware.
1285 1285
1286- ```EXTRA_IMAGEDEPENDS`` <&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGEDEPENDS>`__: 1286- :term:`EXTRA_IMAGEDEPENDS`:
1287 Recipes to build that do not provide packages for installing into the 1287 Recipes to build that do not provide packages for installing into the
1288 root filesystem but building the image depends on the recipes. 1288 root filesystem but building the image depends on the recipes.
1289 Sometimes a recipe is required to build the final image but is not 1289 Sometimes a recipe is required to build the final image but is not
1290 needed in the root filesystem. In this case, the U-Boot recipe must 1290 needed in the root filesystem. In this case, the U-Boot recipe must
1291 be built for the image. 1291 be built for the image.
1292 1292
1293- ```DEFAULTTUNE`` <&YOCTO_DOCS_REF_URL;#var-DEFAULTTUNE>`__: Machines 1293- :term:`DEFAULTTUNE`: Machines
1294 use tunings to optimize machine, CPU, and application performance. 1294 use tunings to optimize machine, CPU, and application performance.
1295 These features, which are collectively known as "tuning features", 1295 These features, which are collectively known as "tuning features",
1296 exist in the `OpenEmbedded-Core 1296 exist in the `OpenEmbedded-Core
@@ -1306,31 +1306,31 @@ Project Reference Manual.
1306 conf/machine/include/tune-cortexa8.inc 1306 conf/machine/include/tune-cortexa8.inc
1307 file provides many tuning possibilities. 1307 file provides many tuning possibilities.
1308 1308
1309- ```IMAGE_FSTYPES`` <&YOCTO_DOCS_REF_URL;#var-IMAGE_FSTYPES>`__: The 1309- :term:`IMAGE_FSTYPES`: The
1310 formats the OpenEmbedded build system uses during the build when 1310 formats the OpenEmbedded build system uses during the build when
1311 creating the root filesystem. In this example, four types of images 1311 creating the root filesystem. In this example, four types of images
1312 are supported. 1312 are supported.
1313 1313
1314- ```EXTRA_IMAGECMD`` <&YOCTO_DOCS_REF_URL;#var-EXTRA_IMAGECMD>`__: 1314- :term:`EXTRA_IMAGECMD`:
1315 Specifies additional options for image creation commands. In this 1315 Specifies additional options for image creation commands. In this
1316 example, the "-lnp " option is used when creating the 1316 example, the "-lnp " option is used when creating the
1317 `JFFS2 <https://en.wikipedia.org/wiki/JFFS2>`__ image. 1317 `JFFS2 <https://en.wikipedia.org/wiki/JFFS2>`__ image.
1318 1318
1319- ```WKS_FILE`` <&YOCTO_DOCS_REF_URL;#var-WKS_FILE>`__: The location of 1319- :term:`WKS_FILE`: The location of
1320 the `Wic kickstart <&YOCTO_DOCS_REF_URL;#ref-kickstart>`__ file used 1320 the `Wic kickstart <&YOCTO_DOCS_REF_URL;#ref-kickstart>`__ file used
1321 by the OpenEmbedded build system to create a partitioned image 1321 by the OpenEmbedded build system to create a partitioned image
1322 (image.wic). 1322 (image.wic).
1323 1323
1324- ```IMAGE_INSTALL`` <&YOCTO_DOCS_REF_URL;#var-IMAGE_INSTALL>`__: 1324- :term:`IMAGE_INSTALL`:
1325 Specifies packages to install into an image through the 1325 Specifies packages to install into an image through the
1326 ```image`` <&YOCTO_DOCS_REF_URL;#ref-classes-image>`__ class. Recipes 1326 :ref:`image <ref-classes-image>` class. Recipes
1327 use the ``IMAGE_INSTALL`` variable. 1327 use the ``IMAGE_INSTALL`` variable.
1328 1328
1329- ``do_image_wic[depends]``: A task that is constructed during the 1329- ``do_image_wic[depends]``: A task that is constructed during the
1330 build. In this example, the task depends on specific tools in order 1330 build. In this example, the task depends on specific tools in order
1331 to create the sysroot when buiding a Wic image. 1331 to create the sysroot when buiding a Wic image.
1332 1332
1333- ```SERIAL_CONSOLES`` <&YOCTO_DOCS_REF_URL;#var-SERIAL_CONSOLES>`__: 1333- :term:`SERIAL_CONSOLES`:
1334 Defines a serial console (TTY) to enable using getty. In this case, 1334 Defines a serial console (TTY) to enable using getty. In this case,
1335 the baud rate is "115200" and the device name is "ttyO0". 1335 the baud rate is "115200" and the device name is "ttyO0".
1336 1336
@@ -1344,21 +1344,21 @@ Project Reference Manual.
1344 Defines the version of the recipe used to build the kernel, which is 1344 Defines the version of the recipe used to build the kernel, which is
1345 "5.0" in this case. 1345 "5.0" in this case.
1346 1346
1347- ```KERNEL_IMAGETYPE`` <&YOCTO_DOCS_REF_URL;#var-KERNEL_IMAGETYPE>`__: 1347- :term:`KERNEL_IMAGETYPE`:
1348 The type of kernel to build for the device. In this case, the 1348 The type of kernel to build for the device. In this case, the
1349 OpenEmbedded build system creates a "zImage" image type. 1349 OpenEmbedded build system creates a "zImage" image type.
1350 1350
1351- ```KERNEL_DEVICETREE`` <&YOCTO_DOCS_REF_URL;#var-KERNEL_DEVICETREE>`__: 1351- :term:`KERNEL_DEVICETREE`:
1352 The names of the generated Linux kernel device trees (i.e. the 1352 The names of the generated Linux kernel device trees (i.e. the
1353 ``*.dtb``) files. All the device trees for the various BeagleBone 1353 ``*.dtb``) files. All the device trees for the various BeagleBone
1354 devices are included. 1354 devices are included.
1355 1355
1356- ```KERNEL_EXTRA_ARGS`` <&YOCTO_DOCS_REF_URL;#var-KERNEL_EXTRA_ARGS>`__: 1356- :term:`KERNEL_EXTRA_ARGS`:
1357 Additional ``make`` command-line arguments the OpenEmbedded build 1357 Additional ``make`` command-line arguments the OpenEmbedded build
1358 system passes on when compiling the kernel. In this example, 1358 system passes on when compiling the kernel. In this example,
1359 "LOADADDR=${UBOOT_ENTRYPOINT}" is passed as a command-line argument. 1359 "LOADADDR=${UBOOT_ENTRYPOINT}" is passed as a command-line argument.
1360 1360
1361- ```SPL_BINARY`` <&YOCTO_DOCS_REF_URL;#var-SPL_BINARY>`__: Defines the 1361- :term:`SPL_BINARY`: Defines the
1362 Secondary Program Loader (SPL) binary type. In this case, the SPL 1362 Secondary Program Loader (SPL) binary type. In this case, the SPL
1363 binary is set to "MLO", which stands for Multimedia card LOader. 1363 binary is set to "MLO", which stands for Multimedia card LOader.
1364 1364
@@ -1377,25 +1377,25 @@ Project Reference Manual.
1377 example, a U-Boot image is required to boot the BeagleBone device. 1377 example, a U-Boot image is required to boot the BeagleBone device.
1378 See the following variables for more information: 1378 See the following variables for more information:
1379 1379
1380 - ```UBOOT_SUFFIX`` <&YOCTO_DOCS_REF_URL;#var-UBOOT_SUFFIX>`__: 1380 - :term:`UBOOT_SUFFIX`:
1381 Points to the generated U-Boot extension. 1381 Points to the generated U-Boot extension.
1382 1382
1383 - ```UBOOT_MACHINE`` <&YOCTO_DOCS_REF_URL;#var-UBOOT_MACHINE>`__: 1383 - :term:`UBOOT_MACHINE`:
1384 Specifies the value passed on the make command line when building 1384 Specifies the value passed on the make command line when building
1385 a U-Boot image. 1385 a U-Boot image.
1386 1386
1387 - ```UBOOT_ENTRYPOINT`` <&YOCTO_DOCS_REF_URL;#var-UBOOT_ENTRYPOINT>`__: 1387 - :term:`UBOOT_ENTRYPOINT`:
1388 Specifies the entry point for the U-Boot image. 1388 Specifies the entry point for the U-Boot image.
1389 1389
1390 - ```UBOOT_LOADADDRESS`` <&YOCTO_DOCS_REF_URL;#var-UBOOT_LOADADDRESS>`__: 1390 - :term:`UBOOT_LOADADDRESS`:
1391 Specifies the load address for the U-Boot image. 1391 Specifies the load address for the U-Boot image.
1392 1392
1393- ```MACHINE_FEATURES`` <&YOCTO_DOCS_REF_URL;#var-MACHINE_FEATURES>`__: 1393- :term:`MACHINE_FEATURES`:
1394 Specifies the list of hardware features the BeagleBone device is 1394 Specifies the list of hardware features the BeagleBone device is
1395 capable of supporting. In this case, the device supports "usbgadget 1395 capable of supporting. In this case, the device supports "usbgadget
1396 usbhost vfat alsa". 1396 usbhost vfat alsa".
1397 1397
1398- ```IMAGE_BOOT_FILES`` <&YOCTO_DOCS_REF_URL;#var-IMAGE_BOOT_FILES>`__: 1398- :term:`IMAGE_BOOT_FILES`:
1399 Files installed into the device's boot partition when preparing the 1399 Files installed into the device's boot partition when preparing the
1400 image using the Wic tool with the ``bootimg-partition`` or 1400 image using the Wic tool with the ``bootimg-partition`` or
1401 ``bootimg-efi`` source plugin. 1401 ``bootimg-efi`` source plugin.
@@ -1435,21 +1435,21 @@ appended with the "beaglebone-yocto" string. The OpenEmbedded build
1435system uses these statements to override similar statements in the 1435system uses these statements to override similar statements in the
1436kernel recipe: 1436kernel recipe:
1437 1437
1438- ```KBRANCH`` <&YOCTO_DOCS_REF_URL;#var-KBRANCH>`__: Identifies the 1438- :term:`KBRANCH`: Identifies the
1439 kernel branch that is validated, patched, and configured during the 1439 kernel branch that is validated, patched, and configured during the
1440 build. 1440 build.
1441 1441
1442- ```KMACHINE`` <&YOCTO_DOCS_REF_URL;#var-KMACHINE>`__: Identifies the 1442- :term:`KMACHINE`: Identifies the
1443 machine name as known by the kernel, which is sometimes a different 1443 machine name as known by the kernel, which is sometimes a different
1444 name than what is known by the OpenEmbedded build system. 1444 name than what is known by the OpenEmbedded build system.
1445 1445
1446- ```SRCREV`` <&YOCTO_DOCS_REF_URL;#var-SRCREV>`__: Identifies the 1446- :term:`SRCREV`: Identifies the
1447 revision of the source code used to build the image. 1447 revision of the source code used to build the image.
1448 1448
1449- ```COMPATIBLE_MACHINE`` <&YOCTO_DOCS_REF_URL;#var-COMPATIBLE_MACHINE>`__: 1449- :term:`COMPATIBLE_MACHINE`:
1450 A regular expression that resolves to one or more target machines 1450 A regular expression that resolves to one or more target machines
1451 with which the recipe is compatible. 1451 with which the recipe is compatible.
1452 1452
1453- ```LINUX_VERSION`` <&YOCTO_DOCS_REF_URL;#var-LINUX_VERSION>`__: The 1453- :term:`LINUX_VERSION`: The
1454 Linux version from kernel.org used by the OpenEmbedded build system 1454 Linux version from kernel.org used by the OpenEmbedded build system
1455 to build the kernel image. 1455 to build the kernel image.