RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
In order to enable vc4graphics in on RPI, below changes are made in configuration.
meta-raspberrypi layer:
Userland uses dispmanx for rendering graphics and video. With vc4graphics instead of dispmanx, DRM is used for rendering. OpenGL With new changes, vc4graphics is added to Machine features and headers from userland is used for device-hal compilation. Mesa library is enabled for vc4 supported architecture. Graphics libraries like Egl and Gles2 from userland is suppressed and is taken from Mesa. OpenGL (Open graphics Library), API for interacting with GPU ( graphical Processing Unit) is enabled with vc4.
Westeros sink is enabled to use v4l2. meta-wpe layer :
Userland dependency of wpeframework and snapshot feature is removed with vc4 changes. wayland opengl is enabled for gstreamer plugins. Gstreamer packages are enabled with GLES2 and EGL libraries.
Westeros Changes :
Userland uses dispmanx for rendering graphics and video. With vc4graphics instead of dispmanx, DRM (Direct Rendering Manager) module is used. DRM is a subsystem of the Linux kernel responsible for interfacing with GPUs of modern video cards. DRM is a kernel module that gives direct hardware access to DRI clients. Westeros-dispmanx is suppressed and westeros-drm is used for rendering. Westeros-sink is enabled to use v4l2 by modifying soc-path to v4l2. Westeros was updated to latest revision for supporting video codecs that are already used.
https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-raspberrypi/+/39287
Direct Rendering Infrastructure (DRI) provide interface to interface Mesa, OpenGL and other 3D rendering API libraries with the device drivers and hardware. Mesa also contains an implementation of software rendering called swrast that allows shaders to run on the CPU as a fallback when no graphics hardware accelerators are present. The Gallium software rasterizer is known as softpipe or when built with support for LLVM llvmpipe, which generates CPU code at runtime
...
Image is flashed to micro SD card before inserting to RPI board.
Command to flash the image
Generated image has to be flashed to an micro SD card using this command in local PC:
$ sudo dd if=<path to ImageName.rpi-sdimg> of=<path to micro SD card space> bs=4M
Ex: $ sudo dd if=rdk-generic-hybrid-thunder-image_default_20200302130659.rootfs.rpi-sdimg of=/dev/sdc bs=4M |
---|
The micro SD card is then inserted to the Raspberry Pi board and booted to check for containers created. The Raspberry Pi board is connected to the PC via a USB to serial converter and the logs can be checked in console or can be connected via HDMI cable to a TV and logs will be shown in the terminal