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 GA (r37) Release Notes

From Texas Instruments Wiki
Jump to: navigation, search

TIBanner.png

DaVinci PSP 03.01 GA Release (Build r37)[edit]

Release Notes

July 1, 2010

Introduction[edit]

This is the DaVinci PSP 03.01 GA release (Build r37). The PSP serves to provide a fundamental software platform for development, deployment and execution of Linux based applications on Texas Instruments DM355/DM365/DM6446 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.32-rc1. 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.11.

Release Components[edit]

The DaVinci PSP 03.01 GA release package contains following components:

Components Repository Build: r37 Release Tag/Commit Id <release-tag/commit-id>
DaVinci Linux Kernel Source tarball http://arago-project.org/files/releases/davinci-psp_3.x.0.0-r37/sources/linux-davinci-staging.tar.gz NA
DaVinci Linux Kernel GIT repository http://arago-project.org/git/projects/?p=linux-davinci.git;a=shortlog;h=refs/heads/r37 DEV.DaVinciPSP.03.XX.00.37
U-Boot Source tarball http://arago-project.org/files/releases/davinci-psp_3.x.0.0-r37/sources/u-boot-davinci.tar.gz NA
U-Boot GIT repository http://arago-project.org/git/projects/?p=u-boot-davinci.git;a=shortlog;h=refs/heads/u-boot-davinci-2009.06 DEV.DaVinciPSP.03.XX.00.37
Examples http://arago-project.org/git/projects/?p=examples-davinci.git;a=summary DEV.DaVinciPSP.03.XX.00.37
Serial Flash, NAND Writer and UBL Utilities (pre-built binaries) http://arago-project.org/files/releases/davinci-psp_3.x.0.0-r37/board-utils/board-utils-davinci.tar.gz NA
Serial Flash, NAND Writer and UBL Utilities (source code) http://arago-project.org/files/releases/davinci-psp_3.x.0.0-r37/sources/flash-utils-davinci.tar.gz NA
Linux kernel, U-Boot and Filesystem (pre-built binaries) http://arago-project.org/files/releases/davinci-psp_3.x.0.0-r37/images/ NA
Documentation DaVinci PSP 03.01 Linux Installation User Guide NA
Arago SDK images http://arago-project.org/files/releases/davinci-psp_3.x.0.0-r37/sdk/ NA


The DaVinci PSP 03.01 GA release package also contains Arago components, to be used only if you want to build Kernel, U-Boot in the Arago Environment or to re-build a filesystem:

Components Repository Build: r37 Release Tag/Commit Id <release-tag/commit-id>
Arago Package Build Recipes http://arago-project.org/git/?p=arago.git;a=summary DEV.DaVinciPSP.03.XX.00.37
Arago OpenEmbedded Development http://arago-project.org/git/?p=arago-oe-dev.git;a=summary DEV.DaVinciPSP.03.XX.00.37
Arago Bitbake Build tool http://arago-project.org/git/?p=arago-bitbake.git;a=summary DEV.DaVinciPSP.03.XX.00.37


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

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

  • Download Arago, Arago OE and Arago bitbake tool based on the <release-tag or commit-id>
  $ 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

Download DaVinci PSP 03.01 Components[edit]

