You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

Getting Started

Product Specifications

The first step to get a fully functional product is the define the product features and see if they meet the standard requirements. A list of expected features from an IP based RDK-V Accelerator are listed at Product Specifications. OEM can cross check the expected features/specifications with the capabilities of the SoC platform being used and can finalize the features supported by the product.

RDKM On-boarding

RDKM offers collaboration space for OEMs which would help OEMs to collaborate with SoC and RDK teams (as well as any 3rd party). RDKM collaboration zone includes features like (but not limited to) CMF facility to maintain build manifests as well as SoC/OEM specific code, SoC SDK artifact storage facility, JIRA & RDK Wiki spaces, integration with Test & Certification suites, monthly & release tagging and so on.

Product Engineering

Once the product features are decided, the device engineering can be started. OEM needs to decide on the hardware layout that incorporates OEM components to the SoC board. A sample expected hardware specification list as well as a sample flash layout is available at Product Engineering

Device Firmware

OEM can make use of the details available at Device Firmware to start developing a Yocto build to engineer the device firmware builds based on RDK Yocto build setup.

RDK Certification Suite Package

RDKM offers an in-house Test & certification suite that facilitates OEMs to get their Video Accelerator product certified as RDK Compliant device.

Certification program includes testing which validates the RDK stack on the device with defined test suite called as RDK Certification Test Suite. It is mandatory to go through this program in order to brand user's platform as RDK compliant product.



The OEM layer features optimized components for SoC specific RDK provided by the OEM. This includes OEM software for boot-up, image updates, and APIs to handle custom drivers.

These could be specializations to the generic or SoC components or complementary software components provided by the OEM to create a fully functional set-top device.

Below is the list of component having an OEM interface i.e. either they have a device specific part of the code or add OEM specific improvement to the component.

Bluetooth

Bluetooth driver integration.

Crash Upload

  • Uploads core dumps to a FTP server if there are any

  • This interface is optional, OEM may implement a customized script for uploading the crash dump files to a server using specific certificate files

Device Settings

  • OEM implementation includes device specific configuration parameters & customizing data structures for front panel setting and so on

DTCP

  • Integrates the SoC provided DTCP library with DTCP/IP manager Interface implementation which Manages source/sink DTCP/IP sessions and performs the encryption/decryption
  • Provides setup scripts to initialize the default DTCP data to device specific persistent partition

hwselftest

Provides platform specific configuration options for Hardware test. Which will run periodically in background to check attached hardware health.

  • OEM dependency is limited to providing a configuration file hwselftest.conf which defines the hardware interfaces that should be tested e.g. partition name, HDMI, IR, MOCA and so on

LED Manager

LED Manager is used to control the LED patterns during different system events.

  • OEM should implement the template code to ensure that it matches with their LED coloring scheme and other configuration parameters such as brightness level and number of LED types, multi-color or single color LEDs

tenableHDCP

This handles the HDCP service operations such as enable or disable the HDCP.

  • OEM interface includes implementing manufacturer specific calls to read the keys and so on

Wi-Fi

  • OEM specific Wi-Fi driver configuration files and utility library can be added optionally



Licensed

Manufacturer Library

The Manufacturer Library implements a set of interfaces that enable configuration and usage of vendor specific components in the STB.

Interfaces

MFR API: The APIs comprise of functions that allow to -

  • Perform vendor-specific initialization
  • Read/Write serialized data
  • Validate and write the image into flash
  • Prepare for reboot STB (legacy)
  • Set cable card type
  • Get filesystem path configuration (legacy)
  • Generate DES session key using DFAST2 algorithm

eCM API:  The eCM API is intended to be used by DSGCC. It allows to -

  • Trigger the eCM initialization after the eCM booting is completed
  • Check if the image should be downloaded in case of CDL

FPD API: The API controls front panel’s indicators and allows to register key stroke callbacks -

  • Set LED color
  • Get/Set LED brightness
  • Set LED blink
  • Get/Set text
  • Register/Unregister key callback

Storage Manager

Provides following functionalities in handling of storage devices such as SD card and so on.

  • Scans and mounts MMC devices
  • Manages SD card file properties
  • reads TSB health
  • OEM has to provide the following device specific configuration

[SDCARD_CONFIG]
MMC_DEV_NODE=/device/node/name/of/mmcblock
MMC_SRC_DEV_NODE=/dev/mmcblk<NodeName>
MOUNT_PATH=/tmp/data
FRAME_RATE_MBPS=<Max-FrameRate-Numeric>
IsTSBEnableOverride=<true/false>
filesystemtype=<vfat/ext3 ...>
DEFAULT_TSB_MAX_MINUTE=<TIME-DURATION-IN-MINUTE>
DISK_CHECK_SCR_PATH=/lib/rdk/disk_check
TSB_VALIDATION_FLAG=<true/false>

SYSINT

A collection of system integration shell scripts and configuration files that handles many of the initialization and routine job such as bringing up applications or rotating log etc. OEM can define following parts of sysint code. 

  • Customize "/etc/common.properties" and "/etc/device.properties" files which defines environment variables for the following:
    • Model name of the STB

    • Build type ( dev or prod)

    • Type of the device i.e. mediaclient or hybrid etc.

    • Default interface

    • OEM Manufacturer name e.g. Pace, Cisco, Arris etc.

    • SoC provider name. e.g. BRCM

  • Customize the utility scripts in lib/rdk which provides Shell functions for the following features and to the application layers.
    • To Access device specific information
    • Factory reset operation
    • Monitoring peripherals & hardware specific to the OEM device
  • No labels