NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

DaVinci PSP 03.01 Phase 1 Release Notes

From Texas Instruments Wiki
Jump to: navigation, search

TIBanner.png

DaVinci PSP 03.01 Phase 1 Release (Build r20)[edit]

Release Notes

August 27, 2009

Introduction[edit]

This is the DaVinci PSP 03.01 Phase 1 release (Build r20). The PSP serves to provide a fundamental software platform for development, deployment and execution of Linux based applications on Texas Instruments DM355 EVM. This abstracts the functionality provided by the hardware. The product forms the basis for all application development on this platform. The Linux Kernel in this release is based on the linux-davinci tree, version 2.6.31-rc5. The U-Boot is based on the u-boot.git denx tree, version 2009.06-rc0. The File system is based on the Arago, version 2009.09.

Release Components[edit]

The DaVinci PSP 03.01 Phase 1 release package contains following components:

Components Repository Build: r20 Release Tag/Commit Id <release-tag/commit-id>
Arago Package Build Recipes http://arago-project.org/git/?p=arago.git;a=summary 98562da019105b610cc39b320a0df20c89419001
Arago OpenEmbedded Development http://arago-project.org/git/?p=arago-oe-dev.git;a=summary a3f832ea423cdb84fe8785407fb6c24c4d11ea1d
Arago Bitbake Build tool http://arago-project.org/git/?p=arago-bitbake.git;a=summary 8b40b4c5a2bc28b223eff3282fb06716ba6847ad
DaVinci Linux Kernel Source tarball http://arago-project.org/files/sources/git_arago-project.org.git.people.sneha.linux-davinci-staging.git_f8f079bd132b85d8efe305696259c0fad61bdd44.tar.gz NA
DM355 EDMA patch (for the Legacy DM355 codecs) http://arago-project.org/files/short-term/patches/edma-dm355-free-channels.patch NA
DaVinci Linux Kernel http://arago-project.org/git/projects/?p=linux-davinci.git;a=shortlog;h=refs/heads/r20 f8f079bd132b85d8efe305696259c0fad61bdd44
U-Boot http://arago-project.org/git/projects/?p=u-boot-davinci.git;a=summary f8d047c84137ab331c0ee2c3e94c3f1ec4228298
Examples http://arago-project.org/git/projects/?p=examples-davinci.git;a=summary 4fa5ce1544157a53c38ca0ea6ac5d217db1f5399
Serial Flash, NAND Writer and UBL Utilities http://arago-project.org/files/releases/davinci-psp_3.0.0.0/board-utilities/ NA
Pre-built Binaries http://arago-project.org/files/short-term/snapshots/20090826/images/ NA
Documentation DaVinci PSP 03.01 Linux Installation User Guide NA

The components have been compiled under Arago Build Environment (OE based) using the CodeSourcery GNU Toolchain for ARM Processors: 2007q3-51 version

Download DaVinci PSP 03.01 Components[edit]

  • Download DaVinci Kernel component from linux-davinci-staging tree using the <release-tag or commit-id>
$ git clone -n git://arago-project.org/git/projects/linux-davinci.git
$ cd linux-davinci-staging
$ git checkout <release-tag or commit-id>
  • Download DaVinci U-Boot component from u-boot-davinci tree using the <release-tag or commit-id>
$ git://arago-project.org/git/projects/u-boot-davinci.git
$ cd u-boot-davinci
$ git checkout <release-tag or commit-id>
  • Download DaVinci examples component from linux-davinci-examples tree using the <release-tag or commit-id>
$ git clone -n git://arago-project.org/git/projects/examples-davinci.git
$ cd linux-davinci-examples
$ git checkout <release-tag or commit-id>

DaVinci PSP 03.01 Build in the Arago OE environment[edit]

  • Download Arago, Arago OE and Arago bitbake tool based on the <release-tag>
$ mkdir $HOME/oe
$ cd $HOME/oe
$ git clone -n git://arago-project.org/git/arago.git
$ cd arago
$ git checkout <release-tag or commit-id>
$ cd $HOME/oe
$ git clone -n git://arago-project.org/git/arago-oe-dev.git
$ cd arago-oe-dev
$ git checkout <release-tag or commit-id>
$ cd $HOME/oe
$ git clone -n git://arago-project.org/git/arago-bitbake.git
$ cd arago-bitbake
$ git checkout <release-tag or commit-id>
  • Build Arago base filesystem for dm355-evm or dm365-evm
$ MACHINE=<machine> bitbake arago-base-image
  • Build U-Boot and Arago demo filesystem for dm355-evm or dm365-evm; The Kernel for dm355-evm is automatically built due to the dependency of demo filesystem with the kernel. The Kernel uses the default configuration with all drivers (except Ethernet) built as dynamic modules. The Kernel modules are populated in the demo filesystem
$ MACHINE=<machine> bitbake board-set arago-demo-image
  • Build Kernel image for dm355-evm or dm365-evm, using the default configuration with all drivers built as static
$ MACHINE=<machine> bitbake linux-davinci-staging-static
  • The images will be available under $HOME/oe/arago-deploy folder

Documentation[edit]

