Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Status
colourBlue
titleIn Progress

introduction

...

 RDKM team in collaboration with  bringup RDK-B on ARM System Ready reference device and make it available for RDK-B community as a reference for RDK-B          

...

Yocto Build Instructiuons

NXP:

Code Block
titleBuild Instructions for NXP
$ mkdir rdkb-arm
$ cd rdkb-arm
$ repo init -u 'https://github.com/rdkcentral/meta-rdk-bsp-arm/' \
    -m "manifests/rdkb-bsp-arm.xml" \
    -b "main"
$ repo sync
$ source meta-rdk-bsp-arm/setup-environment
$ bitbake rdk-generic-broadband-image

RPI:

Code Block
titleBuild Instruction for RPI
$ mkdir rdkb-arm
$ cd rdkb-arm
$ repo init -u 'https://github.com/rdkcentral/meta-rdk-bsp-arm/' \
    -m "manifests/rdkb-bsp-arm.xml" \
    -b "main"
$ repo sync
$ MACHINE="raspberrypi64-rdk-broadband" source meta-rdk-bsp-arm/setup-environment
$ bitbake rdk-generic-broadband-image


QEMU:

Code Block
titleBuild Instruction for QEMU
$ mkdir rdkb-arm
$ cd rdkb-arm
$ repo init -u 'https://github.com/rdkcentral/meta-rdk-bsp-arm/' \
    -m "manifests/rdkb-bsp-arm.xml" \
    -b "main"
$ repo sync
$ MACHINE="armefi64-qemu-broadband" source meta-rdk-bsp-arm/setup-environment
$ bitbake rdk-generic-broadband-image

...

Where possible, the same Linux kernel, firmware (U-Boot) and other relevant component versions will be used, with a strong preference for "mainline" versions.

Building platform firmware for different hardware types

Many development boards will not have a SystemReady-compatible firmware pre-loaded, or the pre-loaded firmware will be out of date.

To provide an easier developer experience, this meta-layer can build the platform firmware for several common developer boards.

Once you have deployed the SystemReady-compatible platform firmware to your board, you will not need to replace it and only need to consider updating your operating system image.

This meta layer can generate firmware for the following types of hardware, with more planned to be implemented.

Board NameMACHINE identifiermulticonfig nickname
Generic QEMUarmefi64-rdk-broadbandgeneric
Raspberry Pi 3/4 64-bitraspberrypi64-rdk-broadbandraspberrypi

The default MACHINE is armefi64-rdk-broadband (as explained above).

To generate an image for another machine, specify the MACHINE environment variable when sourcing setup-environment:

Code Block
MACHINE="raspberrypi64-rdk-broadband" source meta-rdk-bsp-arm/setup-environment
 All machine configurations for RDK-B inherit from armefi64-rdk-broadband.

Unless the machine configuration has specific overrides, the operating system image (kernel + rootfs + boot manager) generated by configurations like raspberrypi64-rdk-broadband will be identical to that of the generic machine. Only the platform firmware binaries will be different.

Configuring multiconfig for multiple target builds

...