Background Color |
---|
|
Device Firmware Anchor |
---|
| Device Firmware |
---|
| Device Firmware |
---|
|
|
Operators can make use of the details available below to start developing a Yocto build to do the final additions of Operator specific changes to the device. This will help Operator to add their own final product features as well as Operator specific patches/changes.
Yocto Manifests
Yocto based RDK builds are flexible enough to easily accommodate SoC / OEM / Operator / third party changes. The starting point for the Yocto builds are a manifest file. The manifest file is an xml file that contains details of the different open embedded Yocto build layers, meta layers , rdk as well as open source components that needs to be fetched during initial stages ( than during bitbake time ) as well as the URL locations from where the data can be pulled. A set of sample manifests that can be used as a template for developing Operator specific manifests are given below
Expand |
---|
title | Click here for more details on Yocto Manifests |
---|
|
# | File | Remarks |
---|
1 | Device Specific Manifest | This is the starting point of the build and is specific to a device/board . If the SoC/OEM has only one target device /board, still it is recommended to maintain a different manifest for SoC/OEM for keeping it future-proof. Usually it contains references to other manifest files which will be having specific set of repos | 2 | SoC Manifest | This manifest contains meta layer details of SoC and , optionally, some SoC specific repos | 3 | OEM Manifest | This manifest contains meta layer details of OEM and , optionally, some OEM specific repos | 4 | Operator Manifest | This manifest contains meta layer details for operators and , optionally, some operator specific layers. | 5 | OE layers Manifest | This manifest has details of the basic Yocto Open Embedded layers | 6 | RDK-V Manifest | This manifest can contain meta layers specific to RDK & RDK-V and , for EXTERNALSRC cases, the RDK & RDK-V component repo details too. It might be supplemented with a conf file too | 7 | Third party Apps manifest | This manifest can contain meta layers related to premium streaming applications which are chosen by Operator |
The default manifest repo in RDKM Git is at https://code.rdkcentral.com/r/#/c/manifests/ . Operator need to have their own manifest file in this location which will be mentioned in the 'Device specific manifest' - which is the starting point of builds for a particular target device
|
To match the layered structure of Yocto builds, a Operator specific layer is used to include Operator changes and additions. Use the yocto-layer create sub-command to create a new general layer.
Code Block |
---|
|
$ yocto-layer create mylayer |
There shall be separate device (machine) configuration file (.conf) for each device for the particular chip family for which the layer is intended for. The general naming terminology for Operator layer is meta-rdk-<soc name>
The device (machine) configuration file shall include corresponding include (.inc) file to get machine configuration details.
Adding the Machine Configuration File for the new Operator
Each meta-* layer should have a conf folder containing the machine configuration we can select during 'source setup-environment' . Optionally it can also have a class/classes folder for keeping information that is useful to share between metadata files.
To add a machine configuration, you need to add a .conf file with details of the device being added to the conf/machine/ file. In the machine conf file the basic machine configuration should be defined.
Once the conf files are in place, the layer details need to be added to the corresponding package group file. Based on platform, the package group file will be grouped into multiple files with one bitbake fiile and multiple append files. Operator can add the Operator layer details to required package group append files applicable to the target device build to get the features into the final build