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 3 Release Notes
Contents
- 1 DaVinci PSP 03.01 Phase 3 Release (Build r28)
- 1.1 Introduction
- 1.2 Release Components
- 1.3 DaVinci PSP 03.01 Build in the Arago OE environment
- 1.4 Download DaVinci PSP 03.01 Components
- 1.5 Documentation
- 1.6 What's Supported
- 1.7 What's not supported
- 1.8 Upgrade and Compatibility Information
- 1.9 Host Support
- 1.10 Dependencies
- 1.11 Device Support
- 1.12 Validation Information
- 1.13 Fixed in this release (Phase 3, Build r28)
- 1.14 Fixed in this release (Phase 2, Build r26)
- 1.15 Known Issues
- 1.16 Performance - DM365 EVM
- 1.17 Performance - DM355 EVM
- 1.18 Versioning
- 1.19 Technical Support and Product Updates
DaVinci PSP 03.01 Phase 3 Release (Build r28)[edit]
Release Notes
November 24, 2009
Introduction[edit]
This is the DaVinci PSP 03.01 Phase 3 release (Build r28). 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.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.09.
Release Components[edit]
The DaVinci PSP 03.01 Phase 3 release package contains following components:
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>
- Follow the instructions to configure OEBASE, SCRATCH and http/git proxies - http://arago-project.org/wiki/index.php/Setting_Up_Build_Environment
- 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]
- 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
- Serial Flash utilities for DM355/DM365 - New, 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
- 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 - New
- DMA mode of operation - New
- 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) - New
- 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) - New on DM365
- 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 - New on DM365
- IPIPE (Previewer/Resizer) drivers (Interim char device based drivers, patches not meant for upstream) for DM355/DM365 - New
- 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
What's not supported[edit]
- Audio (ALSA ASoC based) driver with internal voice codec support (DM365)
- Facedetect driver support (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.
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
- Audio: DM365: Default volume for DM365 is low
- Workaround: Use amixer sset commands to increase the volume level on the capture and playback sides.
- 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 (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: DM365: MMC/SD slot 1 (bottom slot on the EVM) has problems. The following cards could not be detected: Kingston SDHC (4GB), SD (2GB, 1GB), DANE-ELEC SD (1GB), TRANSCEND MMC (2GB) and Sandisk MMC (1GB)
- 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: None
- 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
Performance - DM365 EVM[edit]
Drivers | Performance | Notes |
---|---|---|
CDC-TCP | 43.8 Mbits/sec | |
RNDIS-TCP | 38.9 Mbits/sec | |
Ethernet | 60.8 Mbits/sec | When window size is 212KB |
USB-MSC EXT3 Write | 6.78 MBytes/sec | |
USB-MSC EXT3 Read | 14.32 MBytes/sec | |
USB-MSC VFAT Write | 0.77 MBytes/sec | |
USB-MSC VFAT Read | 13.73 MBytes/sec | |
USB-MSC EXT2 Write | 2.47 MBytes/sec | |
USB-MSC EXT2 Read | 14.33 MBytes/sec | |
SD EXT2 Write | 3.70 MBytes/sec | Using Sandisk 2G card |
SD EXT2 Read | 8.50 MBytes/sec | Using Sandisk 2G card |
SDHC VFAT Write | 8.76 MBytes/sec | Using Sandisk 16G card |
SDHC VFAT Read | 11.00 MBytes/sec | Using Sandisk 16G card |
NAND 2k JFFS2 Write | 1.05 MBytes/sec | |
NAND 2k JFFS2 Read | 5.31 MB/S | |
NAND Raw Write | 4.2 MBytes/sec | Using mtd_speedtest module |
NAND Raw Read | 4.9 MBytes/sec | Using mtd_speedtest module |
I2C Write | 256.4 Kbits/sec | |
I2C Read | 306.25 Kbits/sec | |
SPI Write | 11.88 Kbits/sec | |
SPI Read | 498.50 Kbits/sec | |
Audio ALSA Write | 1555427 bits/sec | |
Audio ALSA Read | 1555230 bits/sec | |
EDMA-Async | 312.01 Bytes/usec | Acnt=32767; Bcnt=2; Ccnt=1 |
EDMA-ABsync | 332.60 Bytes/usec | Acnt=32767; Bcnt=2; Ccnt=1 |
V4L2 Capture-NTSC 60Hz | 30.03 fps | |
V4L2 Capture-PAL 50Hz | 25.05 fps | |
V4L2 Capture-720p 60Hz | 60.56 fps | |
V4L2 Capture-1080i 30Hz | 30.29 fps | |
Fbdev Display-NTSC 60Hz | 30.05 fps | |
Fbdev Display-PAL 50Hz | 25.1 fps | |
Fbdev Display-720p 60Hz | 60.15 fps | |
Fbdev Display-1080i 30Hz | NA | |
V4L2 Display-NTSC 60Hz | 30.03 fps | |
V4L2 Display-PAL 50Hz | 25.05 fps | |
V4L2 Display-720p 60Hz | 60.06 fps | |
V4L2 Display-1080i 30Hz | 30.06 fps | |
USB-ISO Video | 15.07 fps | Using Logitech QuickCam Fusion webcamera |
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 | 4.0 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 | |
USB-ISO Video | 31.98 fps | Using Logitech QuickCam Fusion webcamera |
Versioning[edit]
This is the DaVinci PSP 03.01 Phase 3 release (Build r28).
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.