The DaVinci PSP 03.01 release components can be downloaded from the corresponding GIT repositories and can also be built standalone (not in the Arago build Environment).

  • 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
  $ 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 clone -n 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>

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]

  • CCS based NAND writer utilities for DM355/DM365/DM6446, NOR writer utility for DM6446
  • Serial Flash utilities for DM355/DM365/DM6446 - Requires DM365 PG 1.2
  • Primary Bootloader: UBL for NAND
  • Secondary Bootloader: U-Boot 2009.06-rc0
  • Base Kernel 2.6.32-rc1
  • Base-port for DM355/DM365/DM6446
  • 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
      • Polled mode of operation
      • PIO mode of operation
      • DMA mode of operation
    • 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
    • Audio (ALSA ASoC based) driver
      • AIC33 audio codec support (DM355)
      • AIC3101 audio codec support (DM365)
    • Keyscan driver (DM365)
    • RTC driver (DM365)
    • Video drivers
      • VPFE capture - V4L2 driver
      • DM355 and DM365 CCDC
      • TVP5146 decoder driver for SD resolutions - NTSC, PAL standards and UYVY, NV12 Pixel formats
      • TVP7002 decoder driver for HD resolutions (DM365) - 720p-60, 1080i-30 standards and UYVY, NV12 Pixel formats
      • Raw capture support on DM355/DM365 using Micron sensor imager (MT9T031 - 3MP)
        • Standards supported: VGA-60, 480p-60, 576p-25, 720p-30, 1080p-18 and QXGA-12 standards
        • Image formats supported: SBGGR8/16, UYVY and NV12
      • VPBE display - V4L2 (Video planes, NTSC/PAL and HD on DM365)
        • Standards supported: NTSC, PAL, 720p-60 and 1080i-30 on Video planes (VID0 and VID1)
        • Pixel formats supported: UYVY and NV12 (only on VID0)
      • VPBE display - fbdev
        • Standards supported: NTSC, PAL and 720p-60 and 1080i-30 on Video planes - VID0 and VID1;
        • Pixel formats supported: UYVY
        • OSD planes - OSD0 (RGB656) and OSD1 (attribute, blending) are supported
      • H3A (AF/AEW) drivers (Interim char device based drivers, patches not meant for upstream) for DM355/DM365
      • IPIPE (Previewer/Resizer) drivers (Interim char device based drivers, patches not meant for upstream) for DM355/DM365
        • Resizer with on-the-fly/single-shot YUV capture using TVP5146 and TVP7002 is supported; UYVY and YUV420SP Pixel formats are supported
        • Previewer with on-the-fly/single-shot Bayer RGB input is supported
        • IPIPE Advanced features unit-tested - Bayer RGB to YUV conversion in single shot mode, vertical/horizontal flip, LUT/OTF DPC, Noise Filter 1/2, Global Imbalance Correction, White balance, CFA, RGB2RGB1, RGB2RGB2, Gamma (ROM/RAM table), 3D LUT, RGB2YUV, GBCE, YUV 4:2:2 conversion, Luminance Adjusting, Edge Enhancement, CAR and CGS
      • Resizer drivers (Interim char device based drivers, patches not meant for upstream) for DM6446

What's not supported[edit]

  • Audio (ALSA ASoC based) driver with internal voice codec support (DM365)
  • Facedetect driver support (DM365)
  • VLYNQ driver
  • PWM driver
  • Power Management

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
  • 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 DM6446, DM365 and DM355 SoCs along with their Evaluation Modules (EVMs).

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.
  • ARM running at 405MHz and DDR at 189MHz on DM6446 EVMs.

Fixed in this release (GA, Build r37)[edit]

  • Video: DM365 video does not look sharp with 720p
  • Audio: DM365 audio becomes noisy when played along with encoded video
  • MMC/SD: DM365 MMC/SD1 slot does not work for all MMC/SD cards
  • NAND: DM365 nandtest fails
  • General
    • Enable INPUT_MOUSEDEV in kernel configuration because most Qt applications need it.
    • Enable FRAMEBUFFER_CONSOLE in kernel configuration so splash screen is visible early in boot process.
    • Fix compilation warnings in MUSB driver.

Fixed in this release (Beta, Build r35)[edit]

  • EDMA: DM355/DM365: The codec hangs when H264 or MPEG4 encode or decode operation done with audio. This is because of kernel EDMA driver clearing the IPR bits for EDMA channels owned by codecs as well.
  • MMC/SD: DM355: DM355 MPEG4 encoder fails due to insufficient EDMA resources. The two instances of MMC/SD take away most of the available EDMA slots

Fixed in this release (Beta, Build r31)[edit]

  • IR Remote: DM365: The open-source dm365input_keys driver did not support the newer Remotes, so this driver was disabled so that DVSDK demos can map the keys by talking to the MSP430 directly via I2C driver APIs

