Broadcom
DirectFB-1.4.17 Version 1.5 Reference Software Release Notes
Release Date:
October 18th, 2012
Version No:
DirectFB Version 1.4.17
Broadcom Version 1.5
NOTE: This release caters for bug-fixes in the reference software from
the previous DirectFB-1.4.17 Version 1.0/1.2 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
Documentation
Deliverables:
Description |
Filename |
Release Notes |
release_notes_directfb-1.4.17_version1.5.html |
Users Guide |
DirectFB-1.4.17_User_Guide_Version1.3.pdf |
DirectFB Feature List |
DirectFB-1.4.17_Version1.5_Feature_List.pdf |
Features in this
Release:
Systems Driver
· Nexus Surface Compositor Stereoscopic 3D support added
Input Devices
· Nexus Input Router support (Build with the flag “DIRECTFB_NIR_SUPPORT=y”)
Image Provider
· Nexus Picture Decoder image provider with improved behaviour for broken images
Other
·
Some
performance improvements for single application builds
·
Updated
to use latest versions of open source libraries (JPEG, PNG, ZLIB, FFMEPG, FreeType)
·
Updated
to Linux-Fusion version 8.10.4
·
Build
process improved to add flexibility to reference software parser for alternate
locations of key Magnum/Nexus source files
·
Testing
data has been improved and benchmark scores are now stored in the release
testing spreadsheet
Test Applications
· Playback_dfb extended to add graphics detailing current file
Where To Start:
Read the “DirectFB-1.4.17_User_Guide_Version1.5_.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.4.17_ User_Guide_Version1.5_.pdf”.
For quick build
instructions, please follow the steps below:
1)
Ensure
the following environment variables have been setup:
PLATFORM,
BCHP_VER, LINUX
2)
Change
into the “/AppLibs/opensource/directfb/build” directory and issue “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.
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.4.17_Version1.0_User_Guide.pdf”.
2)
Change
into the “/usr/local/bin/directfb/1.4”
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.
Core DirectFB changes or bug fixes from
DirectFB-1.4.17 Version 1.0:
1) Removed redundant calls to “Core_Push/Pop/GetCalling()” for
single application build, giving a slight performance gain
2) Moved to version 8.10.4 of the linux-fusion driver
3) Fixed memory leak in SaWMan in
update_region4()
4) Various bugfixes
backported from SaWMan 1.6
4) SaWMan Fix to allow hardware based smooth scaling with strectch blits
Broadcom driver improvements and bug fixes since DirectFB-1.4.17 Version
1.0:
1) Restored segmented decode support in
the hardware picture decoder image provider
2) Fixed various issues found during a
pass of Klockwork (Static analysis tool) over the
code
3) Removed unused LVDS/Panel code from
platform initialization code
4) Nxsmaster shuts downs cleanly on exit
5) FFMPEG based image provider
configured to decode MPEG2 frames
6) Removal and addition of HDMI with
screen encoder API behavior restored
7) Heap usage of the hardware picture
decoder reduced by default
8) Removed framebuffer
thread from single application builds, giving a performance a slight gain.
9) Additional digital resolutions added
to screen encoder API
10) Build process improved to add
flexibility to reference software parser for alternate locations of key
Magnum/Nexus source files
11) Memory allocation for palette
adjusted to avoid memory checker errors
12) Various fixes to hardware picture
decoder image provider to improve robustness
13) Nexus Surface Compositor platform
code generally improved
14) Support for Stereoscopic 3D with
Nexus Surface Compositor added
15) Graphics2d handle now closed on exit
16) Removed hybrid Stagecraft graphics
driver cache flush code from graphics driver
17) Improved playback_dfb
example application with added graphics
18) Usage of pthread_cond_wait()
made more robust in layer code
19) Added support for 7429 / 7421 B0 &
7358A1 parts
20) Improved NIR platform driver
21) USB device hotplug
now works
Known Issues in
DirectFB-1.4.17 Version 1.5:
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.
Known Issues:
1) df_dok stretch blit
tests fail on 7409 platform when using RefSW Phase
6.5, due to a bug in the GRC code.
2) Insignia tests which involve a
format change from RGB32 to RGB16 will fail unless the hardware dithering is
disabled.
DirectFB-1.4.17 Version 1.5 Changes from DirectFB-1.4.17 Version 1.0
release:
JIRA Issue |
Issue Description |
IMS Issue |
SW7425-3131 |
Add Private Examples to repository |
534989 |
SW7425-3137 |
Add Insignia and Tacho tests to private directory |
535360 |
SW7425-3147 |
Modify refsw parser code |
534610 |
SW7425-3117 |
Need DFB automated unit tests target build |
|
SW7425-3192 |
Klocwork reports possible uninitialized heap, deref of NULL-ptr, buffer overflow: bcmnexus_pool.c |
537509 |
SW7425-3193 |
Klocwork reports possible memory-leak, array index out of bounds, derefs in file bcmnexus_layer.c |
537569 |
SW7425-3194 |
Klocwork reports possible memory lead in file bcmnexus.c |
537524 |
SW7425-3195 |
Klocwork reports possible memory-leaks in file bcmnexus_video.c |
537209 |
SW7231-849 |
Make release broken |
538274 |
SW7231-853 |
SID image provider code doesn't free buffer cleanly |
538704 |
SW7231-854 |
jpeg-clean rule causing EC build failures. |
539141 |
SW7425-3234 |
Nexus Input Router improvements |
539524 |
SW7425-3262 |
Backport 1.6.0 changes to DirectFB-Broadcom package |
539159 |
SW7425-3270 |
Require update_region3 code to work optimally (update_region_4) |
521082 |
SW7231-864 |
FFMPEG image provider isn't configured to decode MPEG2 stills |
541735 |
SW7425-3309 |
nxsmaster application fails to run with 7425 Phase 6.0 RefSW |
542390 |
SW7425-3319 |
nxsmater fails to shutdown cleanly |
542871 |
SW7231-879 |
Remove un-supported test app videoAndGfxLayerTest |
547122 |
SW7425-3330 |
Add support for compliation with ccache |
545837 |
SW7425-3406 |
Removing and Adding HDMI with screen encoder API has stopped working. |
547682 |
SW7425-3369 |
Update DirectFB NIR as per review comments |
547149 |
SW7425-3427 |
Reduce heap usage for SID driver |
548425 |
SW7425-3429 |
Remove Core_*Calling() functions from single app build |
548475 |
SW7425-3500 |
Add additional modes to screen encoder driver |
551688 |
SW7425-3501 |
USB hotplug no longer working |
548421 |
SW7425-3509 |
Remove the framebuffer thread in non-multi app builds |
552614 |
SW7425-3518 |
Update NSC support to use partial regions |
548419 |
SW7231-850 |
Current DirectFB releases doesn't support blending of overlapping blits |
|
SW7425-3521 |
The reference software parser code is out of date |
553058 |
SW7425-3553 |
Build fails when DIRECTFB_PREFIX is not set |
553791 |
SW7425-3555 |
BMRC errors when blitting from a source with LUT8 |
553895 |
SW7425-3654 |
Row buffer left locked in Nexus image provider |
556130 |
SW7425-3655 |
Broken error handling code in image providers |
556128 |
SWVC4-389 |
DirectFB cube example no longer runs - "DirectFBError [buffer->surface->Lock]: Not supported!" |
|
SW7425-3672 |
JPEG decoding regression in DirectFB 1.4.17-1.1 |
556822 |
SW7425-3706 |
Add stereoscopic NSC support |
534608 |
SW7231-964 |
IDataBuffer_Requestor__PeekData failed when decoded a PNG image |
|
SW7425-3823 |
App fails to load zlib when built with option DIRECTFB_SHARED=n |
563627 |
SW7425-3824 |
Update DirectFB test app df_input |
563810 |
SW7425-3934 |
typo in DFB_Platform_Init_tagged() causes NEXUS_Graphics2D_Uninit() to not be called |
569523 |
SW7429-300 |
Add support and test 7429 / 7241 B0 parts |
569883 |
SW7208-201 |
Remove hybrid Stagecraft graphics driver cache flush code |
569889 |
SW7425-3964 |
Review mainline SaWMan changes |
529796 |
SW7425-3974 |
Upgrade linux-fusion to 8.10.4 |
572115 |
SW7425-3975 |
Fix build rules for Broadcom package tools |
572170 |
SW7425-3976 |
Make playback_dfb more useful in single app mode |
572212 |
SW7425-4001 |
Cannot override SID build flag. |
574056 |
SW7231-1021 |
pthread_cond_wait() usage in bcmSetLayerFrameBuffer |
556902 |
SW7425-4018 |
Memory leak in sawman_updates.c in update_region4_r |
574464 |
SW7425-4036 |
Re-Implement DirectFB NIR driver with stateless approach |
576099 |
SW7425-4048 |
Update DirectFB test app df_input |
576873 |
SW7425-4059 |
Import Sawman fixes from the latest in direcfb.org git repo |
577353 |
SW7425-4089 |
Review secondary encoder code and tests |
529415 |
SW7425-4094 |
Allow window managers to pass partial region for update |
554215 |
SW7425-4096 |
Create DirectFB 1.4.17 v1.5 release |
579234 |
SW7425-4104 |
USB device hotplug no longer working |
580062 |
SW7425-4126 |
Fix DirectFB-Broadcom mrproper rule to remove dep files. |
580912 |
SW7425-4133 |
SaWMan fix to allow HW smooth scaling with stretch blits. |
580396 |