Broadcom DirectFB-14.2 Reference Software Release Notes
Release Date:
May 9th, 2014
Version No:
Broadcom Version 14.2
Open-source DirectFB Version 1.7.4
NOTE: This release caters for bug-fixes in the reference software from the previous DirectFB-1.7.1 Version 1.1 release. These are outlined below.
Overview:
DirectFB stands for Direct Frame Buffer. "DirectFB is a thin library that provides hardware graphics acceleration, input device handling and abstraction, integrated windowing system with support for translucent windows and multiple display layers, on top of not only the Linux Framebuffer Device.
It is a complete hardware abstraction layer with software fallbacks for every graphics operation that is not supported by the underlying hardware. DirectFB adds graphical power to embedded systems and sets a new standard for graphics under Linux. (see http://www.directfb.org for more details).
Licensing requirements:
DirectFB is an open-source project using a LGPL license for all core software components. Broadcom proprietary code is part of the official release, but come under the normal Broadcom Software License Agreement (SLA). For customers who do have not or do not want to sign the SLA, then a “limited” release is available whereby the proprietary code is omitted, but pre-built libraries are available to still allow the user to run DirectFB on Broadcom hardware.
Documentation Deliverables:
|
Description |
Filename |
|
Release Notes |
release_notes_directfb-14.2.html |
|
Users Guide |
DirectFB-14.2_User_Guide_Ver1_8.pdf |
|
DirectFB Feature List |
DirectFB-14.2_Feature_List.pdf |
Features in this Release:
Graphics Driver
?
Fix for transparency
issue seen during blitting surfaces of different
pixel formats.
Screen Driver
? Added support for 4K p30/50/60
display formats.
? Updates made to support display
resolution changes when using Nexus NxClient API.
Layer Driver
? Code
clean-up to allow better handling of shut-down sequence.
Platform Driver
? Split HDMI info frame and Display settings code for better control over HDMI info frame settings with a build option.
? Added new platform APIs to support NxClient client composition settings when using DirectFB-XS mode.
? Cleaned-up shared settings code to resolve memory corruption issue seen when a slave DirectFB application joins.
? Added support for HDMI color space and color depth settings.
Other
? DirectFB version naming is changed to match with the version naming of the Broadcom Trellis software. For example this release of DirectFB is called 14.2 containing open-source DirectFB 1.7.4.
? Added build option to control HDMI info frame settings when using stereoscopic modes.
?
Added build option to set HDMI color space and color depth settings.
? Updated open-source Insignia
test tarball to version 1.0.4 which contains
additional Font blend tests.
? Updated
open-source DirectFB tarball
to version 1.7.4 which contains core memory corruption fixes and additional
Font blend capabilities.
? Updated
open-source linux-fusion tarball
to version 9.0.4.
Where To Start:
Read the “DirectFB-14.2_User_Guide_Ver1_8.pdf” to get started with understanding what DirectFB is and how to build it for your platform.
Build Instructions:
For detailed information about all available build options, please refer to “DirectFB-14.2_User_Guide_Version1_8.pdf”.
For quick build instructions, please follow the steps below:
1) Ensure the following environment variables have been setup:
PLATFORM, BCHP_VER, LINUX
2) From “/AppLibs/opensource/directfb/build” directory issue command “make” followed by “make tarball” to create a tarball that can be untared on the target platform.
NOTE: This will build DirectFB in single-application mode.
NOTE2: To build in multi-application mode, please ensure you use the “DIRECTFB_MULTI=y” flag with each “make” command.
NOTE3: To build DirectFB-XS, ensure you use the “DIRECTFB_NSC_SUPPORT=y” flag with each “make” command.
NOTE4: To build with Nexus Audio Video support, ensure you use the “DIRECTFB_NEXUS_AV_SUPPORT=y” and DIRECTFB_NSC_SUPPORT=y flag with each “make” command.
Special Notes:
To run a DirectFB application such as the Penguins demo (df_andi), please follow the instructions below:
1) On the target platform make sure you have extracted the DirectFB target platform tarball to create the “/usr/local” directory structure. For more information about how to do this, please refer to the “DirectFB-14.2_User_Guide_Version1_8.pdf”.
2) Change into the “/usr/local/bin/directfb/1.7” directory and issue “./rundfb.sh install”.
3) Now run the application you want by entering “./rundfb.sh <name of application>” (e.g. ./rundfb.sh df_andi).
NOTE: DirectFB run-time configuration options can be passed on the command line using the “--dfb:” option or setting the envar “DFBARGS” appropriately.
To run a DirectFB video provider application such as df_video, please follow the instructions below:
1) Build DirectFB with build options: make DIRECTFB_NSC_SUPPORT=y DIRECTFB_NEXUS_AV_SUPPORT=y default tarball.
2) Follow instructions 1 and 2 mentioned above to run a DirectFB application.
3) Start the video stream from a server over the network.
4) Note the ip address of the box by typing “ifconfig” on the console.
5) Start the Nexus server application as: ./rundfb.sh nxserver.
6) Telnet to the box and from directory /usr/local/bin/directfb/1.7 run the video application: ./rundfb.sh join df_video http://10.178.6.38:41952/getres/99/mars_attacks.mpg (where streaming server ip address is 10.178.6.38, port number is 41952 and getres/99/ is the path to the video file).
NOTE: Supported Video playback options are: file/HTTP/RTP/UDP. For local file playback use option “./rundfb.sh df_video join file://path/to/file/itv1.ts”.
Core DirectFB changes or bug fixes from DirectFB-1.4.17 Version 1.6:
1) This DirectFB release contains major changes from previous DirectFB-1.4 series. For full details please see the NEWS section at http://www.directfb.org/downloads/Core/DirectFB-1.7/NEWS.
2) Support for Task Manager which uses graphics hardware and CPU in parallel to render graphics improving graphics performance.
3) Improved video provider support in the core DirectFB.
4) Sawman, Voodoo, Fusiondale, One, ++DFB and other library packages are now part of open-source DirectFB-1.7 source tree. These libraries were earlier available as separate packages.
5) Support for FFMPEG image provider in open-source DirectFB image provider.
Broadcom driver improvements and bug fixes since DirectFB-1.4.17 Version 1.6:
1) Nexus Surface Compositor platform code generally improved.
2) Added support for 7145, 7445/7252 parts.
3) Improved NIR platform driver.
4) Fixes issue with building keypad driver with a build option.
5) Removed FFMPEG image provider implementation from Broadcom image provider due to GPL concerns.
Known Issues in DirectFB-14.2:
1) Color keying in Big-Endian mode doesn’t work.
2) The Nexus Picture Decoder image provider produces garbled images when running in Big-Endian mode.
3) When using 7346 RefSW Phase 5.5 and power management, the Still Image Decoder (SID) hardware doesn’t wake from standby. Work around the issue by disabling SID support.
4) Insignia tests don’t run on BCM97445 platform.
5) Applications don’t shut down cleanly when Task Manager option is enabled.
6) Corrupted graphics is seen when Task Manager option is enabled. Setting option “export sw_picture_decoder=1” on console before starting the application resolves the issue.
7) df_brcmTest fails in some tests.
8) While running Sawman tests applications “testman” and “testrun”,console shows process mismatch message.
9) df_stereo3d application causes seg-fault when stereo and L/R mono windows overlap.
10) Video provider support does not work with unified reference software phase 13.4/3.
12) Some Insignia tests show shutdown and Font blend issues.
13) Stereoscopic applications don’t work correctly in DirectFB-XS mode.
Other Known Issues:
1) Insignia tests which involve a format change from RGB32 to RGB16 will fail unless the hardware dithering is disabled.
2) DirectFB example application df_andi freezes when started on video layer.
3) The DirectFB feature list documents, Insignia version number should be read as 1.0.4.
DirectFB-14.2 Changes from DirectFB-1.7.1 Version 1.1 release:
|
JIRA Issue |
Issue Description |
IMS Issue |
|
SW7425-5417 |
Blitting two surfaces (with UYVY & ARGB pixel formats ) causes incorrect color in output surface. |
|
|
SWTRELLIS-681 |
DirectFB segfault on shutdown of IPC server in multi app mode |
|
|
SW7435-1508 |
DirectFB: Implement DirectFB-XS Screen API calls using NxClient |
|
|
SW7435-1523 |
Add build option to control
setting of HDMI info frame |
|
|
SWTRELLIS-1140 |
DirectFB: Avoid direct calls to NSC
Publish() API when using ASAL compositor3D. |
|
|
SW7435-1560 |
Add open-source DirectFB-1.7.4 tarball |
|
|
SW7445-1067 |
Update supported 4K display
modes and HDMI colorspace setting |
|
|
SWTRELLIS-1167 |
DirectFB: Update supported platform
list to include D0 parts |
|
|
SW7435-1478 |
Deadlock on DirectFB shutdown |
|
|
SW7435-1583 |
Update test app dfbtest_layer.c in DirectFB unittest directory |
|
|
SW7435-1584 |
Clean-up platform code around
shared memory size calculation. |
|
|
SW7435-1592 |
Analog (CVBS) Graphics
layer height question... |
791291 |