DaVinci PSP 03.01 Linux Installation User Guide provides instructions on how to flash the EVM using Serial Flash or CCS based NAND Writer utilities. This user guide also provides information on the migration path for customers using Montavista Professional Edition 5.0 based LSP releases.

What's Supported[edit]

  • Serial Flash (Only on DM355) and CCS based NAND writer utilities
  • Primary Bootloader: UBL for NAND
  • Secondary Bootloader: U-Boot 2009.06-rc0
  • Base Kernel 2.6.31-rc5
  • Base-port for DM355/DM365
  • Device Drivers
    • UART driver
    • I2C driver
    • GPIO driver
    • EDMA driver
    • EMAC Ethernet driver (DM365)
    • DM9000 Ethernet driver (DM355)
    • NAND driver with 4-bit ECC, SLC/MLC, up to 4K page size support
    • MMC/SD driver with SDHC and SDIO support
    • SPI driver with EEPROM support
    • WDT driver
    • USB Driver with Host, Device and OTG modes; Supports USB Host/Device Mass Storage Class, USB Hub and HID classes and USB Device CDC and RNDIS classes - Only on DM355
    • Audio (ALSA ASoC based) driver with AIC33 audio codec support - Only on DM355
    • Video drivers
      • VPFE capture - V4L2 driver
      • DM355 and DM365 CCDC
      • VPBE display - fbdev (basic features - NTSC/PAL) - Only on DM355
      • H3A (AF/AEW) drivers (Interim char device based drivers, patches not meant for upstream) - Only on DM355
      • IPIPE (Previewer/Resizer) drivers (Interim char device based drivers, patches not meant for upstream) - Only on DM355

What's not supported[edit]

  • VPBE display drivers (fbdev + v4l2) for DM365
  • VPBE display driver - V4L2 on DM355
  • USB on DM365
  • Audio on DM365
  • Previewer/Resizer on DM365

Upgrade and Compatibility Information[edit]

Refer to the Migration section of DaVinci PSP 03.01 Linux Installation User Guide

Host Support[edit]

This release has been validated on the following host machines:

  • Red Hat Enterprise Linux 4 for Code Sourcery toolchain - 2007q3-51 version
  • Windows XP SP2 for CCS v3.3 Installation

Dependencies[edit]

The DaVinci PSP release depends on Code Sourcery tool chain and Code Composer Studio (CCS). CCS is needed for initial (or recovery) flashing of UBL and U-Boot (Serial Flash utility is an alternate option without having to use CCS). As long as U-Boot remains functional on the EVM, CCS will not be needed.

Device Support[edit]

This release supports the Texas Instruments DM365 and DM355 SoCs along with the DM365 and DM355 Evaluation Module (EVM).

Validation Information[edit]

This release has passed the system test cycle on the following devices

  • ARM running at 296MHz and DDR at 243MHz on DM365 EVMs
  • ARM running at 216MHz and DDR at 171MHz on DM355 EVMs.

Known Issues[edit]

  • NAND ECC on DM365: Only the error bits introduced in first 512byte chunk get corrected and other 512byte chunks of the page do not get corrected
    • Workaround: None
  • NAND (JFFS2) on DM365: Intemittent kernel failure is observed during NAND read/write test
    • Workaround: None
  • Audio: Gstreamer fails with a lot of underruns with audio. The same configuration using arecord/aplay does not give any underrun with audio
    • Workaround: None
  • GPIO: bank interrupt and non-bank interrupt can not work in the same time. This is a limitation in the driver implementation
    • Workaround:If the driver is configured for bank interrupts (default), all GPIOs can be used in the interrupt mode
  • Video display tears when running the loopback in user pointer mode
    • Workaround: Use the 'fbdev_loopback_nomemcpy' application from the examples. The video tearing issue was the side effect of memcpy in the application
  • Video display (fbdev): Cannot switch betwween the formats - NTSC/PAL (at run time, from Linux)
    • Workaround: The video formats can be changed from the bootargs in U-Boot
  • Video raw capture: Micron sensor capture fails when used at a resolution 1080P or more in MMAP mode when video driver is loaded dynamically. Micron sensor capture also fails at maximum resolution in MMAP mode. There is also a kernel crash, when the Micron sensor capture application is run with bufsize set to QXGA resolution
    • Workaround: Use the Micron sensor capture in userpointer mode, since maximum resolution with userpointer mode works fine
  • Video raw capture: Micron sensor capture cannot achieve the required frames per second (60 fps, for progressive capture), getting only 16 fps. This is found to be limitation with the design of Micron sensor driver
  • IPIPE: When built as a module, the IPIPE driver crashes during insmod operation
    • Workaround: IPIPE driver can be built in to the kernel as static
  • USB OTG: When the USB Host, Slave drivers are built as modules and the driver is configured to be in OTG mode, removing the module gives a kernel panic
    • Workaround: USB driver in OTG mode can be built in to the kernel as static
  • USB OTG: OTG fails the USB-Forum Test suite on both high-speed and full-speed modes
    • Workaround: None
  • USB MSC: The performance with this release is lower than the LSP release (2.10, 2.6.18 based); With this release the Host MSC read performance is 9.4MBps and write is 0.72MBps, while with the LSP 2.10 release Host MSC read performance is 11.4MBps and write is 0.84MBps.
    • Workaround: None
  • USB ISO: Video class does not work; Video camera gets enumerated but the camera capture does not work. It gives an error about STREAM_ON ioctl. The video camera does not get enumerated properly, when plugged in, after unit has booted up.
    • Workaround: None
  • USB ISO: Audio class does not work
    • Workaround: None
  • NAND ECC test failed when using uImage built from Arago; but it pass when using uImage built on the cloned kernel.
    • Workaround: If the kernel is built standalone (not within Arago environment), ECC correction works fine
  • Flash_eraseall option -j is not working; The issue is due to the 4K support. It required a parameter in the mtd-abi structure to be updated which broke the IOCTL flash_eraseall -j option was calling.
    • Workaround: None
  • 'sync' command or 'umount' command are really slow for first write which results in kernel dump. This seems to be an expected behavior, since the filesystem commands seem to cache the data in RAM before writing to NAND devices
    • Workaround: None
  • NAND: After lots of write/read, read operation becomes slow and 'ls' becomes really slow even after umount and reboot.
    • Workaround: None
  • NAND: First nand read in uboot return failed message; but the second nand read in uboot works fine
    • Workaround: Always do a partial nand read first and then do the full nand read
  • U-Boot: There is a limitation in the length of the uboot environment variables.
    • Workaround: The lengthy values can be split into multiple variables and then these variables can be merged
  • DM9000 Ethernet: Performance with this release is lower than the LSP release (2.10, 2.6.18 based); With this release the TCP performance is 22.3Mbps while with the LSP 2.10 release the TCP performance is 25.5Mbps.
    • Workaround: None

