world leader in high performance signal processing
Trace: » 2008r1

Release Notes for uClinux for Blackfin 2008R1 Release

Version: 2008R1

Date: Mar. 13, 2008

The latest version of this document can always be found here:

Development Environments

Tool Chain: Toolchain Release 2008R1

u-boot: uboot_1.1.6 Release 2008R1

Host platform: SuSE Linux 9.2 or above

Target board: STAMP & EZKIT Board

Note: However, other similar host platforms are also supported, but they are not well tested.


Source files


Linux ELF file


Compressed Linux image


This document


Compressed archive of test results


Summary of test results


New features and changes

  1. Port kernel to bf54x(done) and bf52x(experimental only, not tested)
    • Port header files of bf54x and bf52x from VDSP.
    • Initial boot up porting. Enable interrupt hanlding, PLL/CCLK/SCLK configuration, DMA driver, serial driver, GPIO setting.
    • Enable GPIO framework, SPI framework, I2C-TWI driver, SPI flash driver, NOR flash driver, touch screen driver.
    • Add ad1980 ASOC sound driver with dmix support (BF548-EZKIT)
    • Add SDIO driver
    • Add DDR EBIU driver and PM driver. (BF548-EZKIT)
    • Add ATAPI driver (BF548-EZKIT)
    • Add NAND flash driver
    • Add SMSC 921x Ethernet driver (BF548-EZKIT)
    • Add USB device and USB host driver
    • Add TFT LCD LQ043 driver
    • Add keypad driver
    • Add option to priorize DMA over Core
    • Add support for wm8731 codec (BF527-EZkit)
  2. Improve kernel.
    • Upgrade kernel to
    • Update real time ADEOS patch to 2.6.22 kernel.
    • Enable voluntary preemptive option in kernel on blackfin.
    • Put user space atomic operation into a fix address. This allows much more efficient pthread lock implementations than the bfin_spinlock syscall we're currently using.
    • munmap can now unmap subparts of previously allocated blocks. It is no longer possible to get blocks smaller than a page through mmap. mmap can now be asked not to round up the allocation to the next power of 2 page size.
    • Add ability to expend the hardware trace buffer via a configurable software buffer - so you can have lots of history when a crash occurs.
    • Update KGDB patch and avoid double exception by disable soft breakpoint in kgdb code. Move some arch dependent code from kgdb patch into kernel source.
    • Clean up SPI driver.
    • Add early printk support.
    • Add an exception request/free api similar to the interrupt request/free api so people can utilize the free software based exceptions for their own purposes
    • Add pread64/pwrite64/fadvise64 to Blackfin arch
    • Add memory protection support for blackfin arch (Experimental only)
    • Enable initramfs for blackfin and store rootfs in initramfs by default.
    • Allow people to store their default kernel configs in the linux source tree
  3. Drivers
    • Add SPI MMC driver support on bf533-stamp.
    • Mark MDMA channel 0 as reserved, since were using it internally. Add DMA based equivalents for insX and outsX.
    • Use DMA for PIO block reads and writes in IDE driver
    • Add fbdma and TEA5764 driver
    • New camera driver for bf537-stamp, which supports Micron Head Boards and VS6624.
    • Add watchdog driver
    • date Blackfin v4l capture driver. Changed naming convention. Added homebrewn v4l ioctl VIDIOSFPS: Let the driver know the requested frame rate. Added sysfs support in /sys/class/video4linux to control fps, flicker frequency, horizontal and vertical mirror.
    • Change char drivers to misc drivers and export class devices.
    • Enable framebuffer Console: Support pseudo palette and colormap
    • Enable ISP1362 and net2272 USB driver on bf561-ezkit
    • add dm9000 ethernet driver
    • Add peripheral resource allocation support
    • Add phy abstraction layer supporting in bfin_emac driver
    • Enable AXIS AX88180 Gigabit Ethernet Hardware and Driver
    • Add Hitachi TX09D70VM1CDA TFT LCD driver pacth written by Harald Krapfenbauer
    • Replace current blackfin specific pfbutton driver with kernel generic gpio key driver
    • Replace current bfin spi adc driver with kernel generic spidev driver.
    • Added OV9655 sensor basic code (SRV1 board supply), added Minotaur BSP.
    • Add support for Blackfin/Linux logo for framebuffer console
    • Replace old Blackfin specifi GPIO based I2C driver with generic GPIO based I2C driver. Enable it in EZKIT-BF561 also.
    • Add char driver for otp memory (only read supported atm)
    • use common flash driver to setup partitions rather than the bf5xx-flash driver
  4. board support
    • Add tepla-bf561 board support
    • Add HV Sistemas H8606 board support
    • Update Bluetchnix board support
  5. Application and library
    • Install library head files and shared library binaries into staging folder.
    • Enable qt and konqueror patches to build fdpic binary.
    • Enable Asia fonts support in NANO-X Microwin and install proper microwin apps and demos.
    • Enable mdev daemon to create proper dynamic device inode.
    • Optimize performance for the ffmpeg codec on blackfin
    • Add g729 lib in uclinux-dist to release under BSD-style license. Enable linphone to use g.729 lib.
    • Add lib mpegdec-0.4.1
    • Add mpc2x
    • Add SDL examples
    • Add qtopia-core-opensource-src-4.2.2.bfin.patch to build qtopia for blakcfin.
    • import openntpd-3.9p1
    • import u-boot userspace tools
    • import ftplib-3.1-1
    • import w3cam-0.7.2
    • import CGIC 2.05 lib
    • import DirectFB 1.1.1 lib and DirectFB-examples from
    • Update readline lib to 5.2_p12
    • Update busybox to 1.4.1
    • Update strace to 4.5.15
    • Update libpcap to 0.9.8
    • Update wireless-tools to 27
    • Update pppd to 2.4.4
    • Update sysfsutils to 2.1.0
    • Update libpng to 1.2.24
    • Update expat lib to 2.0.1
    • Update libbzip2 to 1.0.4
    • Update libcurl to 7.17.1
    • Update libgmp to 4.2.2
    • Update libpcap to 0.8.9
    • Update libsdl to 1.2.13
    • Update mpfr lib to 2.3.0_p4
    • Update popt lib to 1.13
    • Update speex lib to svn-13013
    • Update sqlit lib to 3.5.4
    • Update iptable to 1.4.0
    • Update lirc to 0.8.2
    • Update npt to 4.2.4p4
    • Update mplayer to svn-25211
    • Update linphone to 2.0.1. Enable video and camera support on blackfin.
    • Update UPNP library to 1.4.6
    • Update LTP test suite to version of Dec. 2007
  6. Automate new test cases to include more manual testings. Update existed automated test suites against new bf54x board and 2.6.22 kernel.

