Version: 2006R2
Date: Nov. 2, 2006
The latest version of this document can always be found here: http://docs.blackfin.uclinux.org/doku.php?id=release_notes
Tool Chain: Toolchain Release 2006R2
u-boot: uboot_1.1.3 Release 2006R2
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
uClinux_dist_2006R2.tar.bz2
Linux ELF file
linux-bf533-stamp linux-bf533-ezkit linux-bf537 linux-bf561
Compressed Linux image
uImage-bf533-stamp uImage-bf533-ezkit uImage-bf537 uImage-bf561
This document
release_notes_2006R2.pdf
Compressed archive of test results
test_results_bf533_STAMP_2006R2.tar.gz test_results_bf533_EZKIT_2006R2.tar.gz test_results_bf537_2006R2.tar.gz test_results_bf561_2006R2.tar.gz
Summary of test results
test_results_summary_2006R2
A full list of known issues can be found at:
http://blackfin.uclinux.org/tracker/index.php?group_id=17&atid=141
No | Issue Title |
1146 | a couple of the libraries don't compile. |
1165 | CVS 2.6.16 kernel networking fails after 2 hours of downloading on 533 |
1186 | Sometimes CTRL+C kills shell |
1198 | checksum() return wrong results when receive UDP packet in latest kernel 2.6.16. |
1289 | Linphone doesn't work when the other side enter and exit hold mode. |
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 |
There are also some issues in the LTP test cases. They are recorded as bug 744, 745, 1010, 1050, 1096, 1211, 1212, 1218, 1219, 1358, 1566, 1606 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1803, 1804, 1808.
1. Install Toolchain Release 2006R2
Go to http://blackfin.uclinux.org/frs/?group_id=18 for more information
2. Download the source code of project uClinux for Blackfin release 2006R2
Go to http://blackfin.uclinux.org/frs/?group_id=17
3. Uncompress uclinux-dist.tar.bz to working directory
cp uClinux-dist_2006R2.tar.bz /(WORK_DIR) cd /(WORK_DIR) bunzip2 uClinux-dist_2006R2.tar.bz tar -xvf uClinux-dist_2006R2.tar
4. Compile the source using following commands
cd uClinux-dist make menuconfig (save and exit without making any changes) make clean make
5. Find the compiled Blackfin executable images in the following location
$(WORK_DIR)/uClinux-dist/images/
6. 6 types of images are available according to the kernel configuration.
linux-ext2 linux-cramfs linux-romfs uImage-ext2 uImage-cramfs uImage-romfs
1. Use below serial cables to connect board to host computer.
Male-Female 1-1 serial cable
2. Use minicom or some other serial communications utility to configure the serial port with the following parameters. If run minicom for the first time, run “minicom -s” to setup the port.
Serial Device = /dev/ttyS0 Baud Rate = Baud that have been selected in kernel menuconfig (Default value is 57600) Number of bits = 8 Parity = None Stop bits = 1
3. Make sure the BMODE pins on the target board are set to 00. If u-boot loads automatically on reset, the pins are already set correctly.
4. Make sure tftp server is installed in the host machine. Copy linux from uClinux-dist/images/ that is built in above steps to the /tftpboot of the host PC.
5. Load the linux file with the following boot loader commands. Make sure the ipaddr (target board IP) and serverip (host IP) are correct.
STAMP> setenv ipaddr x.y.z.n STAMP> setenv serverip x.y.z.m STAMP> saveenv STAMP> tftp 0x1000000 linux STAMP> bootelf 0x1000000
6. The kernel should then boot
(This Image Will be Used in bootm command)
Linux ELF image has to be changed as per u-boot standards to load Linux using bootm command. Following subsections explain how to build compressed and uncompressed Linux images.
Compressed Linux images can be found under folder “uClinux-dist/image”. But, you can also generate by yourself as follows.
1. Generate the binary file from the ELF file, using following command
$ bfin-uclinux-objcopy -O binary linux linux.bin
2. Compress the binary file obtained above, using following command
$ gzip -9 linux.bin
3. Build the final linux image, using following command
(WORK_DIR)/u-boot_1.1.3/tools/mkimage -A blackfin -O linux -T kernel -C gzip -a 0x1000 -e 0x1000 -n "Bfin uClinux Kernel" -d linux.bin.gz uImage
Use following commands to build uncompressed Linux image
(WORK_DIR)/u-boot_1.1.3/tools/mkimage -A blackfin -O linux -T kernel -C none -a 0x1000 -e 0x1000 -n "Bfin uClinux kernel" -d linux.bin uImage
STAMP> tftp 0x1000000 uImage STAMP> protect off all STAMP> erase 0x20040000 0x203EFFFF STAMP> cp.b 0x1000000 0x20040000 $(filesize) STAMP> setenv bootcmd bootm 0x20040000 STAMP> save STAMP> reset
1. make menuconfig in uClinux for Blackfin project
2. select option [Kernel/Library/Defaults Selection] → [Customize Kernel Settings] and exit
3. In kernel configuration, processor and board specific options can be changed in [Processor type and features], such as cache status, CPU, DMA, etc.
4. Driver specific options are in respective menus. Such as Ethernet driver in [Networking supporting], sound card driver in [Sound], video driver in [Graphic Support], etc.
5. Save and exit. Then make the image again as mentioned before. The changes of the kernel take effects after you load and run the new image.
1. make menuconfig in uClinux for Blackfin project
2. select Blackfin architecture in menu [Vendor/Product Selection] → [AnalogDevices Product]
3. select option [Kernel/Library/Defaults Selection] → [Customize Vendor/User Settings] and exit
4. In user configuration, applications and libraries can be selected and debugging information can be enabled.
5. After the menuconfig is done, make the image again as mentioned before. The new selected application can be found in the romfs after you load and run the new image.
1. make menuconfig in uClinux for Blackfin project
2. select Blackfin architecture in menu [Vendor/Product Selection] → [AnalogDevices Product]
3. select [Kernel/Library/Defaults Selection] → [Customize Vendor/User Settings] and exit
4. In menu [Blackfin Build Options] → [Binary Format], select FDPIC to build application into ELF binary and library, select FLAT to build FLAT binary, select Shared-FLAT to build shared FLAT binary and library. Don't foget to select install shared libraries if you want to run application built with shared library.
5. Change into folder uClinux-dist and make the image.
1. To debug an application, please refer to the document “gdb_guide_bfin.txt” in patch folder bfin_patch/kgdb_patch.
2. To do source level kernel debugging by kgdb, please refer to the README file in patch folder bfin_patch/kgdb_patch. After apply the kgdb patch file to the kernel, a simple guide “kgdb_bfin.txt” can be found in subfolder “linux-2.6.x/Documentation/blackfin/”
1. Go to the following Blackfin uClinux bug tracker page,
http://blackfin.uclinux.org/tracker/?atid=141&group_id=17&func=browse
2. If the bug is not already reported click on “Submit New” button to report new bug.