Broadcom DirectFB-1.7.1 Version 1.1 Reference Software Release Notes

 

Release Date:

Feb 11th , 2014

Version No:

DirectFB Version 1.7.1

Broadcom Version 1.1

NOTE: This release caters for bug-fixes in the reference software from the previous DirectFB-1.7.1 Version 1.0 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-1.7.1_v1.1.html

Users Guide

DirectFB-1.7.1_User_Guide_Ver1_7.pdf

DirectFB Feature List

DirectFB-1.7.1_v1.1_Feature_List.pdf

 

Features in this Release:

 Graphics Driver

?         Fix for a flash issue seen in some cases of graphics animation with alpha blend option.

?         Fix for issue seen when blitting surfaces with pixel formats ARGB and YUV. 

Screen Driver

?        Cleaned up screen driver around 4K display resolution settings code.

System Driver

?         Updated pool driver. During Nexus surface allocation align Nexus surface pitch to fall on 4 byte boundary to suite reference software requirement.

 

Platform Layer

?         Split HDMI info frame and Display settings code for better control over HDMI info frame settings

?         Cleanup of the DirectFB NIR driver code for compatibility with updated Nexus reference software.

Other

?    Updated DirectFB build scripts to use envar NEXUS_PATFORM which is set in newer Nexus reference software while keeping compatibility with older Nexus reference software.

?    Added version number to the Broadcom-DirectFB component. The version number is aligned to the Broadcom Trellis version number. It can be used by the DirecFB apps to find which version of DirectFB-Braodcom component is being used and to co-relate DirectFB release with Broadcom Trellis and Nexus reference software release versions.

?    AppLibs target root directory name is changed from APPLIBS_TARGET_ROOT_DIR to APPLIBS_TARGET_ROOTDIR to match with AppLibs/common/Makefile naming usage.

?    Updated automake files of the Broadcom graphics driver to resolve a build issue seen when default toolchain path is changed when user space Nexus drivers are used.

 

Where To Start:

Read the “DirectFB-1.7.1_User_Guide_Ver1_7.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-1.7.1_ User_Guide_Version1_7.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 Input Router support, ensure you use the “DIRECTFB_NIR_SUPPORT=y” flag with each “make” command.

NOTE: 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 untared 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-1.7.1_ User_Guide_Version1_7.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 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-1.7.1 Version 1.1:

 

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.

11)  Master DirectFB application segfaults during shutdown when a slave DirectFB application joins when DirectFB application are run in multi-app mode.

12) Insignia tests show shutdown issues with DirectFB platform IPC mechanism.

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.

DirectFB-1.7.1 Version 1.1 Changes from DirectFB-1.7.1 Version 1.0 release:

JIRA Issue

Issue Description

IMS Issue

SWTRELLIS-729

Allow DirectFB multi app mode to work with NxClient backend.

SW7425-5364

DirectFB-1.7.0/1.4.17 build fails due to 4K display support changes

SW7425-5417

Blitting two surfaces (with UYVY & ARGB pixel formats ) causes incorrect color in output surface.

SW7425-5471

DirectFB: Incorrect BlittingFlag Behavior

SW7425-5505

Set HDMI info frame settings if NEXUS_NUM_HDMI_OUTPUTS is set

679847

SW7425-5435

Add new supported chip/revision to DirectFB supported platform list

SW7435-1381

Keep only the inputClient Ids in the platform struct DFB_PlatformClientResources.

SW7435-1382

MMA requires Nexus surface pitch should be 4 bytes aligned.

 

SW7435-1392

Fix typo in Google test build script.

 

SW7435-1397

Use NEXUS_PATFORM or PLATFORM defines and maintain backward compatibility in DirectFB

 

SW7435-1421

Change AppLibs target root directory name

 

SW7435-1422

Build error after changing the default tool chain path.