Known Issues

A full list of known issues can be found at:

No Issue Title
1146 a couple of the libraries don't compile.
1186 Sometimes CTRL+C kills shell
1475 Blackfin dpmc and pm driver are broken
1676 busybox hdparm doesn't work properly if only built once
1685 cplbmgr.S does not exit properly on error condition
1800 kaffe.flt crash
2718 /proc/self/exe link is broken for FLAT binaries
2719 unable to strace across vforks
2779 Null pointer exception when run a test bash script
2896 dpmc test case doesn't pass with higher or lower VCO and voltage value.
2977 OPROFILE doesn't seem to work and crashes with null pointer access
3380 apply dpm patch fails on svn trunk kernel now
3402 Busybox compile error if some applets are removed
3417 loading module with certain relocations into L1 may crash kernel
3433 cannot cp or mv a file with Chinese name
3513 It failed some time when format harddisk of a large size on BF548-EZKIT
3713 spi_mmc driver not working well with concurrent access on the spi bus.
3716 xip kernel with binary format FDPIC boot up fails, and it stops at userspace
3787 pata_bf54x does not unload cleanly
3788 USB hang with ZiO! CF reader
3803 USB & cameras on BF54x fails
3826 `strace env <something>` crashes when built as FLAT
3851 CFI flash on BF548-EZKIT is not detected due to query version being too new
3912 CONFIG_MPU doesn't seem to handle access to ASYNC/IO Memory well
3975 nbench crashes on all boards

There are also some issues in the latest LTP test suite. They are recorded as bug 3742, 3743, 3744, 3745, 3746, 3816, 3958.

Build Procedure

  1. Install Toolchain Release 2008R1
  2. Download the source code of project uClinux-dist for Blackfin release 2008R1
  3. Follow basic compilation directions

Reporting Bugs

1. Go to the following Blackfin uClinux bug tracker page,

2. If the bug is not already reported click on “Submit New” button to report new bug.