Fixed in this release (Phase 3, Build r28)[edit]

  • SPI: DM355: EVM hangs during bootup, when SPI driver operation mode is set to interrupt mode; This release fixes the issue of interrupt mode (PIO mode of operation), and also supports DMA mode of operation
  • Video capture(V4L2): Cannot switch between the formats - NTSC/PAL (at run time, from Linux). This release fixes the issue in the TVP514x decoder driver
  • Video display (fbdev): The boot parameters for fbdev display are not mapped correctly in the video driver
  • Video display (fbdev): The fbset command hangs when the console is on (which by default on)
  • Video display (V4L2): V4l2 display hangs during loopback in MMAP mode
  • Video display (V4l2): Display driver displays the previous queued frame in place of current queued frame
  • RTC, Keyscan: RTC and Keyscan drivers could not be insmod'ed, after they are built as modules
  • USB ISO Video: DM355/DM365: WebCam does not get enumerated properly, when plugged in, after unit has booted up. There seems to be an issue with Microsoft webcam drivers. Logitech webcam seems to work fine.

Fixed in this release (Phase 2, Build r26)[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; A delay was required before starting the ECC correction
  • NAND (JFFS2) on DM365: Intemittent kernel failure is observed during NAND read/write test; The problem is not reproducible after the linux-davinci staging tree was rebased to Kernel version 2.6.32-rc1
  • 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; The issue is fixed in the musb driver
  • USB ISO: Audio class does not work; This was due to setup related issues with USB ISO Audio.
  • NAND ECC test failed when using uImage built from Arago; but it pass when using uImage built on the cloned kernel. After moving to 2009q1 CodeSourcery toolchain the issue is not reproducible
  • NAND: After lots of write/read, read operation becomes slow and 'ls' becomes really slow even after umount and reboot.
  • NAND: First nand read in uboot return failed message; but the second nand read in uboot works fine
  • U-Boot: There is a limitation in the length of the uboot environment variables.

Known Issues[edit]

  • Audio: DM355: Gstreamer fails with a lot of underruns with audio. The same configuration using arecord/aplay does not give any underrun with audio; Gstreamer works fine on DM365
    • Workaround: None
  • Audio: DM355: ALSA read failed when sample rate is 96000Hz
    • Workaround: None
  • GPIO: DM355: 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: On DM365 EVM (up to board revision E), PAL video play-out has worse quality than NTSC video play-out operation
    • Workaround: Use board revision E, where board modifications have been done to improve the PAL video quality.
  • Video display (fbdev): fbdev display driver fails to allocate coherent memory for 1080i resolution (set via bootargs)
    • Workaround: If most of the other drivers are built as module, fbdev driver can allocate coherent memory for 1080i resolution.
  • 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
  • Resizer: DM355/DM365: Resizing any resolution to SD resolution have a lot of noise in the display in continuous mode. Resizing operation on YUV stream in continuous mode have intermittent noises
    • Workaround: None
  • 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 Slave: USB Slave MSC Performance under GIT release is lower than the LSP release (2.10, 2.6.18 based)
    • Workaround: None
  • NAND/MTD: 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
  • NAND/MTD/JFFS2: '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/MTD/JFFS2: NAND performance in r28 (2.6.32-rc1) is worse than previous build (2.6.31-rc7) for all platforms including dm365. This seems to be a JFFS2 issue, NAND raw performance is consistent across the builds
    • Workaround: Moving to a stable 2.6.32 version can help
  • EMAC: DM365: Ethernet performance under GIT release is lower than the LSP release (2.10, 2.6.18 based) when using Iperf.
    • Workaround: None
  • DM9000 Ethernet: DM355: 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
  • MMC/SD: DM355/DM365: When the MMC or SD card is unplugged while mmcblock device mounted, the device hangs and device cannot not recover even after plugging back the card
    • Workaround: Always unmount the MMC/SD card before unplugging.
  • SPI: Performance under GIT release is lower than LSP release (2.10, 2.6.18 based); This is due to the raw EEPROM driver in the open-source kernel (Misc driver), as against the MTD driver in LSP 2.10.
    • Workaround: None
  • NAND Boot: DM644x: PG2.3 ROM supports only upto 12KB UBL size (for 2k and 4k page size NANDs) as compared to PG 2.1 ROM which supported 14KB UBL size. Because of this the default UBL included in the release cannot be used for NAND boot.
    • Workaround: UBL code needs to be edited to reduce the UBL size to 12KB.

Performance - DM365 EVM[edit]

Areas Read/Write Performance Number Notes
CDC-TCP 44.1 Mbits/S ws=212k
RNDIS-TCP 39.3 Mbits/S ws=212k
Ethernet 60.3 Mbits/S ws=128KB
USB-MSC EXT3 Write 7.52 Mbytes/Sec bs=1024
Read 15.65 Mbytes/Sec bs=1024
SDHC EXT2 Write 6.69 MB/S Using 16G Sandisk; bs=1024
Read 11.73 MB/S Using 16G Sandisk; bs=1024
NAND 2k JFFS2 Write 1.05 MB/S
Read 5.31 MB/S
I2C Write 256.42 Kbits/S bus_freq=400KHz; bs=1024
Read 306.25 Kbits/S bus_freq=400KHz; bs=1024
SPI Write 11.09 Kbits/S bs=1024
Read 567.36 Kbits/S bs=1024
EDMA-Async 306.23 Bytes/uSec Acnt=32767;Bcnt=2;Ccnt=1
EDMA-ABsync 336.07 Bytes/uSec Acnt=32767;Bcnt=2;Ccnt=1
V4L2 Capture-NTSC 60Hz 30.03 fps
V4L2 Capture-720P 60Hz 60.56
Fbdev Display-NTSC 60Hz 30.05 fps
Fbdev Display-720P 60Hz 60.15
V4L2 Display-NTSC 60Hz 30.03
V4L2 Display-PAL 50Hz 25.05
V4L2 Display-720P 60Hz 60.06
V4L2 Display-1080I 30Hz 30.06
USBISO-Video Capture Rate: 15.0583 CPU Utilization: 1.88%

Performance - DM355 EVM[edit]

Areas Read/Write Performance Number Notes
CDC-TCP 34.5 Mbits/S ws-212k
RNDIS-TCP 30.3 Mbits/S ws-212k
Ethernet 24.36 Mbits/S ws=128KB
USB-MSC EXT3 Write 5.75 Mbytes/Sec bs=1024
Read 12.68 Mbytes/Sec bs=1024
SDHC EXT2 Write 5.72 MB/S Using 16G Sandisk; bs=1024
Read 10.70 MB/S Using 16G Sandisk; bs=1024
NAND 2k JFFS2 Write 0.77 MB/S bs=1024
Read 4.04 MB/S bs=1024
I2C Write 263.09 Kbits/S bus_freq=400KHz;bs=1024
Read 317.19 Kbits/S bus_freq=400KHz;bs=1024
SPI Write 11.84 Kbits/S bs=1024
Read 400.18 Kbits/S bs=1024
EDMA-Async 195.04 Bytes/uSec Acnt=32767;Bcnt=2;Ccnt=1
EDMA-ABsync 146.94 Bytes/uSec Acnt=32767;Bcnt=2;Ccnt=1
V4L2 Capture-NTSC 60Hz 30.03 fps
Fbdev Display-NTSC 60Hz 30.04 fps
V4L2 Display-NTSC 60Hz 30.03
V4L2 Display-PAL 50Hz 25.05
USBISO-Video Capture rate: 33.91 fps CPU Load: 2.65%

Versioning[edit]

This is the DaVinci PSP 03.01 GA release (Build r37).

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 GA (r37) 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 GA (r37) 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 GA (r37) 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 GA (r37) 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 GA (r37) 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 GA (r37) 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 GA (r37) 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 GA (r37) 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 GA (r37) 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