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