Performance - DM365 EVM[edit]

Drivers Performance Notes
CDC-TCP NRY NRY
RNDIS-TCP NRY NRY
Ethernet 60.8 Mbits/sec When window size is 212KB
USB-MSC EXT3 Write NRY
USB-MSC EXT3 Read NRY
USB-MSC VFAT Write NRY
USB-MSC VFAT Read NRY
USB-MSC EXT2 Write NRY
USB-MSC EXT2 Read NRY
SD EXT2 Write 4.25 MB/S Using Sandisk 2G card
SD EXT2 Read 8.90 MB/S Using Sandisk 2G card
SDHC EXT2 Write 9.76 MB/S Using Sandisk 8G card
SDHC EXT2 Read 10.7 MB/S Using Sandisk 8G card
NAND 2k JFFS2 Write 0.85 MB/S
NAND 2k JFFS2 Read 8.51 MB/S
NAND Raw Write 4.2 MB/S Using mtd_test module
NAND Raw Read 4.9 MB/S Using mtd_test module
I2C Write 256.4 Kbits/S
I2C Read 306.25 Kbits/S
SPI Write 498.50 Kbits/S
SPI Read NRY
V4L2 Capture-NTSC 60Hz 30.03 fps
Fbdev Display-NTSC 60Hz NRY

Performance - DM355 EVM[edit]

Drivers Performance Notes
CDC-TCP 36.6 Mbits/sec When window size is 212KB
RNDIS-TCP 33.3 Mbits/sec When window size is 212KB
Ethernet 22.3 Mbits/sec When window size is 212KB
USB-MSC EXT3 Write 5.49 MB/S
USB-MSC EXT3 Read 9.76 MB/S
USB-MSC VFAT Write 0.69 MB/S
USB-MSC VFAT Read 9.36 MB/S
USB-MSC EXT2 Write 2.08 MB/S
USB-MSC EXT2 Read 9.73 MB/S
SD EXT2 Write 3.8 MB/S Using Kingston 2G x120 card
SD EXT2 Read 7.6 MB/S Using Kingston 2G x120 card
SDHC VFAT Write 7.6 MB/S Use Sandisk UltraII 16G card
SDHC VFAT Read 10.7 MB/S Use Sandisk UltraII 16G card
NAND 2k JFFS2 Write 1.97 MB/S Buffersize=1024K; 0.8 when buffersize if 100K and 256K
NAND 2k JFFS2 Read 5.9 MB/S Buffersize=1024K;
I2C Write 264.3 Kbits/S Bus_freq=400KHz; Buffersize=1024
I2C Read 318.75 Kbits/S Bus_freq=400KHz; Buffersize=1024
SPI Write 11.9 Kbits/S Buffersize=1024;
SPI Read 390.6 Kbits/S Buffersize=1024;
V4L2 Capture-NTSC 60Hz 30.03 fps
Fbdev Display-NTSC 60Hz 30.24 fps

Versioning[edit]

This is the DaVinci PSP 03.01 Phase 1 release (Build r20).

Technical Support and Product Updates[edit]

For further information or to report any problems, contact http://community.ti.com or http://support.ti.com.

DaVinci Linux Mailing List: http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source.

E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article DaVinci PSP 03.01 Phase 1 Release Notes here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article DaVinci PSP 03.01 Phase 1 Release Notes here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article DaVinci PSP 03.01 Phase 1 Release Notes here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity