<<

LSP 2.10 DaVinci Drivers

Data Manual

PRODUCT PREVIEW information concerns products in the formative or design phase of development. Characteristic data and other specifications are design goals. Texas Instruments reserves the right to change or discontinue these products without notice.

Literature Number: SPRS566A July 2009 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com Contents 1 LSP 2.10 DaVinci™ Linux Drivers ...... 15 1.1 Features ...... 15 1.2 Description ...... 17 1.3 Limitations Summary...... 19 1.4 Toolchain and Version Information...... 19 1.5 Tested Modes...... 19 1.6 Timers...... 20 1.7 LSP/PSP Version Information ...... 20 1.8 Documentation Support ...... 21 1.9 DM644x...... 22 1.10 DM355 ...... 22 1.11 DM6467...... 22 1.12 DM365 ...... 22 2 Device Drivers ...... 23 2.1 DM644x Video Drivers...... 23 2.1.1 DM644x Video Display Driver...... 24 2.1.1.1 Support and Constraints ...... 24 2.1.1.2 Supported ...... 25 2.1.1.3 Performance and Benchmarks...... 25 2.1.2 DM644x Video Capture Driver...... 26 2.1.2.1 Support and Constraints ...... 26 2.1.2.2 Performance and Benchmarks...... 27 2.1.3 DM644x Preview Engine Driver ...... 27 2.1.3.1 Support and Constraints ...... 27 2.1.4 DM644x Resizer Driver ...... 28 2.1.4.1 Support and Constraints ...... 28 2.1.5 DM644x Auto Expose/Auto White Balance (AEW) Driver ...... 29 2.1.5.1 Support and Constraints ...... 29 2.1.6 DM644x AF Driver...... 29 2.1.6.1 Support and Constraints ...... 29 2.2 DM355 Video Drivers ...... 30 2.2.1 DM355 Video Display Driver ...... 30 2.2.1.1 Support and Constraints ...... 31 2.2.1.2 Performance and Benchmarks...... 32 2.2.2 DM355 Video Capture Driver ...... 32 2.2.2.1 Support and Constraints ...... 32 2.2.2.2 Performance and Benchmarks...... 33 2.2.3 DM355 Previewer-Resizer Driver ...... 34 2.2.3.1 Support and Constraints ...... 34 2.2.4 DM355 Auto Expose/Auto White Balance (AEW) Driver...... 35 2.2.4.1 Support and Constraints ...... 35 2.2.5 DM355 AF Driver ...... 35 2.2.5.1 Support and Constraints ...... 35 2.3 DM6467 Video Drivers...... 36 2.3.1 DM6467 Video Display Driver ...... 36 2.3.1.1 Support and Constraints ...... 37 2.3.1.2 Performance Benchmarks ...... 38 2.3.2 DM6467 Video Capture Drivers ...... 38 2.3.2.1 Support and Constraints ...... 39 2.3.2.2 Performance and Benchmarks...... 40 2.3.3 DM6467 Video Data Conversion Engine Driver ...... 40

2 Contents Submit Documentation Feedback LSP 2.10 DaVinci Linux Drivers www.ti.com SPRS566A–JULY 2009

2.3.3.1 Support and Constraints ...... 41 2.4 DM365 Video Drivers ...... 42 2.4.1 DM365 Video Display Driver ...... 43 2.4.1.1 Support and Constraints ...... 43 2.4.1.2 Supported IOCTLs...... 43 2.4.1.3 Performance and Benchmarks...... 44 2.4.2 DM365 Video Capture Driver ...... 45 2.4.2.1 Support and Constraints ...... 45 2.4.2.2 Performance and Benchmarks...... 46 2.4.3 DM365 Previewer Driver ...... 46 2.4.3.1 Support and Constraints ...... 46 2.4.4 DM365 Resizer Driver ...... 47 2.4.4.1 Support and Constraints ...... 47 2.4.5 DM365 Face Dectection Driver ...... 48 2.4.5.1 Support and Constraints ...... 48 2.4.6 DM365 Auto Expose/Auto White Balance (AEW) Driver...... 48 2.4.6.1 Support and Constraints ...... 48 2.4.7 DM365 AF Driver ...... 49 2.4.7.1 Support and Constraints ...... 49 2.5 Audio Driver ...... 50 2.5.1 Support and Constraints...... 51 2.5.2 DM644x Performance and Benchmarks...... 53 2.5.2.1 Audio ALSA Read and Performance Low Latency Desktop Preemption ...... 53 2.5.2.2 Audio ALSA Read and Write Performance Real Time Preemption...... 54 2.5.2.3 Audio OSS Read and Write Performance Low Latency Desktop Preemption...... 55 2.5.2.4 Audio OSS Read and Write Performance Real Time Preemption ...... 56 2.5.3 DM355 Performance and Benchmarks ...... 57 2.5.3.1 Audio ALSA Read and Write Performance Low Latency Desktop Preemption ...... 57 2.5.3.2 Audio Read and Write Performance Real Time Preemption...... 58 2.5.3.3 Audio OSS Read and Write Performance Low Latency Desktop Preemption...... 59 2.5.3.4 Audio OSS Read and Write Performance Real Time Preemption ...... 60 2.5.4 DM6467 Performance and Benchmarks ...... 61 2.5.4.1 Audio ALSA Read and Write Performance Low Latency Desktop Preemption ...... 61 2.5.4.2 Audio ALSA Read and Write Performance Real Time Preemption...... 62 2.5.4.3 Audio OSS Read and Write Performance Low Latency Desktop Preemption...... 63 2.5.4.4 Audio OSS Read and Write Performance Real Time Preemption ...... 64 2.5.5 DM365 Performance and Benchmarks ...... 65 2.5.5.1 Audio ALSA Read and Write Performance Low Latency Desktop Preemption ...... 65 2.5.5.2 Audio ALSA Read and Write Performance Real Time Preemption...... 66 2.5.5.3 Audio OSS Read and Write Performance Low Latency Desktop Preemption...... 67 2.5.5.4 Audio OSS Read and Write Performance Real Time Preemption ...... 68 2.6 Ethernet Driver...... 69 2.6.1 Support and Constraints...... 69 2.6.2 DM644x Performance and Benchmarks...... 70 2.6.2.1 Cross Cable Low Latency Desktop Preemption ...... 70 2.6.2.2 Cross Cable Real Time Preemption ...... 71 2.6.3 DM355 Performance and Benchmarks ...... 72 2.6.3.1 Straight Cable Low Latency Desktop Preemption...... 72 2.6.3.2 Straight Cable Real Time Preemption ...... 73 2.6.4 DM365 Performance and Benchmarks ...... 74 2.6.4.1 Cross Cable Low Latency Desktop Preemption ...... 74 2.6.4.2 Cross Cable Real Time Preemption ...... 75 2.7 USB Drivers...... 76

Contents 3 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com

2.7.1 Support and Constraints...... 76 2.7.2 DM644x Performance and Benchmarks...... 78 2.7.2.1 USB CDC / RNDIS DMA Low Latency Desktop and Real Time Preemption...... 78 2.7.2.2 USB ISO Video Low Latency Desktop Preemption ...... 78 2.7.2.3 USB ISO Video Real Time Preemption...... 79 2.7.2.4 USB MSC Host DMA Low Latency Desktop Preemption ...... 79 2.7.2.5 USB MSC Host DMA Real Time Preemption...... 80 2.7.3 DM355 Performance and Benchmarks ...... 81 2.7.3.1 USB CDC/RNDIS DMA Low Latency Desktop and Real Time Preemption ...... 81 2.7.3.2 USB ISO Video Low Latency Desktop Preemption ...... 81 2.7.3.3 USB ISO Video Real Time Preemption...... 82 2.7.3.4 USB MSC Host DMA Low Latency Desktop Preemption ...... 82 2.7.3.5 USB MSC Host DMA Real Time Preemption...... 83 2.7.4 DM6467 Performance and Benchmarks ...... 84 2.7.4.1 USB CDC/RNDIS DMA Low Latency Desktop and Real Time Preemption ...... 84 2.7.4.2 USB ISO Video Low Latency Desktop Preemption ...... 84 2.7.4.3 USB ISO Video Real Time Preemption...... 85 2.7.4.4 USB MSC Host DMA Low Latency Desktop Preemption ...... 85 2.7.4.5 USB MSC Host DMA Real Time Preemption...... 86 2.7.5 DM365 Performance and Benchmarks ...... 87 2.7.5.1 USB CDC/RNDIS DMA Low Latency Desktop and Real Time Preemption ...... 87 2.7.5.2 USB ISO Video Low Latency Desktop Preemption ...... 87 2.7.5.3 USB ISO Video Real Time Preemption...... 88 2.7.5.4 USB MSC Host DMA Low Latency Desktop Preemption ...... 88 2.7.5.5 USB MSC Host DMA Real Time Preemption...... 89 2.8 IDE ATA Driver ...... 90 2.8.1 Support and Constraints...... 91 2.9 MMC/SD Driver...... 92 2.9.1 Support and Constraints...... 92 2.9.2 DM644x Performance and Benchmarks...... 93 2.9.2.1 MMC DMA Low Latency Desktop Preemption...... 93 2.9.2.2 MMC DMA Real Time Preemption ...... 94 2.9.3 DM355 Performance and Benchmarks ...... 95 2.9.3.1 MMC DMA Low Latency Desktop Preemption...... 95 2.9.3.2 MMC DMA Real Time Preemption ...... 96 2.9.4 DM6467 Performance and Benchmarks ...... 97 2.9.4.1 MMC DMA Low Latency Desktop Preemption...... 97 2.9.4.2 MMC DMA Real Time Preemption ...... 98 2.9.5 DM365 Performance and Benchmarks ...... 99 2.9.5.1 MMC DMA Low Latency Desktop Preemption...... 99 2.9.5.2 MMC DMA Real Time Preemption...... 100 2.10 NAND Driver...... 101 2.10.1 Support and Constraints ...... 101 2.10.2 DM644x Performance and Benchmarks ...... 102 2.10.2.1 NAND Polled Low Latency Desktop Preemption ...... 102 2.10.2.2 NAND Polled Real Time Preemption ...... 103 2.10.3 DM355 Performance and Benchmarks ...... 104 2.10.3.1 NAND Polled Low Latency Desktop Preemption ...... 104 2.10.3.2 NAND Polled Real Time Preemption ...... 105 2.10.4 DM6467 Performance and Benchmarks ...... 106 2.10.4.1 NAND Polled Low Latency Desktop Preemption ...... 106 2.10.4.2 NAND Polled Real Time Preemption ...... 107 2.10.5 DM365 Performance and Benchmarks ...... 108

4 Contents Submit Documentation Feedback LSP 2.10 DaVinci Linux Drivers www.ti.com SPRS566A–JULY 2009

2.10.5.1 NAND Polled Low Latency Desktop Preemption ...... 108 2.10.5.2 NAND Polled Real Time Preemption ...... 109 2.11 NOR Driver ...... 110 2.11.1 DM644x Performance and Benchmarks ...... 111 2.11.1.1 NOR Low Latency Desktop Preemption...... 111 2.11.1.2 NOR Real Time Preemption ...... 112 2.12 UART Driver ...... 113 2.12.1 Support and Constraints ...... 113 2.13 I2C Driver...... 114 2.13.1 Support and Constraints ...... 114 2.13.2 DM644x Performance and Benchmarks ...... 115 2.13.2.1 I2C Low Latency Desktop Preemption ...... 115 2.13.2.2 I2C Real Time Preemption...... 116 2.13.3 DM355 Performance and Benchmarks ...... 117 2.13.3.1 I2C Low Latency Desktop Preemption ...... 117 2.13.3.2 I2C Real Time Preemption...... 118 2.13.4 DM6467 Performance and Benchmarks ...... 119 2.13.4.1 I2C Low Latency Desktop Preemption ...... 119 2.13.4.2 I2C Real Time Preemption...... 120 2.13.5 DM365 Performance and Benchmarks ...... 121 2.13.5.1 I2C Low Latency Desktop Preemption ...... 121 2.13.5.2 I2C Real Time Preemption...... 122 2.14 SPI Driver ...... 123 2.14.1 Support and Constraints ...... 123 2.14.2 DM355 Performance and Benchmarks ...... 124 2.14.2.1 SPI Driver Read/Write Low Latency Desktop Preemption ...... 124 2.14.2.2 SPI Read/Write Real Time Preemption...... 125 2.14.3 DM6467 Performance and Benchmarks ...... 126 2.14.3.1 SPI Driver Read/Write Low Latency Desktop Preemption ...... 126 2.14.3.2 SPI Read/Write Real Time Preemption...... 127 2.14.4 DM365 Performance and Benchmarks ...... 128 2.14.4.1 SPI Driver Read/Write Low Latency Desktop Preemption ...... 128 2.14.4.2 SPI Read/Write Real Time Preemption...... 129 2.15 TSIF Driver ...... 130 2.15.1 Support and Constraints ...... 130 2.16 VLYNQ Driver ...... 132 2.16.1 Support and Constraints ...... 132 2.17 PWM Driver...... 133 2.17.1 Support and Constraints ...... 133 2.18 EDMA Driver ...... 134 2.18.1 DM644x Performance and Benefits ...... 135 2.18.1.1 EDMA Memory to Memory Low Latency Desktop Preemption...... 135 2.18.1.2 EDMA Memory to Memory Real Time Preemption ...... 136 2.18.2 DM355 Performance and Benefits...... 137 2.18.2.1 EDMA Memory to Memory Low Latency Desktop Preemption...... 137 2.18.2.2 EDMA-Memory to Memory Real Time Preemption ...... 138 2.18.3 DM6467 Performance and Benefits ...... 139 2.18.3.1 EDMA Memory to Memory Low Latency Desktop Preemption...... 139 2.18.3.2 EDMA-Memory to Memory Real Time Preemption ...... 140 2.18.4 DM365 Performance and Benefits...... 141 2.18.4.1 EDMA Memory to Memory Low Latency Desktop Preemption...... 141 2.18.4.2 EDMA-Memory to Memory Real Time Preemption ...... 142 2.19 PCI Slave Driver ...... 143

Contents 5 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com 3 U-Boot Overview...... 144 3.1 Functions...... 144

6 Contents Submit Documentation Feedback LSP 2.10 DaVinci Linux Drivers www.ti.com SPRS566A–JULY 2009 List of Figures 2-1 DM644x Video Driver Architecture...... 23 2-2 DM355 Video Driver Architecture ...... 30 2-3 DM6467 Video Driver Architecture ...... 36 2-4 DM365 Video Driver Architecture ...... 42 2-5 DM644x, DM355 and DM365 Audio Driver Architecture...... 50 2-6 DM6467 Audio Driver Architecture ...... 50 2-7 DM644x Audio ALSA Write and Read Performance – LLD ...... 53 2-8 DM644x Audio ALSA Write and Read Performance – RT...... 54 2-9 DM644x Audio OSS Write and Read Performance – LLD ...... 55 2-10 DM644x Audio OSS Write and Read Performance – RT...... 56 2-11 DM355 Audio Write and Read Performance – LLD ...... 57 2-12 DM355 Audio Write and Read Performance – RT...... 58 2-13 DM355 Audio OSS Write and Read Performance – LLD...... 59 2-14 DM355 Audio OSS Write and Read Performance – RT ...... 60 2-15 DM6467 Audio ALSA Write and Read Performance – LLD ...... 61 2-16 DM6467 Audio ALSA Write and Read Performance – RT ...... 62 2-17 DM6467 Audio OSS Write and Read Performance – LLD ...... 63 2-18 DM6467 Audio OSS Write and Read Performance – RT...... 64 2-19 DM365 Audio ALSA Read and Write Performance – LLD...... 65 2-20 DM365 Audio ALSA Write and Read Performance – RT...... 66 2-21 DM365 Audio OSS Read and Write Performance – LLD...... 67 2-22 DM365 Audio OSS Write and Read Performance – RT ...... 68 2-23 Linux Kernel Ethernet Driver...... 69 2-24 DM644x CPMAC 100 Performance – LLD ...... 70 2-25 DM644x CPMAC 100 Performance – RT...... 71 2-26 DM355 CPGMAC 100 Performance – LLD...... 72 2-27 DM355 CPGMAC 100 Performance – RT ...... 73 2-28 DM365 TCP Performance – LLD ...... 74 2-29 DM365 TCP Performance – RT...... 75 2-30 Linux Kernel USB Driver ...... 76 2-31 DM644x USB CDC/RNDIS DMA Performance ...... 78 2-32 DM644x USB MSC Host DMA Performance – LLD ...... 79 2-33 DM644x USB MSC Host DMA Performance – RT ...... 80 2-34 DM355 USB CDC/RNDIS DMA Performance...... 81 2-35 DM355 USB MSC Host DMA Performance – LLD ...... 82 2-36 DM355 USB MSC Host DMA Performance – RT...... 83 2-37 DM6467 USB CDC/RNDIS DMA Performance ...... 84 2-38 DM6467 USB MSC Host DMA Performance – LLD...... 85 2-39 DM6467 USB MSC Host DMA Performance – RT ...... 86

List of Figures 7 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com

2-40 DM365 USB CDC/RNDIS Performance...... 87 2-41 DM365 USB MSC Host DMA Performance – LLD ...... 88 2-42 DM365 USB MSC Host DMA Performance – RT...... 89 2-43 Linux Kernel IDE Driver ...... 90 2-44 Linux Kernel MMC Driver Architecture ...... 92 2-45 DM644x MMC DMA Performance – LLD ...... 93 2-46 DM644x MMC DMA Performance – RT...... 94 2-47 DM355 MMC DMA Performance – LLD...... 95 2-48 DM355 MMC DMA Performance – RT ...... 96 2-49 DM6467 MMC DMA Performance – LLD ...... 97 2-50 DM6467 MMC DMA Performance – RT ...... 98 2-51 DM365 MMC DMA Performance – LLD...... 99 2-52 DM365 MMC DMA Performance – RT ...... 100 2-53 Linux Kernel NAND Driver Architecture ...... 101 2-54 DM644x NAND Polled Performance – LLD ...... 102 2-55 DM644x NAND Polled Performance – RT ...... 103 2-56 DM355 NAND Polled Performance – LLD ...... 104 2-57 DM355 NAND Polled Performance – RT...... 105 2-58 DM6467 NAND Polled Performance – LLD...... 106 2-59 DM6467 NAND Polled Performance – RT ...... 107 2-60 DM365 NAND Polled Performance – LLD ...... 108 2-61 DM365 NAND Polled Performance – RT...... 109 2-62 Linux Kernel NOR Driver Architecture ...... 110 2-63 DM644x NOR Polled Performance – LLD...... 111 2-64 DM644x NOR Polled Performance – RT ...... 112 2-65 Linux Kernel UART Driver Architecture...... 113 2-66 Linux Kernel I2C Driver Architecture ...... 114 2-67 DM644x I2C Performance – LLD ...... 115 2-68 DM644x I2C Performance – RT...... 116 2-69 DM355 I2C Performance – LLD...... 117 2-70 DM355 I2C Performance – RT ...... 118 2-71 DM6467 I2C Performance – LLD ...... 119 2-72 DM6467 I2C Performance – RT ...... 120 2-73 DM365 I2C Performance – LLD...... 121 2-74 DM365 I2C Performance – RT ...... 122 2-75 Linux Kernel SPI Driver Architecture...... 123 2-76 DM355 SPI Read / Write Performance – LLD ...... 124 2-77 DM355 SPI Read/Write Performance – RT ...... 125 2-78 DM6467 SPI Read/Write Performance – LLD ...... 126 2-79 DM6467 SPI Read/Write Performance – RT ...... 127 2-80 DM365 SPI Read / Write Performance – LLD ...... 128

8 List of Figures Submit Documentation Feedback LSP 2.10 DaVinci Linux Drivers www.ti.com SPRS566A–JULY 2009

2-81 DM365 SPI Read/Write Performance – RT ...... 129 2-82 VLYNQ Diagram ...... 132 2-83 DM644x EDMA Memory to Memory Performance – LLD ...... 135 2-84 DM644x EDMA Memory to Memory Performance – RT ...... 136 2-85 DM355 EDMA Memory to Memory Performance – LLD ...... 137 2-86 DM355 EDMA Memory to Memory Performance – RT...... 138 2-87 DM6467 EDMA Memory to Memory Performance – LLD...... 139 2-88 DM6467 EDMA Memory to Memory Performance – RT ...... 140 2-89 DM365 EDMA Memory to Memory Performance – LLD ...... 141 2-90 DM365 EDMA Memory to Memory Performance – RT...... 142 2-91 PCI Slave Driver Diagram ...... 143

List of Figures 9 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com List of Tables 1-1 Device Drivers Summary...... 17 1-2 DaVinci Limitations Summary ...... 19 1-3 DM644x Driver Limitations Summary...... 19 1-4 DM6467 Driver Limitations Summary ...... 19 1-5 DM365 Driver Limitations Summary...... 19 2-1 DM644x VPBE FBDEV IOCTLs Supported ...... 25 2-2 DM644x VPBE-FBDEV Performance Values – LLD ...... 25 2-3 DM644x VPBE-FBDEV Performance Values – RT ...... 26 2-4 DM644x VPFE-V4L2 IOCTLs ...... 26 2-5 DM644x VPFE-V4L2 Performance Values – LLD ...... 27 2-6 DM644x VPFE-V4L2 Performance Values – RT ...... 27 2-7 DM644x Preview Engine IOCTLs...... 27 2-8 DM644x Resizer Driver Supported IOCTLs ...... 28 2-9 DM644x AEW IOCTLs ...... 29 2-10 DM644x AF IOCTLs ...... 29 2-11 DM355 VPBE-FBDEV IOCTLs ...... 31 2-12 DM355 VPBE-FBDEV Performance – LLD...... 32 2-13 DM355 VPBE-FBDEV Performance – RT ...... 32 2-14 DM355 VPFE-V4L2 IOCTLs...... 33 2-15 DM355 VPFE-V4L2 Performance – LLD...... 33 2-16 DM355 VPFE-V4L2 Performance – RT ...... 33 2-17 DM355 Previewer-Resizer Driver Supported IOCTLs...... 34 2-18 DM355 AEW IOCTLs...... 35 2-19 DM355 AF IOCTLs...... 35 2-20 DM6467 VPIF Display IOCTLs...... 37 2-21 DM6467 VPIF Display Performance Values – LLD...... 38 2-22 DM6467 VPIF Display Performance Values – RT ...... 38 2-23 DM6467 VPIF Capture IOCTLs ...... 39 2-24 DM6467 VPIF Capture Performance Values – LLD...... 40 2-25 DM6467 VPIF Capture Performance Values – RT ...... 40 2-26 DM6467 VDCE IOCTLs ...... 41 2-27 DM365 VPBE FBDEV IOCTLs Supported...... 44 2-28 DM365 VPBE-FBDEV Performance – LLD...... 44 2-29 DM365 VPBE-FBDEV Performance – RT ...... 45 2-30 DM365 VPFE-V4L2 IOCTLs...... 45 2-31 DM365 VPFE-V4L2 Performance Values – LLD ...... 46 2-32 DM365 VPFE-V4L2 Performance Values – RT ...... 46 2-33 DM365 Preview Engine IOCTLs ...... 47 2-34 DM365 Resizer Driver Supported IOCTLs...... 47

10 List of Tables Submit Documentation Feedback LSP 2.10 DaVinci Linux Drivers www.ti.com SPRS566A–JULY 2009

2-35 DM365 Face Detection IOCTLs...... 48 2-36 DM365 AEW IOCTLs...... 48 2-37 DM365 AF IOCTLs...... 49 2-38 Audio Driver Supported ALSA IOCTLs...... 51 2-39 DM644x/DM355/DM365 Specific Audio IOCTLs...... 52 2-40 DM6467 Specific Audio IOCTLs ...... 52 2-41 DM644x Audio ALSA Read Performance – LLD...... 53 2-42 DM644x Audio ALSA Write Performance – LLD...... 53 2-43 DM644x Audio ALSA Read Performance – RT ...... 54 2-44 DM644x Audio ALSA Write Performance – RT ...... 54 2-45 DM644x Audio OSS Read Performance – LLD...... 55 2-46 DM644x Audio OSS Write Performance – LLD ...... 55 2-47 DM644x Audio OSS Read Performance – RT ...... 56 2-48 DM644x Audio OSS Write Performance – RT ...... 56 2-49 DM355 Audio Read Performance – LLD...... 57 2-50 DM355 Audio Write Performance – LLD...... 57 2-51 DM355 Audio Read Performance – RT ...... 58 2-52 DM355 Audio Write Performance – RT ...... 58 2-53 DM355 Audio OSS Read Performance – LLD ...... 59 2-54 DM355 Audio OSS Write Performance – LLD ...... 59 2-55 DM355 Audio OSS Read Performance – RT ...... 60 2-56 DM355 Audio OSS Write Performance – RT...... 60 2-57 DM6467 Audio ALSA Read Performance – LLD ...... 61 2-58 DM6467 Audio ALSA Write Performance – LLD...... 61 2-59 DM6467 Audio ALSA Read Performance – RT...... 62 2-60 DM6467 Audio ALSA Write Performance – RT ...... 62 2-61 DM6467 Audio OSS Read Performance – LLD...... 63 2-62 DM6467 Audio OSS Write Performance – LLD...... 63 2-63 DM6467 Audio OSS Read Performance – RT ...... 64 2-64 DM6467 Audio OSS Write Performance – RT ...... 64 2-65 DM365 Audio ALSA Read Performance – LLD ...... 65 2-66 DM365 Audio ALSA Write Performance – LLD ...... 65 2-67 DM365 Audio ALSA Read Performance – RT ...... 66 2-68 DM365 Audio ALSA Write Performance – RT ...... 66 2-69 DM365 Audio OSS Read Performance – LLD ...... 67 2-70 DM365 Audio OSS Write Performance – LLD ...... 67 2-71 DM365 Audio OSS Read Performance – RT ...... 68 2-72 DM365 Audio OSS Write Performance – RT...... 68 2-73 DM644x CPMAC 100 Performance Values – LLD ...... 70 2-74 DM644x CPMAC 100 Performance Values – RT...... 71 2-75 DM355 CPGMAC 100 Performance Values – LLD...... 72

List of Tables 11 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com

2-76 DM355 CPGMAC 100 Performance Values – RT ...... 73 2-77 DM365 TCP Performance Values – LLD ...... 74 2-78 DM365 TCP Performance Values – RT...... 75 2-79 DM644x USB CDC/RNDIS DMA Performance Values ...... 78 2-80 DM644x USB ISO Video Performance Values – LLD...... 78 2-81 DM644x USB ISO Video Performance Values – RT ...... 79 2-82 DM644x USB MSC Host DMA Read Performance Values – LLD...... 79 2-83 DM644x USB MSC Host DMA Write Performance Values – LLD...... 79 2-84 DM644x USB MSC Host DMA Read Performance Values – RT ...... 80 2-85 DM644x USB MSC Host DMA Write Performance Values – RT ...... 80 2-86 DM355 USB CDC/RNDIS DMA Performance Values...... 81 2-87 DM355 USB ISO Video Performance Values – LLD ...... 81 2-88 DM355 USB ISO Video Performance Values – RT ...... 82 2-89 DM355 USB MSC Host DMA Read Performance Values – LLD ...... 82 2-90 DM355 USB MSC Host DMA Write Performance Values – LLD ...... 83 2-91 DM355 USB MSC Host DMA Read Performance Values – RT ...... 83 2-92 DM355 USB MSC Host DMA Write Performance Values – RT ...... 83 2-93 DM6467 USB CDC/RNDIS DMA Performance Values ...... 84 2-94 DM6467 USB ISO Video Performance Values – LLD...... 84 2-95 DM6467 USB ISO Video Performance Values – RT...... 85 2-96 DM6467 USB MSC Host DMA Read Performance Values – LLD ...... 85 2-97 DM6467 USB MSC Host DMA Write Performance Values – LLD...... 86 2-98 DM6467 USB MSC Host DMA Read Performance Values – RT...... 86 2-99 DM6467 USB MSC Host DMA Write Performance Values – RT ...... 86 2-100 DM365 USB CDC/RNDIS DMA Performance Values...... 87 2-101 DM365 USB ISO Video Performance Values – LLD ...... 87 2-102 DM365 USB ISO Video Performance Values – RT ...... 88 2-103 DM365 USB MSC Host DMA Read Performance Values – LLD ...... 88 2-104 DM365 USB MSC Host DMA Write Performance Values – LLD ...... 88 2-105 DM365 USB MSC Host DMA Read Performance Values – RT ...... 89 2-106 DM365 USB MSC Host DMA Write Performance Values – RT ...... 89 2-107 Supported ATA IOCTLs ...... 91 2-108 DM644x MMC DMA Read Performance Values – LLD...... 93 2-109 DM644x MMC DMA Write Performance Values – LLD ...... 93 2-110 DM644x MMC DMA Read Performance Values – RT ...... 94 2-111 DM644x MMC DMA Write Performance Values – RT ...... 94 2-112 DM355 MMC DMA Read Performance Values – LLD ...... 95 2-113 DM355 MMC DMA Write Performance Values – LLD ...... 95 2-114 DM355 MMC DMA Read Performance Values – RT...... 96 2-115 DM355 MMC DMA Write Performance Values – RT...... 96 2-116 DM6467 MMC DMA Read Performance Values – LLD...... 97

12 List of Tables Submit Documentation Feedback LSP 2.10 DaVinci Linux Drivers www.ti.com SPRS566A–JULY 2009

2-117 DM6467 MMC DMA Write Performance Values – LLD...... 97 2-118 DM6467 MMC DMA Read Performance Values – RT ...... 98 2-119 DM6467 MMC DMA Write Performance Values – RT ...... 98 2-120 DM365 MMC DMA Read Performance Values – LLD ...... 99 2-121 DM365 MMC DMA Write Performance Values – LLD ...... 99 2-122 DM365 MMC DMA Read Performance Values – RT ...... 100 2-123 DM365 MMC DMA Write Performance Values – RT ...... 100 2-124 Supported NAND Driver IOCTLs ...... 101 2-125 DM644x NAND Polled Read Performance Values – LLD...... 102 2-126 DM644x NAND Polled Write Performance Values – LLD...... 102 2-127 DM644x NAND Polled Read Performance Values – RT ...... 103 2-128 DM644x NAND Polled Write Performance Values – RT ...... 103 2-129 DM355 NAND Polled Read Performance Values – LLD ...... 104 2-130 DM355 NAND Polled Write Performance Values – LLD ...... 104 2-131 DM355 NAND Polled Read Performance Values – RT ...... 105 2-132 DM355 NAND Polled Write Performance Values – RT...... 105 2-133 DM6467 NAND Polled Read Performance Values – LLD...... 106 2-134 DM6467 NAND Polled Write Performance Values – LLD...... 106 2-135 DM6467 NAND Polled Read Performance Values – RT...... 107 2-136 DM6467 NAND Polled Write Performance Values – RT ...... 107 2-137 DM365 NAND Polled Read Performance Values – LLD ...... 108 2-138 DM365 NAND Polled Write Performance Values – LLD ...... 108 2-139 DM365 NAND Polled Read Performance Values – RT ...... 109 2-140 DM365 NAND Polled Write Performance Values – RT...... 109 2-141 DM644x NOR Polled Read Performance Values – LLD ...... 111 2-142 DM644x NOR Polled Write Performance Values – LLD ...... 111 2-143 DM644x NOR Polled Read Performance Values – RT...... 112 2-144 DM644x NOR Polled Write Performance Values – RT...... 112 2-145 UART Supported IOCTLs ...... 113 2-146 I2C Driver Supported IOCTLs ...... 115 2-147 DM644x I2C Read Performance – LLD ...... 115 2-148 DM644x I2C Write Performance – LLD ...... 115 2-149 DM644x I2C Read Performance – RT ...... 116 2-150 DM644x I2C Write Performance – RT ...... 116 2-151 DM355 I2C Read Performance – LLD ...... 117 2-152 DM355 I2C Write Performance – LLD ...... 117 2-153 DM355 I2C Read Performance – RT...... 118 2-154 DM355 I2C Write Performance – RT...... 118 2-155 DM6467 I2C Read Performance – LLD...... 119 2-156 DM6467 I2C Write Performance – LLD ...... 119 2-157 DM6467 I2C Read Performance – RT ...... 120

List of Tables 13 LSP 2.10 DaVinci Linux Drivers SPRS566A–JULY 2009 www.ti.com

2-158 DM6467 I2C Write Performance – RT ...... 120 2-159 DM365 I2C Read Performance – LLD ...... 121 2-160 DM365 I2C Write Performance – LLD ...... 121 2-161 DM365 I2C Read Performance – RT...... 122 2-162 DM365 I2C Write Performance – RT...... 122 2-163 DM355 SPI Read/Write Performance Values – LLD...... 124 2-164 DM355 SPI Read/Write Performance Values – RT ...... 125 2-165 DM6467 SPI Read/Write Performance Values – LLD ...... 126 2-166 DM6467 SPI Read/Write Performance Values – RT ...... 127 2-167 DM365 SPI Read/Write Performance Values – LLD...... 128 2-168 DM365 SPI Read/Write Performance Values – RT ...... 129 2-169 TSIF Driver-Supported IOCTLs...... 131 2-170 PWM Driver-Supported IOCTLs ...... 133 2-171 DM644x and DM355 EDMA3 Resource Details...... 134 2-172 DM646x EDMA3 Resource Details...... 134 2-173 DM365 EDMA3 Resource Details ...... 134 2-174 DM644x A- EDMA Memory to Memory Performance Values – LLD ...... 135 2-175 DM644x AB-Sync EDMA Memory to Memory Performance Values – LLD...... 135 2-176 DM644x A-Sync EDMA Memory to Memory Performance Values – RT...... 136 2-177 DM644x AB-Sync EDMA Memory to Memory Performance Values – RT ...... 136 2-178 DM355 A-Sync EDMA Memory to Memory Performance Values – LLD...... 137 2-179 DM355 AB-Sync EDMA Memory to Memory Performance Values – LLD ...... 137 2-180 DM355 A-Sync EDMA Memory to Memory Performance Values – RT ...... 138 2-181 DM355 AB-Sync EDMA Memory to Memory Performance Values – RT ...... 138 2-182 DM6467 A-Sync EDMA Memory to Memory Performance Values – LLD ...... 139 2-183 DM6467 AB-Sync EDMA Memory to Memory Performance Values – LLD ...... 139 2-184 DM6467 A-Sync EDMA Memory to Memory Performance Values – RT...... 140 2-185 DM6467 AB-Sync EDMA Memory to Memory Performance Values – RT...... 140 2-186 DM365 A-Sync EDMA Memory to Memory Performance Values – LLD...... 141 2-187 DM365 AB-Sync EDMA Memory to Memory Performance Values – LLD ...... 141 2-188 DM365 A-Sync EDMA Memory to Memory Performance Values – RT ...... 142 2-189 DM365 AB-Sync EDMA Memory to Memory Performance Values – RT ...... 142 2-190 PCI Slave Driver-Supported IOCTLs...... 143 3-1 U-Boot, Kernel and Locations...... 144

14 List of Tables Submit Documentation Feedback the other formative PRODUCT • • • • • • • • 1.1 1 www.ti.com DaVinci right – – – – – – – – Video – – – Supports Supports Interface Supports () arm_v5t_le Compiled Built Platforms EVM, Developed – – – – Supported specifications to or Features LSP The Through Supports Supports Supports Supports Supports Supported NAND NAND NAND TMS320DM365 TMS320DM6467 TMS320DM355 TMS320DM644x • through • • • With DM644x using Daughter Display using only) Drivers FBDev Composite, change is design PREVIEW Instruments Please with a DM355 Supports and Supports RGB565, Supports Supports Processing trademark following or Toolchains phase are Alphablending 2.10 resolutions discontinue THS8200 FBDev (ABI) boot boot boot these U-boot ARM9 Linux with and be design 8 Devices: information and Drivers (glibc) Linux only) of the bits aware Graphic HD VGA 480p, NTSC, Card EVM, development. semiconductor on DaVinci™ V4L2-based goals. of for for for MontaVista Component Tested RGB888, bootmodes: these Linux both Color Programmable Display Kernel GNU/Linux (720p and per Texas features DM644x, that V4L2 Output Back DM365 DM355 DM644x concerns and Texas Daughter DM6467, 576p products PAL pixel on V4L2-based an the Characteristic On-screen Instruments. Lookup FBDev Instruments / arm_v5t_le_uclibc on version using Interface: important Component End 1080i) Panning (DM644x without on products and video products Using modes are DaVinci™ DM355 Professional Linux Video interfaces Application S-video, and (VPBE) Card notice. RGBA Interface: data FBDev reserves supported Table Video in notice pipelines display 2.6.18 LogicPD DM365 and and Display the Video Display and and (DM355 Drivers disclaimers concerning interface on for DM644x Display Driver DM365 using DM365 modes OSD EVM Binary 1, v5.0.0 (OSD) LCD and 2, thereto 4 availability, appears • standard – – – – – – – – – – (VPFE) Video – – – – – – at Supports Supports Supports Supports Supports Supports Supports Supports Supports Supported Supports Supports Supports Supports Supports Supports Resizer 4x (DM644x YUYV/UYVY Image only) Image formats and interface Composite video Component • video (DM644x to only) preview on using and (Previewer) UYVY only) 0.0625x upscaling YUYV/UYVY CCDC balance the warranty, SDRAM. and Supports end the Processing YUV downscaling and capture windows previewer-resizer or of Input sensor sensor ccdc Downscaling Driver (Resizer) this and (AEW), YUV only) only) 420 through and Input Conversion Bayer 8/12-bit 8/10-bit YUYV HD(720p/1080i) NTSC/PAL Composite, YUYV4:2:2, face chaining Conversion Conversion Auto capturing up Copyright on LSP interface document. as interfaces data Data using format use resize Cropping Semi to 420 MT9P031 MT9T031 DM644x, drivers detection (DM644x pixel well Subsystem Exposure, Image in and 4:2:2, 2.10 4x pattern output © up using critical raw raw TVP7002 Semi Previewer planar of 2009, and (on as (Previewer) the Auto formats through to up on DaVinci UYVY4:2:2, previewer S-Video, of of of capture capture Upscaling UYVY upscaling using applications Texas DM355 DM355 0.0625x downscaling planar (DM355 (DM365 IPIPE processed output only) to driver S-Video to Bayer Bayer Bayer on Focus (DM365 Auto 0.25x Front do (DM365 Instruments SPRS566A 4:2:2 on Component V4L2-based TVP driver Linux driver from from On (DM365 and format and and Input input Input using White (Resizer) as each and only) and of (AF) using and up from End RGB888 the only) 5146 formats, Texas well DM365 output DM365 only) Micron Micron – Incorporated to DM365 (DM355 Drivers resizer JULY to Into up of on CCDC fly 1x only) 4x as the to 2009 to

PRODUCT PREVIEW for data and Half big From Feedback AIC33 AIC32 Disk www.ti.com small data NAND, driver DM6467 DM644x, driver Ethernet and USB and speed for for DM355 classes OTG and and speeds, classes only) DM365; Hard with only) DM365) the network speeds, progressive Ethernet class: ISO and Playback NOR) High on DM6467), channels EMAC) network IDE Sound Davinci Davinci and format format and mode mode (optional) Ethernet Inventra and DM644x, Documentation and RNDIS 16 and to and DM644x, USB) (DM355 for for and Ethernet operation on DM6467 memory of data data NAND, Ethernet only) DM365 transmitting storage Gadget framework on receiving Linux of slave slave HID and (external Full DM6467 Submit DM355 DM355 data (internal Gigabit and in in for Davinci receiving mode mode Mbps and flash Record and for based Mbps DM365, interlaced Host, 2.10 Mass Hub, CDC Interface mode for DM365 McBSP McASP (Ethernet, duplex (ALSA) and (optional) DM365 MMC/SD, driver DM644x, DM6467 network DM365, 10/100 1000 Auto-Negotiation USB USB USB USB USB ATA NAND Advanced Audio McBSP I2S McASP I2S CPMAC DM9000A internal Edge-Padding-mode both processing master master and only) DM355 (DM644x, Full duplex modes and in in for for stack gadget access (ATA, (DM644x, and DM365 Full transmitting Blending Range-mapping-mode Half and and driver (partial) driver devices HDD MMC/SD under (DM644x, block simultaneously Architecture AIC33 AIC32 Codec DM355 DM644x, Codec DM6467 transmitting (DM644x controller) receiving for (DM6467 • • formats Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports Supports – – – – – – – – Storage – – Audio – – – – – – Communication – – – – – – • • • to and only NTSC NTSC only and and in in in High High 422 420 on on but but , , support support channels. on on channels. TVP5147 TVP7002 ADV-7343 YUV YUV will will services services V4L2-based V4L2-based (576i) (576i) (optional) support support capture display composite composite Display (optional) from from Capture operations operations VBI operations VBI software Captioning Captioning software will will through using using through Engine(VDCE) through (SD) (SD) Drivers Drivers Incorporated channels channels (VPIF) display display Linux capture display S-Video, S-Video, ,HD(720p/1080i) ,HD(720p/1080i) drivers drivers Closed Closed DM6467 DM6467 DM6467 capture display following following following following following capture output channel channel (optional) capture (optional) (optional) (optional) Linux on on interface interface PAL PAL conversion conversion conversion on on on Instruments (HD) (HD) and and the the two the the the NTSC(480i),PAL SD NTSC(480i),PAL TV two Definition Definition software software HD on on Conversion 420 422 Interface(VPIF) Interface DaVinci™ capture Display 2009 Texas the the (video0) (video2) 2.10 DaVinci Data Port Port Blending Range-mapping-mode Resizing Chroma YUV Resizing Chroma YUV Resizing Chroma CGMS display WSS display WSS CGMS JULY 2009, – © LSP • • Transcodec-mode • • Postcodec-mode • • Precodec-mode • • Standard one Definition • • component Video encoder Both • resolutions ED(480p/576p) Both Standard one Definition • resolutions ED(480p/576p) component Video encoder Supports Supports Supported Supports Supports Supports Supports Supported Supports Supports Supports Supports Supported Supports 2.10 – – Video – – – – – Video – – – – – Video – – Copyright • • SPRS566A • LSP

PRODUCT PREVIEW Submit 1.2 • • www.ti.com Auto Balance Auto IPIPE Resizer Preview Video (VPFE) Video (VPFE) Video (VPBE) Video (VPBE) Video Peripheral Transport – – – – Serial – – Focus Exposure/Auto Port Processing Processing Processing Processing Documentation Description Supports Supports Supports Supports Supports Supports DM644x/DM355/DM365/DM6467 drivers. production development MontaVista DM644x, MontaVista TI UART Encoders/Decoders only) Controller interface SD interface with DM365 block Engine (AEW) DaVinci™ Interface (SPI, (AF) on small access (UART0 DM644x, Stream Front Front Back Back Table UART, on to DM355, (VPIF) White Serial I I communication High-speed NOR 2 2 hardware (DM644x, block C Feedback Linux Linux external End End End End Linux DM6467 on Interface Interface for interface Interface 1-1 Flash I DM355 2 Communication access C) the Pro DM6467, DM365, Drivers 2.6.18 Auto collection Auto up Input Convert up Input Convert 720p) (NTSC, Enables resolutions Enables resolutions Enables resolutions Enables resolutions Enables Description summarizes platforms. DM355 flash and v5.0.0. Memory DaVinci to1/16x to MMC/SD to to and Focus Exposure/Auto image image 1/4x for standard (TSIF) (DM644x Audio/Video MSP430 are DM355 PAL) kernel Bayer Bayer through Video Video Video Video Video and cards: DM355, of console) DM365 and (NTSC, (NTSC, (NTSC, (NTSC, The for up-scaling up-scaling video Table incorporated This ED platforms for DM6467 input input Capture Capture Capture Display Display statistical (4-bit/1-bit) resolutions based DM365 Linux (480p, Using LSP to MMC Storage data only) PAL) PAL) PAL) PAL) document and SPI to to White 1-1. run YCbCr YCbCr for for up up and for for consists 576p) on collection and and Driver SD SD to to Device Digital Balance SD SD and Display on MontaVista 4x 4x in ED standard standard format format standard standard and and and the provides the resolutions are of of support HD Media for for Drivers downscaling downscaling MontaVista video optimized statistical ARM926 (1080i, provided SD • • Linux – – – – – – – Miscellaneous – PCI – – – data an System-on-Chips in Summary VLYNQ CIR Timers WDT GPIO PWM EDMA Supports Supports Supports Supported over mode either mode either overview Slave the Pro multimedia AF AEW Resizer Previewer, Resizer Previewer V4LP V4L2 V4L2 FBDev, FBDev, Type Linux in Linux core. for the source 5.0.0 for for 27 13.5 LSP DM6467 Driver Support PCI V4L2 V4L2 and The MHz, DM6467 DM6467 interfacing Transmission Transmission MHz on LSP from 2.10 LSP interface performance form peripheral DM6467 drivers (DMSoCs), 54 or 2.10 2.10 TI. DM365 DM644x, DM365 DM644x, DM355, DM644x DM644x DM6467 DM355 DM644x, DM355 DM644x, Device Package Release MHz 16.875 to DaVinci™ DaVinci with enable facilitate Support for or DM365 DM355, DM355, DM365 DM365 device and and 81 (LSP) data DM6467 MHz the integrated 02.100.00.020 Linux SPRS566A MHz Reception Reception host Linux rapid for in drivers portability provided Drivers See Parallel in each machine – Serial software with Drivers JULY for of at at with 2009 the the the for for 17 PRODUCT PREVIEW 2.10 2.11 2.9 2.12 2.13 2.14 2.15 2.16 2.17 2.5 2.5 Feedback www.ti.com Section Section Section Section Section Section Section Section Section Section Section See Documentation DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM365 DM355, DM355, DM355, DM6467, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM355, DM6467, DM355, DM355, DM6467, Support Submit DM644x, DM365 DM644x, DM6467, DM6467 DM644x, DM6467, DM355, DM365 DM6467 DM644x, DM365 DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM365 DM6467 DM644x, DM365 DM6467 DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM6467, DM644x, DM365 DM644x, DM6467, DM644x Device DM644x, DM365 DM6467 Driver Driver Driver DMA Character Character Gadget Gadget Gadget Block Block (continued) Block Character Character Character Character Character Linux Network Network USB USB USB Block MTD and MTD and Linux Type ALSA the down and motor Driver S/PDIF Auto Auto speed. cards for Summary and enables support Video link Driver Slave speed. ticks used digital Driver for that Supports Supports Driver Host blending link mapping, OS Mbps Interface Class Drivers playback playback Host Slave data. data. Driver and and bus typically /Secure Mbps range and and Driver Interface Interface Conversions Device disk/CDROM Device Interface Class Class Playback Device and Interface Device Timers IO Media Interface network network hard internal Engine 10/100/1000 10/100 Red condition record record system system and padding, Network conversion, Interface the Modulation 1-1. ATA Multi with with Configuration Storage Storage Infra DMA of Stream audio audio to to Purpose Purpose edge system Communication Pin Devices Record Processing Peripheral Communication Communication Width Storage Storage Mass Mass Remote Communication Human Isochronous Table Drivers Enhanced Serial Transport Serial extension Pulse control General Monitor General Device Interface Flash Flash Interface Serial Consumer Inter-IC Transmit/receive negotiation USB USB USB specification USB USB USB Audio Description Audio Video scaling, chrominance Supports Supports output Transmit/receive negotiation Drivers Linux Linux Engine DaVinci™ (64-bit) Slave 2009 Slave Host Slave Host 2.10 DaVinci Conversion Timer JULY – HID ISO MSC RNDIS CDC MSC LSP (McASP) (McBSP) Data (McASP) 2.10 2.0 2.0 2.0 2.0 2.0 2.0 C 2 PINMUX EDMA3 Watchdog GPIO PWM Timers TSIF VLYNQ I SPI UART CIR MMC/SD NAND NOR USB ATA/ATAPI USB USB USB USB USB Ethernet Ethernet Audio Audio Video (VDCE) Peripheral Audio 18 SPRS566A LSP

PRODUCT PREVIEW Submit 1.5 1.4 1.3 www.ti.com VLYNQ PERIPHERAL Ethernet PERIPHERAL VLYNQ PERIPHERAL USB USB HPI PERIPHERAL PCI Peripheral Slave Wireless Printer Documentation Toolchain Limitations Tested • • The • • • • The ARM9. MontaVista The 02.10.00.14 Table Complete Preemptible GNU GNU GNU GNU Class drivers toolchain kernel Class 1-2 The Modes Binary Debugger libc Compiler through have and Feedback Linux Linux and for (glibc) preemption Summary components DM644x/DM355/DM365/DM6467 kernel Utilities MontaVista been Version STATUS Link STATUS Gigabit STATUS Link STATUS Class Class No kernel Collection Pro (GDB) 2.5.90 driver; add-in Interconnect Description Table between between (low not not tested 5.0.0 (binutils) Ethernet Table Table Table version Table (real-time) validated validated no cards 6.6.50 consist Information latency 1-4 Table HPI Pro master master (GCC) arm_v5t_le in 1-1. 1-4. 1-3. mechanism and facility 1-5. the peripheral in summarize 2.17.50 Linux of: processor/memory 1-2. and and MontaVista Device desktop) DM6467 DM644x following 4.2.0 DM365 is slave slave not DaVinci (MVL) on between toolchain. working. Drivers is is EVM Driver Driver Driver not not kernel the user Linux detected. detected. peripheral Limitations based systems known Limitations Summary Limitations Limitations The preemption space Pro on Application 5.0.0 feature applications MontaVista Summary Character Type Linux VLYNQ USE Gigabit USE VLYNQ USE MAC) USB USB Host USE is (continued) Summary modes: Summary Summary 2.6.18. CASE CASE CASE wireless connected processor CASE limitations Driver or Ethernet Binary Bluetooth LSP Linux are LSP device interface printer transmit compiled 2.10 2.10 Interface DM6467 Device Pro in such DaVinci™ the 5.0.0 DaVinci (16-bit receive Support as WLAN LSP (ABI) and applied. address/data) Linux SPRS566A Linux linked (thin 2.10 is Drivers See GNU/Linux or – Release thick with Drivers JULY 2009 the 19 PRODUCT PREVIEW as 64-bit 64-bit Feedback www.ti.com mode, follows: the the as of of configured 64-bit Two Two are in Documentation configured timers timers. timers. Submit timers 64-bit programmed 2.10. purpose purpose be The LSP can purpose general general counter counter timers. timers) Release general follows: follows: timer timer timer. timer. cycle cycle as as mode. timers for for purpose timer. module other used used timers timers Production watchdog watchdog chained general the the programmable programmable 32-bit 32-bit (RTO) (general-purpose tick tick 64-bit watchdog 64-bit tick DSP DSP timer 4 32-bit counter, counter, over from a a a software-programmable software-programmable Out for for as as as set dual software-programmable reset Timer system system follows: system three three or Time only only only features five as Sync and driver read independent independent has has Linux Linux 3 input Reserved Reserved Real Free-running High-resolution Linux High-resolution AV Free-running Reserved Free-running has - - - - the - - - - mode, - - - - four four to timers to EVM EVM as as capture software-programmable register Drivers Timer (3:4) (3:4) additional Information EVM (1:2) (1:2) (3:4) (3:4) (3:4) (3:4) tied Drivers (1:2) (1:2) (1:2) (1:2) 1, configurable configurable configurable 32-bit two Linux Low High Low High clock/event event applies Low High Low High Low High Low High unchained event reload 1 1 1 1 DM644x DM6467 Linux counter 0 0 0 0 1 1 0 0 User User User DM365 has Timer supports - - - Version configured configured 2 3 2 0, 0 1 0 1 2 0 1 EVM EVM 32-bit DaVinci™ EVM EVM Timer Timer Timer Timer are are 2009 External Period Output External Timer Timer Timer Timer Timer Timer Timer Timer Timer document DaVinci DaVinci DM355 DaVinci independent 2.10 DaVinci – – – – – dual – – a. b. – – – – a. b. – – Timer Timer Timer Timer Timer Timer Timer Timer Timer Timer Timer JULY – LSP 3. This 2. 3. DM365 The 1. 1. 2. DM6467 The timers four 1. 2. 3. DM355 The The timers 1. 2. DM644x LSP/PSP Timers 2.10 20 1.7 SPRS566A 1.6 LSP

PRODUCT PREVIEW Submit 1.8 www.ti.com Documentation Documentation SPRUGP6 SPRUGP3 SPRUGA3 SPRUGA2 SPRUGA1 SPRUGA0 SPRUG98 SPRUG97 SPRUG96 SPRUG95 SPRUG94 SPRUG93 SPRUG92 SPRUG91 SPRUG88 SPRUG87 SPRUG86 SPRUG85 The following Feedback LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP LSP describes describes describes describes describes describes describes describes describes describes describes describes describes describes describes describes describes describes documents 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 2.10 Support DaVinci DM365 DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci DaVinci how how how how how how how how how how how how how how how how how how are to to to to to to to to to to to to to to to to to to available install install install install install install install install install install install install install install install install install install Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Linux Face and and and and and and and and the and and and the and and and and and VPFE VDCE TSIF PCI VPIF Audio PCI V4L2 Video EVM IPIPE VPBE AF NOR Previewer Resizer Consumer-IR for Linux Linux Driver use use use use use use use use use use use use use use use use Slave Boot download: Detection Installation Driver Flash Display Display Driver Driver Capture Frame Driver Device the the the the the the the the the the the the the the the the EVM. EVM. Driver User's Driver Driver Driver V4L2 Video IPIPE VPBE AF NOR previewer resizer Consumer-IR VPFE DM365 VDCE TSIF PCI VPIF PCI User's User's User's User's User's Driver Buffer User's Driver Driver Driver driver. Driver User's boot slave User's Guide User's User's driver. Flash display display User's Sysfs Driver. capture Frame driver. Guide Guide driver. Guide Guide face User's Driver Guide User's Guide driver. User's User's User's driver. driver. Guide Guide driver. Guide Guide driver. detection Guide driver. driver. Buffer driver. driver. User's Guide Guide Guide Guide Guide driver. LSP Guide driver. LSP 2.10 2.10 DaVinci™ DaVinci Linux SPRS566A Linux Drivers – Drivers JULY 2009 21 PRODUCT PREVIEW the driver driver in Feedback www.ti.com directory. VLYNQ VLYNQ included and and Documentation are Submit V4L2 V4L2 directory. directory. Resizer, Resizer, applications driver Previewer, Previewer, VPIF PSP_02_10_00_14/examples/dm355/ the NOR, NOR, and in H3A, H3A, directory. included VLYNQ GPIO, GPIO, are PSP_02_10_00_14/examples/dm644x/ PSP_02_10_00_14/examples/dm644x/ VDCE, the the FBDEV, FBDEV, in in applications TSIF, Drivers Drivers EDMA, EDMA, Linux included included driver PCI, Linux are are IPIPE CIR, CCDC, CCDC, DaVinci™ 2009 and 2.10 DaVinci JULY – DM365 DM355 DM6467 LSP Audio, PSP_02_10_00_14/examples/dm646x/ Audio, applications H3A Audio, applications DM644x 2.10 22 1.12 1.11 1.10 SPRS566A 1.9 LSP

PRODUCT PREVIEW Submit 2.1 2 www.ti.com Documentation Linux DM644x front-end The with The • • The • • • • FBDev compliant The Figure The modes. supported driver This /dev/video3 /dev/video2 /dev/fb/3 /dev/fb/2 /dev/fb/1 /dev/fb/0 device the video video previewer, section DaVinci is 2-1 VPBE Kernel The Hardware V4L2 components to Video with system capture shows Kernel display Space Space nodes Feedback performance User or - or - covers provide OSD1 OSD0 driver video specification. /dev/video3- /dev/video1 the - - resizer, VID1 VID0 Device Drivers the created calls Interface BoardControl driver driver Application Control frame SYSFS details are: Window Window driver Control a TV/LCD DM644x Driver that Panel Window Window and high H3A Figure for for measurements buffer Drivers for provide on - is The VID1 IOCTLs VID0 the the level BE API FBDEV V4L2 (auto each /dev/fb/0, architecture.Figure a /dev/fb/2 video 2-1. DaVinci set Application Window Window post-capture description, of Display focus and GUI DM644x of the processing (FBDev) node DM644x-VPBEDisplay video performance are EncodeManager,Encoder video device (AF), BE API FBDEV /dev/fb/1, /dev/fb/3 driver andDisplayDriver done created Video display, features processing. processing and and drivers are: 2-3 front for auto VideoDisplay for V4L2 Driver shows a Application and V4L2FrameWork driver end capture, from the supported, /dev/video1, /dev/video3 expose/auto benchmarks framework. back VPFE Architecture (VPFE) the the built DM646x LSP end statistics driver with peripheral features DM644x-VPFECapture (VPBE) package. andTVP5146Decoder LSP white The its for is architecture. default V4L2FrameWork Application different /dev/video0. and CaptureDriver VideoCapture 2.10 device andDecoder Linux /dev/video0, Application balance not peripheral is The processing DaVinci Kernel configuration. a supported, nodes MV char scope (AEW)) Device kernel SPRS566A driver, is created Linux of a components. Drivers each char constraints, preemption drivers compliant – Drivers JULY for device driver, 2009 are the 23 PRODUCT PREVIEW is on Feedback silicon plane supports www.ti.com a FB is 1080i). This output. buffered. driver the These and This observed triple video Documentation are when OSD1. display (720p are modes. Submit exclusive. V4L2 plane allowed interlaced windows modes the windows interface not for buffering VID by is munmap() mutually video of Both mechanism supported. hardware used non-blocking are and HD FBDEV side double be not in the module kernel. encoder is and interface supported TVs. and with (UYVY). right the exchange mmap() not windows cannot using of usable Linux video LCD and V4L2 display are be FBDEV format format the vid1 blocking 4x output use. buffer top (), coordinates by plane both will only: in window quality 565 into V4L2 internal features: removal and the and window is by one RBG both only at low the 2x windows pointer VID0 YUV422 alpha VID0 vid0 (), RGB starting DACs OSD interface in 1x, in statically following User Currently OSD Dynamic console The issue. Noise some Only Analog The using and for window to resolutions DACs interface controlled supports sysfs • • • • • • • (), • • DAC controlled the VID1) built internal OSD0 per-pixel be sizes video mode or three windows are a one and display outputs digital using four Driver can of following the bit) using as the DACs set supports the using for using the window mechanisms. (VID0 flipping mechanism acts are two windows Calls RGB666 Drivers zoom interlaced (1/2/4/8 formats windows using video window Display driver dynamically mode video fps fps Constraints to on buffer Drivers change using mode Supported 60 50 supports OSD1 PAL windows input 576p VID1 exchange to Linux enable/disable window and input System at at bitmap Video loaded display outputs exchange and Not Device output and and feature keying and and or video time be display 2009 480p 576p Composite S-Video Component Kernel VPBE DaVinci Support VID0 Output ED – – Palletized Run Color Programmed OSD0 Flexibility Zoom 480p Digital RGB888 double-buffered. Analog – – – NTSC Two OSD Buffer mmap’ed Can Attribute JULY – DM644x Supported Constraints Features Linux • • • • • • • • • • • • • • • • • • • • The 2.10 2.1.1.1 24 SPRS566A 2.1.1 LSP

PRODUCT PREVIEW Submit www.ti.com 576p-50 480p-60 PAL NTSC Video FBIO_SETZOOM FBIO_SETPOSY FBIO_SETPOSX FBIO_SETPOS FBIO_WAITFORVSYNC FBIO_SET_CURSOR FBIOPAN_DISPLAY FBIOPUTCMAP FBIOPUT_FSCREENINFO FBIOGET_FSCREENINFO FBIOPUT_VSCREENINFO FBIOGET_VSCREENINFO FBIOBLANK FBIO_SET_BACKG_COLOR FBIO_SET_BITMAP_CONFIG_PARAMS FBIO_GET_BITMAP_CONFIG_PARAMS FBIO_SET_VIDEO_CONFIG_PARAMS FBIO_GET_VIDEO_CONFIG_PARAMS Constant 2.1.1.3 2.1.1.2 -50 -60 Resolution Documentation 2.1.1.3.1 • • • The For The Hz Hz Hz Hz ED SD Sony Performance Supported more performance video Display Display Bravia details display VPBE-FBDEV Feedback was benchmarks IOCTLs KLV-S26A10 refer numbers Table and driver tested Table http://www.linux-fbdev.org Benchmarks 2-2. supports Low using were were 2-1. DM644x TV Latency composite captured DM644x was captured IOCTLs Frame used VPBE-FBDEV plane Specifies Changes Changes Changes Synchronizes Configures IOCTL. (out Sets Sets (resolution Sets for Gets (resolution Sets used Gets Blank command. Sets Sets Gets Sets Gets Description Desktop Rate each using shown VPBE of using the the fixed variable the the the the the the the input/component for for the number It (Frames 50.15 60.85 25.06 30.07 framebuffer each display pseudo background configuration configuration fixed variable existing current Display the the the the calculates display screen . and and the cursor composite FBDEV in Preemption starting starting starting ZOOM screen the framebuffer screen fps fps fps fps of bits bits Table following: buffer video palette configuration Performance screen Per buffers buffered parameters parameters testing per per actual parameters window. parameters color. Y X X information Second) of of window IOCTLs for 2-1 pixel) pixel) coordinate coordinate and the the information for input/output the window. display output buffer The . Y the BITMAP video for window coordinate of configuration window window: (identity, for framebuffer, location the Supported of by of of window Values video the framebuffer, of bitmap the the waiting (OSD0 using the framebuffer. LSP should desired desired 3 of video and 2x for loop framebuffer. the the (OSD0 or for / – including sets video OSD1) 2.10 be Linux desired LLD 4x) var_screeninfo vsync loop video video including back CPU disabled it for / and This into DaVinci OSD1) Kernel window before the Occupancy back or or the video This 2 the command OSD OSD 0.00 0.48 0.15 0.42 the corresponding for window before Device command window window or the OSD) window SPRS566A plane plane offset OSD Linux call using input (%) can Drivers passed register. of returns plane input can the be this – format display Drivers JULY be used buffer format to the 2009 25 PRODUCT PREVIEW from image Feedback www.ti.com an . image (%) 2-4 mechanism. input the to specification. decoder Table pick Documentation 0.72 0.80 0.78 0.00 in time to capability used Occupancy V4L2 exchange input run be input external Submit the CPU abilities RT at stamping shown an in – can sensing current of current time scaling I/O more mmap’ed the the items programmed munmap() auto of help and IOCTLs for by and Values input feature be input. format pointer explained rectangle and the a control LPF video This HD standards try can supports user are IOCTLs standard driver kernel cropping received control with including support or I/O menu supports a the cropping buffer video parameters This input, of current video mmap() Second) video format, a and and Linux parameters with support of the the inputs outputs Performance IOCTLs the standard Per driver YUYV) mapping current value data the capabilities streaming decoder, fps fps fps fps not mode. or ioctl(), coordinates buffer coordinates. VPFE-V4L2 the the the streaming video video supported controls status video about a mt9t001 selects selects buffers, into features: These stops the 60.12 50.17 30.09 25.06 or or the device (Frames memory the sets sets sets sets does capture progressive start or or or or or (UYVY external close(), three blocking Rate DM644x of an driver video Description Information Enumerates Enumerates Enumerates Gets Gets Gets Queries Gets Queries Exchanges Queries Queries Enumerates Senses Initiates Starts Configures VPBE-FBDEV statically following IOCTLs. Preemption example, format 2-4. Frame The None. open(), The the correction, built supports For Time or through several minimum programmable DM644x Table Driver pixel scene a YUV422 Real input with 2-3. QCIF). supports in fault with VIDIOC_TRY_FMT Calls supports mechanism capture Drivers (e.g. video input Capture dynamically driver Table image input input, Constraints the Drivers Supported PAL driver of sizes VIDIOC_QUERYMENU Linux video and input System IOCTLs VIDIOC_STREAMOFF Video loaded VPBE-FBDEV Not capture Device and exchange VIDIOC_S_INPUT pattern VIDIOC_S_PARM VIDIOC_S_CROP VIDIOC_S_CTRL VIDIOC_S_FMT, be VIDIOC_S_STD VPFE center VIDIOC_DQBUF 2009 smaller Kernel video DaVinci Support The NTSC Multi-buffered Cropped at the Bayer Decoded Can Buffer Hz JULY – DM644x Hz Hz Hz Supported Supported Features Constraints Linux • • • • • The • • • 2.1.1.3.2 Resolution -60 2.10 -50 2.1.2.1 VPFE_CMD_S_MT9T001_PARAMS VIDIOC_QUERYSTD VIDIOC_REQBUFS VIDIOC_STREAMON, VIDIOC_QUERYBUF VIDIOC_QUERYCAP VIDIOC_QUERYCTRL, VIDIOC_G_PARM, VIDIOC_G_STD, VIDIOC_QBUF, VIDIOC_G_CTRL, VIDIOC_G_FMT, VIDIOC_G_INPUT, VIDIOC_ENUMOUTPUT VIDIOC_ENUMSTD VIDIOC_G_CROP, Constant VIDIOC_CROPCAP VIDIOC_ENUMINPUT 576p-50 NTSC PAL 480p-60 Video 26 2.1.2 SPRS566A LSP

PRODUCT PREVIEW Submit 2.1.3 www.ti.com PREV_SET_PARAM PREV_QUERYBUF PREV_REQBUF Constant PAL NTSC Video PAL NTSC Video VPFE_CMD_CONFIG_CCDC_YCBCR VPFE_CMD_CONFIG_CCDC_RAW VPFE_CMD_G_MT9T001_PARAMS Constant 2.1.3.1 2.1.2.2 -50 -50 -60 -60 Resolution Resolution Documentation • • • • • • The 2.1.2.2.2 2.1.2.2.1 • • The For Supported Supported Constraints Features Hz Hz DM644x Hz Hz Buffer Can Converts Accepts Various Input SD Sony Support Performance more Preview performance Display be image DVPNS-61P details exchange Not VPFE-V4L2 VPFE-V4L2 loaded Preview hardware Feedback input IOCTLs System and Bayer Engine Supported benchmarks in refer Constraints from numbers and Bayer dynamically Table pattern Table mechanism Driver Calls Engine configurations to DVD Benchmarks Table SDRAM Real Low pattern http://v4l2spec.bytesex.org/v4l2spec/ 2-5. 2-6. Table input were supports player were Latency Time 2-4. The open(), • • User DM644x Driver DM644x or or supports The CCDC The captured image 2-7. captured DM644x built Preview DDRAM was Preemption pointer Frame Frame such the close(), Preview Preview Desktop DM644x statically used Configures Configures Gets Description Sets Requests Requests Description VPFE-V4L2 to driver. VPFE-V4L2 following Rate Rate as blocking YCbCr using buffer Engine VPFE-V4L2 using the mt9t001 for CFA ioctl(), Engine Engine (Frames (Frames 25.05 30.03 25.05 30.03 Preview Preview Preemption physical frame into capture the CCDC CCDC exchange composite 4:2:2 interpolation, features: Driver parameters mode. fps fps fps fps Performance mmap() following: the buffer Performance Engine Per Per and will for for address format IOCTLs Linux testing Engine YUV raw supports Second) Second) not to These H3A mechanism hardware be input/output mode and mode work of . kernel allocated drivers buffers DFC supports IOCTLs munmap() (continued) the Values with Values parameters subtract, allocated by IOCTLs cannot the LSP PREV video mmap’ed – – video LLD 2.10 RT by Linux module be and shown loop CPU CPU the used port DaVinci Kernel so PREV_REQBUF Occupancy Occupancy back exchange on. in enabled 0.20 0.84 0.10 0.84 together. Device Table SPRS566A Linux (%) (%) Drivers mechanism. 2-7 in ioctl the – Drivers JULY 2009 27 PRODUCT PREVIEW of of terms terms Feedback specified www.ti.com in in Engine module channel enabled enabled channel mechanism. image image 2-8 channel channel channel the Resizer Preview by features features specified input input logic logic logic Documentation to to from from Table on on this the with this in RSZ_REQBUF exchange parameters identified module with with Submit with the requests requests by compared compared RSZ depending depending shown associated channel read read the hardware mmap’ed lines lines image image mumap() associated associated by associated IOCTLs of of allocated logic parameters channel (continued) IOCTLs Engine and the hardware output output mechanism formats of consecutive consecutive logic buffers the hardware allocated number number the the the supports kernel. of parameters parameters parameters in in to be the the Preview hardware and and applications input to setting mmap() to of of Supported IOCTLs This task between between line line Linux exchange 4x task address supports data Engine hardware hardware hardware per per reduction reduction status status to priority buffers the ioctl(), delay delay mode. Driver multiple Engine size size buffer descriptor into pixels pixels resizing previewing driver by physical frame Resizer current Resizer Preview current Resizer current a a the the of of separate close(), the the the the the the the allowable allowable Resizer used features: blocking one-fourth channel pointer Preview resizer Requests Sets Gets Submits descriptor Gets Sets descriptor Gets by Returns number Sets number Sets module Description Requests Description Gets Submits Gets Returns color be statically from The User None open(), can 8-bit built DDRAM DM644x supports following DM644x or or that and the 2-8. multiplier 2-7. module SDRAM Table Calls Driver mechanism Table Drivers supports dynamically interleaved Constraints Drivers kernel Supported CCDC, Linux Driver and IOCTLs System color Resizer loaded Not Device exchange from be 2009 Kernel Resizer DaVinci Support Upscaling/downscaling Can Buffer YUV422 Input Standalone JULY – DM644x Constraints Supported Supported Features Linux • • • The • • • 2.10 2.1.4.1 RSZ_S_EXP RSZ_G_PRIORITY RSZ_GET_CROPSIZE RSZ_G_STATUS RSZ_S_PRIORITY RSZ_S_PARAM RSZ_G_PARAM RSZ_RESIZE Constant RSZ_REQBUF RSZ_QUERYBUF PREV_SET_EXP PREV_GET_STATUS PREV_GET_CROPSIZE Constant PREV_GET_PARAM PREV_PREVIEW 28 2.1.4 SPRS566A LSP

PRODUCT PREVIEW Submit 2.1.6 2.1.5 www.ti.com AF_DISABLE AF_ENABLE AF_G_PARAM AF_S_PARAM Constant AEW_DISABLE AEW_ENABLE AEW_G_PARAM AEW_S_PARAM Constant 2.1.6.1 2.1.5.1 Documentation • • • The • • • The Supported Supported Constraints Features Supported Supported Constraints Features DM644x DM644x Can Input Image Can Input Image Support Support AF Auto Driver be be from from Expose/Auto in in Not Not loaded loaded Auto AF Feedback IOCTLs System IOCTLs System Bayer Bayer and and CCD CCD supports Supported Supported Driver Constraints Constraints Expose/Auto dynamically dynamically pattern pattern controller controller Calls Calls White the following Balance or or Table Table White built built open(), None None The open(), None None The features: (AEW) statically statically Disables Enables Gets • • • • Sets Description Disables Enables Gets • • • • Sets Description 2-9. 2-10. AEW AF Balance A-Law Saturation Black Window A-Law HMF IIR Paxel the the the the close(), close(), DM644x driver Filter DM644x Driver driver AEW AF following following AEW AF AEW AF Filter window parameters into into compression compression Engine hardware Engine parameters parameters supports Engine hardware Engine check (AEW) Parameter ioctl(), ioctl(), the the supports supports AEW parameters/modules parameters/modules parameters AF with Linux Linux module with settings mmap() mmap() IOCTLs module module IOCTLs parameters settings Driver the parameters the the kernel. kernel. IOCTLs following IOCTLs and and set set of of mumap() mumap() LSP by shown the the by shown AF_S_PARAM features: AEW_S_PARAM AEW AF 2.10 Linux hardware: in hardware: in Table DaVinci Kernel Table 2-10 Device SPRS566A 2-9 Linux Drivers – Drivers JULY 2009 29 PRODUCT PREVIEW is AEW) driver, device Feedback plane supports www.ti.com compliant the char a This are Balance is These driver, Documentation triple-buffered. White char components. OSD1. a Following are Application Application /dev/video0, modes. Captureand andDecoder DM355-VPFE is VideoCapture CaptureDriver Submit peripheral TVP5146Decoder V4L2FrameWork plane /dev/video0. processing windows is buffering Expose/Auto (VPBE) framework. peripheral and hardware Both non-blocking End Auto driver V4l2 double the /dev/video3 kernel. encoder /dev/video1, (VPFE) and AF, and Back Architecture processing. V4L2FrameWork with format. statistics, VPFE End using Linux video Application the VideoDisplay Focus Driver format the for blocking Front YUV422 capture, plane framework Processing features: 565 into internal (Auto /dev/fb/3 post-capture /dev/fb/1, Video both FBDEV API andDisplayDriver the DM355-VPBEDisplay created alpha RGB H3A display, Video DACs: EncoderManager,Encoder supports in (FBDEV) Processing following statically DM355 provide using node and video supports the DAC Window Window VID1) GUI that built 2-2. internal OSD0 of per-pixel DaVinci Driver Video /dev/fb/2 /dev/fb/0, or FBDEV API Application device a one and outputs set Vid0 Vid1 resizer) four the driver: the a – – using Driver as Figure The Buffer supports DACs for is for the using mechanisms. (VID0 mechanism VPBE acts two Window Window components engine, Drivers interlaced using Driver driver window driver Frame driver Board Driver dynamically SYSFS the Control Control Control video Interface Display Drivers Application Drivers TV/LCDPanel using /dev/video1 /dev/video3 the for OSD0 OSD1 PAL framework. windows exchange Linux video window – or – or bitmap (preview loaded front-end outputs display Display exchange capture Device with and Video User or Video V4L2 video be Space Space Kernel are created 2009 Composite S-Video Kernel IPIPE video the video Video DaVinci Hardware DaVinci Attribute double-buffered. Analog – – NTSC Two OSD Buffer mmap’ed Can /dev/fb/3 /dev/fb/0 /dev/fb/1 /dev/fb/2 JULY – DM355 Linux • • • • • • • The • The with The drivers The compliant nodes • • • The DM355 2.10 30 2.2.1 SPRS566A 2.2 LSP

PRODUCT PREVIEW Submit www.ti.com FBIO_SETPOSX FBIO_SETPOS FBIO_WAITFORVSYNC FBIO_SET_CURSOR FBIOPAN_DISPLAY FBIOPUTCMAP FBIOPUT_FSCREENINFO FBIOGET_FSCREENINFO FBIOPUT_VSCREENINFO FBIOGET_VSCREENINFO FBIOBLANK FBIO_SET_BACKG_COLOR FBIO_SET_BITMAP_CONFIG_PARAMS FBIO_GET_BITMAP_CONFIG_PARAMS FBIO_SET_VIDEO_CONFIG_PARAMS FBIO_GET_VIDEO_CONFIG_PARAMS Constant 2.2.1.1 Documentation • • • • • • • • • • • Supported Supported Constraints Features Output VID0 OSD0 Programmed Color-keying Run-time Palletized RGB888 Digital Zoom Flexibility Support and feature and output Not and Feedback IOCTLs System input and enable/disable to VID1 input OSD1 Supported mode change buffer on to Constraints mode windows (1/2/4/8 zoom RGB666 Calls windows is flipping set window for the using bit) the Table of can digital display are windows mode video sizes be sysfs controlled 2-11. The open(), • • • • • • • controlled interface to window for and Vid0 console Dynamic Currently OSD User The Analog Gets Description Changes Changes Synchronizes Configures IOCTL. (out Sets Sets (resolution Sets for Gets (resolution Sets used Gets Blank command. Sets Sets Gets Sets Video interface 1x, DM355 OSD each starting close(), VID0 of and the the fixed variable the the the pointer the the the the windows for 2x the number only It Display RBG one by framebuffer each display pseudo background configuration configuration is window current fixed variable existing and the the calculates display removal Vid1 screen V4L2 and and window VPBE-FBDEV cursor in both by starting starting screen coordinates the ioctl(), framebuffer screen buffer use. output 4x of bits bits buffer video palette FBDEV are are configuration screen buffers buffered parameters driver display parameters V4L2 per per actual window. parameters of color. X X cannot mutually not information of of mmap() exchange window for pixel) pixel) coordinate and the the the information for supports the and window. supported display buffer interface The is Y the BITMAP video module for window coordinate IOCTLs not be of configuration FBDEV window window: for and exclusive. framebuffer, location the of by used of window supported. mechanism the framebuffer, of bitmap the waiting the (OSD0 using munmap(). is the by framebuffer. LSP should desired 3 of for and not interface IOCTLs for framebuffer. the the the (OSD0 for / interlaced including This sets video OSD1) allowed 2.10 be Linux desired var_screeninfo vsync V4L2 video including disabled it / is and shown This into DaVinci OSD1) Kernel window before or a the video driver. This 2 when the silicon command OSD the video for window before Device command window window in or the OSD) window SPRS566A plane offset OSD the Table Linux call output. issue. using input can Drivers passed register. FB of returns plane input can the be 2-11 this – format Drivers JULY be used buffer format to . the 2009 31 PRODUCT PREVIEW . image image effect Feedback display 2-14 www.ti.com an the mechanism. (%) (%) Table pick input plane in specification. to to decoder. shadowing corresponding Documentation 0.84 0.95 1.61 0.40 OSD time. exchange capability. or occupancy occupancy back. used the V4L2 shown jitters, run for be external Submit the CPU CPU video loop stamping. at 4x) in an can or programmed of RT mmap’ed IOCTLs LLD time issues, 2x video – desired be – buffers munmap(). auto-sensing the help the and feature can of explained (continued) and (identity, the more supports LPF, This are kernel. with supports including input/output coordinate Performance These input, mmap() Performance Second) Second) IOCTLs Y parameters Linux supports coordinates testing. images. driver IOCTLs brightness/contrast Per Per YUYV) the following: the decoder, fps fps fps fps and the mode. or ioctl(), coordinates. ZOOM starting Preemption like composite features: in the . into These the the Display 30.12 25.05 30.31 25.12 (Frames (Frames Capture progressive start for buffers (UYVY using VPBE-FBDEV external close(), using VPBE-FBDEV blocking VPBE-FBDEV Rate Rate example, artifacts Desktop an following Video Description Changes Specifies plane observed input statically used IOCTLS. three Preemption For format Frame Frame the DM355 HD Video are open(), The DM355 correction, built scene. DM355 captured was captured supports Time or Latency through several TV programmable QCIF). 2-13. pixel 2-12. were minimum 2-11. Driver were YUV422 supports Low Real capture input with in fault with Benchmarks Table http://www.linux-fbdev.org Table the Table Calls supports mechanism Drivers Driver video of input (example, dynamically image and numbers input input, Capture Constraints refer Drivers KLV-S26A10 benchmarks Supported PAL driver size Linux video and input System IOCTLs center loaded Capture VPBE-FBDEV VPBE-FBDEV Not Device and Video exchange pattern details Bravia the be VPFE Display 2009 smaller Kernel Video performance more DaVinci Support Performance Multi-buffered Cropped of from Bayer The Decoded Can Buffer NTSC Sony SD Hz Hz JULY – DM355 Hz Hz Supported Features Constraints Supported Linux • • • • The • • • • 2.2.1.2.2 • • 2.2.1.2.1 For The Resolution Resolution -60 -60 2.10 -50 -50 2.2.2.1 2.2.1.2 Video NTSC PAL NTSC PAL Video Constant FBIO_SETPOSY FBIO_SETZOOM 32 2.2.2 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com PAL NTSC Video PAL NTSC Video VPFE_CMD_CONFIG_CCDC_YCBCR VPFE_CMD_CONFIG_CCDC_RAW VPFE_CMD_G_MT9T001_PARAMS VPFE_CMD_S_MT9T001_PARAMS VIDIOC_STREAMON, VIDIOC_REQBUFS VIDIOC_QUERYSTD VIDIOC_QUERYCTRL, VIDIOC_QUERYCAP VIDIOC_QUERYBUF VIDIOC_QBUF, VIDIOC_G_STD, VIDIOC_G_PARM, VIDIOC_G_INPUT, VIDIOC_G_FMT, VIDIOC_G_CTRL, VIDIOC_G_CROP, VIDIOC_ENUMSTD VIDIOC_ENUMOUTPUT VIDIOC_ENUMINPUT VIDIOC_CROPCAP Constant 2.2.2.2 -50 -50 -60 -60 Resolution Resolution Documentation 2.2.2.2.2 2.2.2.2.1 • • The For Hz Hz Hz Hz SD Sony Performance more performance VIDIOC_DQBUF Display VIDIOC_S_STD VIDIOC_S_FMT, DVPNS-61P VIDIOC_S_CTRL VIDIOC_S_PARM VIDIOC_S_CROP details VIDIOC_S_INPUT VPFE-V4L2 VPFE-V4L2 Feedback VIDIOC_STREAMOFF VIDIOC_QUERYMENU benchmarks refer numbers and http://v4l2spec.bytesex.org/v4l2spec/ DVD VIDIOC_TRY_FMT Benchmarks Table Real Low Table were player were Latency Time Table 2-15. 2-16. captured captured was Preemption DM355 Frame Frame 2-14. DM355 Desktop used Configures Configures Gets Configures Starts Initiates Senses Enumerates Queries Queries Exchanges Queries Gets Queries Gets Gets Gets Enumerates Enumerates Enumerates Information Description Rate Rate DM355 using using VPFE-V4L2 mt9t001 or or or or VPFE-V4L2 or for sets sets sets sets the memory (Frames (Frames device the or or 25.05 30.03 25.05 30.03 stops Preemption capture selects selects the CCDC CCDC mt9t001 a about video status composite controls supported video video streaming the the the VPFE-V4L2 buffer parameters fps fps fps fps streaming capabilities following: data value current mapping Per Per standard the for for outputs inputs the the of with parameters Performance testing. and a format, Performance YUV raw video Second) Second) video current of parameters video buffer cropping the . a menu I/O input/output mode or control mode received cropping driver standard IOCTLs user try standards video control a rectangle pointer format input by and of – items the – LSP the LLD video I/O scaling RT current current 2.10 Linux loop abilities CPU CPU input input DaVinci Kernel back. occupancy occupancy 0.50 1.61 0.15 0.90 Device SPRS566A Linux (%) (%) Drivers – Drivers JULY 2009 33 PRODUCT PREVIEW and calls issued Feedback www.ti.com be module: horizontal mechanism. . can open() it previewing with 2-17 that I/O mode) Documentation Hardware artifacts, same resizer used. do multiple previewer exchange Table to except the Shot be the the in at Submit IPIPE at done. When chroma image For etc buffers is Single etc IOCTLs should the or mmap’ed shown subtract. image DM355 source EVM. tune source mode munmap(). edges, buffers scaling to DFC the tune PREV_S_PARAM data drivers error. shot data and no to to IOCTLs user-allocated supports formats Supported and and an multichannels. or and (“Continuous” kernel. DM6467 using the Single available similar resizer when non-sharp or applications input in is These buffer mode format, mmap() previewer previewer format, Driver Linux kernel-allocated returns format and support the both) the data This jitter, for pixel features image in pixel the in supports (or capabilities not mode. multiple ioctl(), DM6446 interpolation, like operation 4:2:2 driver 4x size, size, into by module. to address the on. driver the does a Resize CFA previewer separate preview input driver kernel-allocated is input parameter parameter following or parameter on close(), displayed used YCbCr DDRAM blocking as 1/16 the the the buffer artifacts the in to the either or driver IPIPE color be made, statically the support gets gets module control module control gets from preview Previewer-Resizer such streaming a a a a or or The are Video lines open(), The can or not 8-bit built image supports Driver Sets Gets Sets while Gets Starts Description Enumerates Requests previewer/resizer Queries Set Sets Sets or SDRAM that supports and does DM355 input input multiplier DM6446/DM6467, input Driver CCDC, 2-17. on driver module configurations Calls mechanism Drivers pattern capture dynamically interleaved from Constraints Drivers capture Table kernel Supported the Linux Bayer and the System IOCTLs color input hardware loaded RSZ_QUERY_BUF Not Device PREV_G_CONFIG Previewer-Resizer exchange RSZ_RESIZE RSZ_G_CONFIG functionalities RSZ_REQBUF be 2009 Kernel previewer-resizer Previewer-Resizer DaVinci Support Buffer YUV422 Standalone Upscaling/downscaling Previewing Resizing Various Accepts Converts Can JULY – DM355 Supported Supported Features Constraints Linux resizing • • • • The • • • • • • The 2.10 2.2.3.1 PREV_G_CONTROL PREV_PREVIEW, PREV_S_PARAM PREV_G_PARAM PREV_S_CONTROL RSZ_S_OPER_MODE PREV_G_OPER_MODE, RSZ_G_OPER_MODE PREV_S_CONFIG, RSZ_S_CONFIG, PREV_S_OPER_MODE, PREV_ENUM_CAP PREV_REQBUF, PREV_QUERYBUF, Constant 34 SPRS566A 2.2.3 LSP

PRODUCT PREVIEW Submit 2.2.5 2.2.4 www.ti.com AF_DISABLE AF_ENABLE AF_G_PARAM AF_S_PARAM Constant AEW_DISABLE AEW_ENABLE AEW_G_PARAM AEW_S_PARAM Constant 2.2.5.1 2.2.4.1 Documentation • • • The • • • The Supported Supported Constraints Features Supported Supported Constraints Features DM355 DM355 Can Input Image Can Input Image Support Support AF AEW Driver be be from from Auto AF in in Driver Not Not loaded loaded Feedback IOCTLs System IOCTLs System Bayer Bayer and and Driver CCD CCD supports Supported Supported Expose/Auto supports Constraints Constraints dynamically dynamically pattern pattern Controller Controller Calls Calls the the following following or or Disables Enables Gets • • • • Sets Description Disables Enables Gets • • • • Sets Description White Table built built Table A-Law HMF IIR Paxel A-Law Saturation Black Window The open(), None None The open(), None None the the the the features: Filter AF AEW following following statically statically AEW AF AEW AF Filter AEW AF 2-18. features: window parameters Balance compression compression 2-19. Engine hardware Engine parameters parameters close(), close(), driver Engine hardware Engine check Parameter driver DM355 parameters/modules parameters/modules parameters DM355 with into into module with supports settings (AEW) ioctl(), ioctl(), module module parameters settings supports the the parameters AEW AF Linux Linux mmap() mmap() IOCTLs Driver the IOCTLs the set kernel. kernel. IOCTLs set of of by IOCTLs the the by and and AF_S_PARAM AEW_S_PARAM AEW AF munmap(). munmap(). shown hardware: LSP hardware: shown 2.10 Linux in in Table DaVinci Kernel Table 2-19 Device 2-18 SPRS566A . Linux . Drivers – Drivers JULY 2009 35 PRODUCT PREVIEW By and and both (HD) V4L2 VDCE support Feedback www.ti.com the the will for with Channel) supports Channel) framework. Definition Documentation (VID2 V4L2 (VID0 High These created channels Device compliant the Application /dev/video1 /dev/vofeo0, Captureand andDecoder AnalogInput DM6467-VPIF VideoCapture Submit CaptureDriver node V4L2FrameWork TVP5147,TVP7002 with modes. support software driver, /dev/video2 /dev/video0 device will the char are a are The compliant is Both non-blocking channel driver kernel. Architecture driver Application VideoImage VDCEDriver driver, DM6467-VDCE and FrameWork Linux framework. /dev/DavinciHD_vdce, peripheral display char supported. Driver (video2) only: only: only: the a capture for are is VPIF UDEV blocking one features: into Video VPIF with both only created display the resolutions Driver mechanisms. resolutions resolutions DM6467 ADV7343 of peripheral following statically but Application /dev/video3 /dev/video2, Displayand DM6467-VPIF DM6467 VideoDisplay for V4L2FrameWork EncoderManager, nodes the EncoderandDisplay supported compliant built supports 2-3. VPIF DaVinci following following following or display exchange are channels the Driver created device the the fps the the driver, for fps supports Figure for (SD) 30 the pointer 25 char at fps fps fps fps mechanism nodes Driver SYSFS Control Drivers a at software driver Driver Display dynamically Channel). Channel). resolutions Application driver 60 50 60 50 supports supports supports is user TV/LCDPanel Drivers BoardControl 480i Drivers ControlInterface at at at at default, two 576i Definition and Linux device video (VID3 (VID1 By driver Video loaded Display capture display display Device display display exchange 720p 720p NTSC PAL 480p 576p Video User the /dev/DavinciHD_vdce. Space Space Kernel be default, 2009 • • • • • • HD SD ED is Hardware Kernel video video Video VDCE DaVinci – Different – – By Standard display. Buffer mmap’ed Can JULY – DM6467 Linux • • • • The driver /dev/video3 The default, /dev/video1 The The framework. DM6467 2.10 36 2.3.1 SPRS566A 2.3 LSP

PRODUCT PREVIEW Submit www.ti.com VIDIOC_CROPCAP VIDIOC_STREAMON, VIDIOC_REQBUFS VIDIOC_QUERYCAP VIDIOC_QUERYBUF VIDIOC_QBUF, VIDIOC_G_FMT, VIDIOC_S_PRIORITY,VIDIOC_G_PRIORITY VIDIOC_ENUM_FMT Constant 2.3.1.1 Documentation For • • • • Supported Supported Constraints Features – – – IOCTLs – – The Dynamic Dynamic Support more Saturation Hue Brightness WSS CGMS • • VIDIOC_DQBUF following VIDIOC_S_FMT, details 1080i 1080i Not to Feedback VIDIOC_STREAMOFF on IOCTLs System switching switching and and support Supported PAL at at refer VBI Constraints Closed 25 30 display Calls services: fps fps http://v4l2spec.bytesex.org/v4l2spec/ VIDIOC_TRY_FMT run-time of between output Captioning Table change various interfaces 2-20. The open(), • • • • • Section All on the NTSC. NTSC If mechanism. zero module, If mechanism. VIDIOC_REQBUFS VIDIOC_S_FMT VPIF streaming Dynamic Gets Starts Initiates Queries Queries Exchanges Gets Sets Enumerates Description of resolutions DM6467 Video NTSC the the the with remaining and cropping or close(), 2.3.2.1 buffers, or input/output user user sets following memory image, device the stops Display gets some display the switching a status VPIF supported the is specifies specifies buffer the . parameters with streaming ioctl(), driver capabilities on. the data mapping parameters the restriction. priority of driver Display parameters with some driver IOCTL a format, driver buffer allocates formats buffer mmap() of the . a less IOCTL for I/O or resolution supports buffer driver restriction. file assumes user try assumes can addresses IOCTLs than by a descriptor for pointer format and current for for three size be ADV7343 three user the ADV7343: called mumap() LSP and user less I/O decoder the buffers. IOCTLs must buffers pointer output 2.10 minimum than pointer Linux only other be If DaVinci the Kernel after while shown is buffer user multiple buffer than not required buffer Device inserting has supported exchange SPRS566A in mentioned exchange Linux of Table specified size Drivers 8 size bytes. the – for Drivers 2-20 JULY for when in an 2009 37 PRODUCT PREVIEW support support Feedback capture. www.ti.com will (%) (%) (HD) details. These (HD) for Documentation 1.26 1.60 1.92 0.00 1.55 3.47 0.00 24.95 operational. channels back. Occupancy Occupancy Definition definition HD 2.3.2.1 Submit CPU CPU of loop RT LLD High mechanisms. – High – software only: Section video the TVP5147: (SD), instance only: support Values See back. Values for Both will one non-blocking loop resolutions or kernel. Definition input/output and resolutions video Second) Second) channel Linux restrictions. parameters testing. supported. Performance Per Per Performance following only: the following: with fps fps fps fps fps fps fps fps operational Standard are the - blocking composite Preemption features: following the (video0) into Display SD 30.03 25.05 60.06 50.10 30.03 25.05 60.06 50.10 (Frames (Frames following mechanisms. Display Display input/output the of both for one using using the capture Rate Rate resolutions supports VPIF resolutions Desktop of following VPIF of only statically supported used Preemption Frame Frame the exchange supports but are instances supports built captured was component captured various capture following change or DM6467 Time Latency two DM6467 TV channels Drivers mode were the pointer fps were capture using (SD) supports fps Real Low 2-22. have 30 2-21. (SD) resolutions user between 25 run-time fps fps at (HD) fps fps fps fps mechanism Drivers can tested at Driver software Capture 30 25 dynamically supports Table 60 50 60 50 and Benchmarks numbers Table video 480i we Drivers Definition Display Display at at KLV-S26A10 at at at at was two benchmarks 576i support Linux Definition switching definition to Video loaded Capture VPIF VPIF Device capture exchange PAL 480p 576p 720p 720p 1080i 1080i NTSC instant Bravia mmap’ed different be Display Display default, 2009 • • • • • • • • Brightness Hue Saturation High Standard ED an Kernel Video performance DaVinci Performance Dynamic IOCTLs – – – – Two – – By Standard At Buffer both Can Sony SD HD Hz Hz JULY Hz Hz – DM6467 Hz Hz Hz Hz Linux • • • • • • The 2.3.1.2.2 • • • 2.3.1.2.1 The Resolution Resolution -60 -60 2.10 -60 -50 -50 -50 2.3.1.2 576p NTSC PAL 480p Video 576p-50 NTSC PAL 480p-60 Video 38 2.3.2 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com VIDIOC_G_SLICED_VBI_CAP VIDIOC_CROPCAP VIDIOC_STREAMON, VIDIOC_REQBUFS VIDIOC_QUERYSTD VIDIOC_QUERYCTRL, VIDIOC_QUERYCAP VIDIOC_QUERYBUF VIDIOC_QBUF, VIDIOC_G_STD, VIDIOC_G_INPUT, VIDIOC_G_FMT, VIDIOC_G_CTRL, VIDIOC_S_PRIORITY,VIDIOC_G_PRIORITY VIDIOC_ENUMSTD VIDIOC_ENUM_FMT VIDIOC_ENUMINPUT Constant 2.3.2.1 Documentation • Supported Supported Constraints Features – – – – IOCTLs – – Support Auto Contrast Contrast Saturation Hue Brightness VIDIOC_DQBUF VIDIOC_S_STD VIDIOC_S_FMT, VIDIOC_S_CTRL VIDIOC_S_INPUT Not to Feedback gain VIDIOC_STREAMOFF IOCTLs System and support Supported Constraints Calls VIDIOC_TRY_FMT run-time Table change 2-23. • Raw The open(), • • • • NTSC. NTSC If mechanism. zero module, If mechanism. VIDIOC_REQBUFS VIDIOC_S_FMT VPIF streaming Dynamic Description Gets Gets Starts Initiates Senses Enumerates Queries Queries Exchanges Queries Queries Gets Gets Sets Enumerates Enumerates Enumerates of DM6467 Video Capture the the the and the cropping or or close(), buffers, or input/output user user sets sets the following memory image, device the or or stops Sliced Capture gets the selects selects switching a video status VPIF controls supported supported video the the mode is specifies specifies buffer the parameters streaming ioctl(), driver capabilities on. VBI the data value mapping the standard priority inputs the the of Capture parameters with driver parameters driver IOCTL items a format, driver buffer video current of allocates video formats buffer mmap() of the a less a IOCTL for I/O or control resolution received buffer supports driver standard file assumes user try standards assumes video can addresses than IOCTLs by a descriptor pointer format and current for for three size be input by three of user TVP7002: the called the mumap() LSP and the user less I/O decoder the buffers. current must current IOCTLs buffers pointer output 2.10 minimum than pointer Linux only input be input If DaVinci the Kernel after while is buffer shown user multiple buffer not required buffer Device inserting has supported exchange SPRS566A in exchange Linux of specified Table size Drivers 8 size bytes. the – for Drivers JULY 2-23 for when an 2009 39 PRODUCT PREVIEW Feedback www.ti.com (%) (%) Documentation 0.48 0.00 1.38 0.55 back. Occupancy Occupancy Submit CPU CPU RT loop LLD – – testing. video mechanisms. for Values Values back. features: loop kernel. source exchange input/output . MHz. video Second) Second) input Linux following Performance 297 Performance Per Per pointer an 422 420 the following: the fps fps fps fps as was Preemption composite user Driver the into YUV YUV 30.03 25.05 30.03 25.14 (Frames (Frames Capture to to used input/output Capture and built using supports using Rate Rate 420 422 was Desktop VPIF Engine frequency VPIF model. Preemption Driver Frame Frame YUV YUV mmap’ed statically captured DDR player (optional) (optional) component captured or UDEV Time Latency formats simultaneously DM6467 (optional) from from the DM6467 both Engine were the were using Real Low and Conversion 2-25. 2-24. Benchmarks with http://v4l2spec.bytesex.org/v4l2spec/ BD-P1000 modes: mode channels Drivers tested (optional) (optional) Supports (optional) (optional) (optional) mode Data conversion conversion conversion dynamically progressive Table and numbers 16 Table refer Drivers Capture Capture Conversion was benchmarks of frequency and Blu-Ray Linux Padding mode. compliant Video loaded Data VPIF VPIF Device Resizing Chroma Blending Range-mapping-mode Resizing Chroma Resizing Chroma Blending Range-mapping-mode is details Conversion clock be Display Display 2009 • • • • • • • • • • Edge Transcodec Postcodec-mode Precodec-mode Kernel Video performance more DaVinci Performance Blocking Driver – Interlaced Can Processing – – Video – Samsung SD HD ARM Hz Hz JULY – DM6467 Hz Hz Linux • • • • • The • 2.3.2.2.2 2.3.2.2.1 The • • • • For Resolution Resolution -60 -60 2.10 -50 -50 2.3.2.2 NTSC PAL Video PAL Video NTSC 40 2.3.3 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com VDCE_GET_DEFAULT VDCE_QUERYBUF VDCE_REQBUF VDCE_START VDCE_SET_PARAMS Constant 2.3.3.1 Documentation Supported Supported Constraints Features Support Not Feedback , IOCTLs System and VDCE_GET_PARAMS Supported Constraints Calls Table • • • • • • None shown The open(), 2-26. output. In Pitch size The transcodec Simultaneous zero. Horizontal Sub-Picture Gets Queries Request Starts Sets Description Video edge in and the close(), address should DM6467 the should Table the to default Data gets padding VDCE allocate status and the modes be mode ioctl(), 2-26 be Conversion of parameters processing VDCE use GE a Vertical of the buffers 8-byte mode, multiple a parameters of is buffer is mmap() buffer IOCTLs not resizing restricted. associated aligned. Phase the supported Engine of should same and 32 and Values bytes. mumap() with LSP driver be buffer blending due VDCE 8-byte 2.10 for Linux supports to is resizer processing hardware used DaVinci Kernel in aligned post-codec for the are Device SPRS566A mode. and input IOCTLs Linux limitation. considered Drivers the and or – Drivers JULY buffer 2009 as 41 PRODUCT PREVIEW the are driver, for Feedback www.ti.com compliant drivers char components. a created is driver, (AEW)) Documentation char nodes a processing is Submit peripheral balance Application /dev/video0, andDecoder device VideoCapture CaptureDriver and /dev/video0. Application V4L2FrameWork is The white DM365-VPFECapture andTVP5146Decoder (VPBE) peripheral driver statistics end (VPFE) VPFE back Architecture framework. expose/auto /dev/video3 /dev/video1, the capture, end V4L2FrameWork Application V4L2 for VideoDisplay auto Driver front are: and and processing processing. display, Video created andDisplayDriver driver /dev/fb/3 /dev/fb/1, FBDEV API (AF), video EncodeManager,Encoder DM365-VPBEDisplay video node (FBDev) processing DM365 of GUI focus Display post-capture Window Window 2-4. Application set DaVinci video driver device /dev/fb/2 a /dev/fb/0, (auto V4L2 FBDEV API architecture. the the VID0 VID1 The is - provide for buffer Figure for for H3A Window Window Panel that Driver DM365 TV/LCD Control driver Window Window are: Drivers SYSFS frame Control Application driver driver BoardControl Interface created the VID0 VID1 Drivers resizer, Drivers - - the /dev/video1 /dev/video3- specification. video driver OSD0 OSD1 Linux - or - or User nodes Space Space display Kernel shows capture Device with components Video V4L2 Hardware VPBE 2-4 2009 DaVinci previewer, video Kernel video the device DaVinci /dev/fb/2 /dev/fb/3 /dev/video2 /dev/video3 /dev/fb/0 /dev/fb/1 JULY – Linux The front-end The with • • The • • The compliant FBDev • • The Figure DM365 2.10 42 SPRS566A 2.4 LSP

PRODUCT PREVIEW Submit 2.4.1 www.ti.com 2.4.1.2 2.4.1.1 Documentation The • • • • • • • • • • • • • • • • • • • • • • The Supported Constraints Features DM365 – – HD – – ED Output VID0 OSD0 Programmed Color Run Palletized RGB888 Digital 480p Zoom Flexibility NTSC – – – Analog double-buffered. Attribute Can mmap’ed Buffer One OSD Two Support Supported video VPBE 1080i 720p 576p 480p Component S-Video Composite display display time be video video or and and keying feature Video and and output display Not and exchange outputs display loaded bitmap Feedback at at at System input and at window enable/disable to exchange VID1 576p input windows window PAL OSD1 supports 60 50 60 supports Supported mode using 30 IOCTLs change buffer on to Constraints Display fps fps fps video mode driver fps dynamically driver window video using windows formats (1/2/4/8 interlaced zoom RGB666 Calls windows two are acts mechanism in flipping (VID0 mechanisms. window the using following for supports YUV using the supports set DACs the as Driver using bit) the following of can four using digital outputs display and 420 one a are windows three or mode video sizes be per-pixel OSD0 internal resolutions: IOCTLs built VID1) the controlled Semi DAC open(), • • • • sysfs supports controlled interface DACs resolutions: to window for and using Only console Dynamic OSD Analog following statically in 1x, planar in interface OSD DACs starting shown RGB close(), alpha YUV422 VID0 windows 2x the only both RBG one by is window and format removal features: internal into 565 in will both in plane by coordinates ioctl(), use. output 4x blocking Table the format format FBDEV be are (NV12) V4L2 video Linux usable of using not mmap() 2-27 the (UYVY). with and supported interface and encoder kernel. module . the in double FBDEV HD and non-blocking hardware Both video munmap() is by LSP buffering not interface windows the modes allowed 2.10 Linux plane V4L2 modes. DaVinci Kernel are (720p display OSD1. when triple Device SPRS566A and These the Linux driver buffered. This 1080i). Drivers FB – supports plane Drivers JULY 2009 43 is PRODUCT PREVIEW the to format buffer used be Feedback display format www.ti.com this be the can input plane returns of register. passed can (%) input using call OSD offset plane plane window OSD) the or window window command 0 before window for 0.1 corresponding the Documentation 0.72 0.42 OSD OSD command the 2 This video the or or occupancy back the before window OSD1) into This and / for it Submit disabled CPU back including video video loop vsync var_screeninfo 4x) desired be OSD1) video sets including / for or (OSD0 the the framebuffer. loop for LLD 2x and video of 3 desired desired – should framebuffer. the using (OSD0 waiting the the bitmap of framebuffer, the video window of of by of Supported the location framebuffer, for (identity, window: window configuration of coordinate window for BITMAP video the Y The buffer output display window. the input/output for information the the and coordinate coordinate pixel) pixel) for IOCTLs window of of Performance Second) information X X Y color. parameters window. parameters actual per per testing parameters parameters buffered buffers Per screen configuration palette video buffer following: bits bits of fps fps screen framebuffer fps the screen ZOOM starting starting starting Preemption FBDEV composite cursor the and and . screen 50.62 display calculates the the the the Display 25.1 variable fixed current existing configuration background pseudo display configuration each framebuffer 60.97 30.08 (Frames It number the for for input/component the the the the the the variable fixed the the the using of VPBE using VPBE-FBDEV each Rate Desktop Sets Sets command. Blank Gets used Sets (resolution Gets for Sets (resolution Sets Sets (out IOCTL. Configures Synchronizes Changes Changes Changes Specifies plane Description Gets Sets Gets used Preemption Frame DM365 DM365 captured was captured composite Time Latency TV 2-27. 2-28. were were using Real Low Benchmarks http://www.linux-fbdev.org Table Table Drivers tested and numbers refer Drivers KLV-S26A10 benchmarks was Linux VPBE-FBDEV VPBE-FBDEV Device details Bravia Display Display 2009 Kernel performance more DaVinci Performance ED Sony SD Hz JULY – Hz Linux 2.4.1.3.2 • 2.4.1.3.1 For The • • Resolution -60 2.10 -50 2.4.1.3 NTSC PAL Video 480P-60 576P-50 FBIO_SETPOSX FBIO_SETPOSY FBIO_SETZOOM FBIO_SET_CURSOR FBIO_WAITFORVSYNC FBIO_SETPOS FBIOPUTCMAP FBIOPAN_DISPLAY FBIOPUT_FSCREENINFO FBIOPUT_VSCREENINFO FBIOGET_FSCREENINFO FBIOBLANK FBIOGET_VSCREENINFO FBIO_GET_BITMAP_CONFIG_PARAMS FBIO_SET_BITMAP_CONFIG_PARAMS FBIO_SET_BACKG_COLOR Constant FBIO_GET_VIDEO_CONFIG_PARAMS FBIO_SET_VIDEO_CONFIG_PARAMS 44 SPRS566A LSP

PRODUCT PREVIEW Submit 2.4.2 www.ti.com VIDIOC_QUERYSTD VIDIOC_QUERYCTRL, VIDIOC_QUERYCAP VIDIOC_QUERYBUF VIDIOC_QBUF, VIDIOC_G_STD, VIDIOC_G_PARM, VIDIOC_G_INPUT, VIDIOC_G_FMT, VIDIOC_G_CTRL, VIDIOC_G_CROP, VIDIOC_ENUMSTD VIDIOC_ENUMOUTPUT VIDIOC_ENUMINPUT VIDIOC_CROPCAP Constant PAL NTSC 576P-50 480P-60 Video 2.4.2.1 -50 -60 Resolution Documentation • • • • • • • • • The Supported Supported Constraints Features Hz DM365 Hz The Bayer the at Cropped Multi-buffered NTSC Buffer mode Output Can Decoded Support video smaller VIDIOC_DQBUF center VPFE VIDIOC_S_STD be VIDIOC_S_FMT, VIDIOC_S_CTRL VIDIOC_S_PARM VIDIOC_S_CROP pattern VIDIOC_S_INPUT exchange Video and capture Not video loaded Feedback IOCTLs System input and video VIDIOC_QUERYMENU sizes of driver PAL Supported the Constraints Capture input, in input image dynamically driver input video (e.g. YUV capture mechanism supports Calls VIDIOC_TRY_FMT Table with fault in supports QCIF). with input 420 YUV422 Driver a scene pixel 2-29. Table programmable minimum several semi through or For supports built correction, the The open(), mode. get resizer, In None DM365 Frame 2-30. format example, planar Continuous/On IOCTLs. following de-interlaced statically Senses Enumerates Queries Queries Exchanges Queries Gets Queries Gets Gets Gets Enumerates Enumerates Enumerates Information Description video an of Rate DM365 blocking three close(), external VPBE-FBDEV the (UYVY or or or or format start progressive capture sets sets sets sets the (Frames device the or or 30.09 the driver 25.1 These features: 51.26 64.02 into buffers, selects selects a about video status controls supported video video streaming the the the VPFE-V4L2 coordinates. buffer coordinates ioctl(), or fps mode. fps decoder, using capabilities video. the data value current uses the YUYV) driver Per standard the IOCTLs outputs inputs the the of with Linux and and a format, fly video Second) mmap() video current of input, This previewer Performance parameters video buffer bottom cropping The the a mode supports menu support including with control received cropping kernel driver standard IOCTLs are supports can try standards This interlace video LPF control a the and field capture rectangle explained format be feature input and by and for IOCTLs and help of auto munmap() programmed and items the LSP the mmap’ed more – data scaling time resizer current mode RT of current scale sensing can in 2.10 an Linux shown cannot stamping at abilities the CPU external input be through run input it in exchange DaVinci Kernel up V4L2 used occupancy capability to Continuous/On time in be 0.78 0.96 vertically 0.2 pick Table 0 Device captured decoder specification. previewer to SPRS566A the Linux input mechanism. (%) 2-30 Drivers image by an – in . Drivers 2x JULY and this the image to from 2009 fly 45 PRODUCT PREVIEW pointer Feedback www.ti.com user (%) (%) and 2-33 0 format 0.3 Documentation 7.13 1.01 on. back Occupancy Occupancy so Table planar in Submit capture CPU CPU capture loop mmap’ed and RT LLD – semi – YCbCr YCbCr shown I/O video or or 420 subtract, supports Values pointer Values Bayer Bayer YUV (continued) munmap() IOCTLs DFC user or kernel . Raw Raw These the and or input/output I/O for for Second) Second) testing Linux IOCTLs parameters format mode. Per Per mapping Performance the following: mmap() Performance streaming supports fps fps fps fps parameters interpolation, 4:2:2 parameters composite parameters mt9t001 the capture into Preemption stops 25.05 30.03 25.05 30.03 (Frames (Frames memory ioctl(), CFA for Driver or features: blocking CCDC mt9t001 CCDC using VPFE-V4L2 using YCbCr as Rate Rate VPFE-V4L2 to VPFE-V4L2 Sets Gets Description Initiates Starts Configures Gets used statically Desktop close(), such Frame Frame DM365 following Preemption was supports Previewer built captured image captured DM365 DM365 or the SDRAM None None open(), The 2-30. Time Latency were player or input were 2-32. 2-31. http://v4l2spec.bytesex.org/v4l2spec/ pattern Low Real ISIF Table Benchmarks Driver DVD to supports configurations mechanism Calls Drivers mechanism. Table pattern Table dynamically Bayer and numbers from Constraints refer Drivers in Driver benchmarks Supported Linux Bayer and System IOCTLs VIDIOC_STREAMOFF input hardware loaded VPFE-V4L2 VPFE-V4L2 Not exchange Device Previewer details exchange DVPNS-61P image be Display 2009 Kernel Previewer performance more DaVinci Support Performance Various Accepts Converts Can Buffer buffer Input Sony SD Hz Hz JULY – DM365 Hz Hz Supported Features Constraints Supported Linux • • • • • The • 2.4.2.2.2 2.4.2.2.1 For The • • Resolution Resolution -60 -60 2.10 -50 -50 2.4.3.1 2.4.2.2 Video NTSC PAL NTSC PAL Video VPFE_CMD_G_CCDC_PARAMS VPFE_CMD_S_MT9T001_PARAMS VPFE_CMD_G_MT9T001_PARAMS VPFE_CMD_S_CCDC_PARAMS Constant VIDIOC_REQBUFS VIDIOC_STREAMON, 46 2.4.3 SPRS566A LSP

PRODUCT PREVIEW Submit 2.4.4 www.ti.com RSZ_RESIZE RSZ_G_OPER_MODE RSZ_S_OPER_MODE RSZ_G_CONFIG RSZ_S_CONFIG RSZ_QUERYBUF RSZ_REQBUF Constant PREV_PREVIEW PREV_G_CONTROL PREV_S_CONTROL PREV_G_PARAM PREV_S_PARAM PREV_G_OPER_MODE PREV_S_OPER_MODE PREV_G_CONFIG PREV_S_CONFIG, PREV_QUERYBUF PREV_REQBUF PREV_ENUM_CAP Constant 2.4.4.1 Documentation • • • • • • • The Supported Supported Constraints Features DM365 Can exchange Buffer Can Upscaling/downscaling Input UYVY UYVY Support Resizer be be from Resizer or data exchange Not chained loaded Feedback IOCTLs System and YUV Driver mechanism. CCDC, Supported input Constraints 420 dynamically supports Driver with mechanism format Calls Table SDRAM Semi previewer multiplier Table planar 2-34. the or or following supports DDRAM 2-33. built DM365 device output The open(), None Only from statically Starts Gets be Sets Gets Sets Gets Sets Gets Sets Queries previewer Requests Enumerates Description Starts Gets Sets Gets Sets Queries resizer Requests Description DM365 resizer one 1/16x issued features: to Resizer format blocking a a the the the the a a the the the the close(), preview resize do control module control module channel buffer buffer driver input driver input driver input driver input Preview either either while driver preview to into the in 4x Driver on size, size, parameter size, size, in address address parameter operation operation parameter mode. operation operation ioctl(), single streaming the kernel-allocated kernel-allocated preview Single a supports supported module. pixel pixel pixel pixel Linux and Engine shot Supported for for mmap() This shot capabilities format, format, mode mode format, format, mode mode in in is resize kernel kernel-allocated mode This the kernel. the on. mode the supports (“Continuous” ("Continuous" IOCTLs (“Continuous” ("Continuous" previewer previewer and and buffer buffer and and is allocated and IOCTLs similar available data data data data IOCTLs or or mumap() LSP user-allocated user-allocated source source mmap’ed source source to to buffers buffers PREV_S_PARAM tune shown or or or or to 2.10 Linux Single Single Single tune Single etc etc etc etc image at at DaVinci at at Kernel the in and Shot Shot Shot Shot the the the the buffers buffers Table image previewer resizer previewer resizer user mode) mode) Device mode) mode) SPRS566A except to to Linux 2-34 do do pointer Drivers I/O I/O that – with with Drivers JULY it buffer can 2009 47 PRODUCT PREVIEW face 2-35 Feedback www.ti.com the for engine Table in 2-36 bytes. address detection Documentation hardware of Table shown buffer in hardware: Submit 13200x4 area detection AEW AEW_S_PARAM direction size features: IOCTLs shown by work face the of mumap() mumap() engine of the set for the engine and and and buffer IOCTLs following detection, IOCTLs applications hardware kernel. hardware the the for supports area parameters parameters address settings IOCTLs module mmap() mmap() Driver with size module Linux multiple work driver Detection frame parameters parameters/modules Detection a Detection AEW hardware by supports supports the face ioctl(), ioctl(), check Engine hardware Engine Face input (AEW) resolution features: parameters Face compression into Face window the the hardware. used AEW needs AEW current following AEW the driver Driver detection DM365 be close(), close(), the the the Window Black Saturation A-Law minimum AEW driver face 320x240 following Balance DM365 can 2-36. Description Sets • • • • Gets Enables Disables Description Initializes Gets Enables Initializes detection statically (AEW) like it of the None None open(), The open(), The None The 2-35. built that Table data White or so Driver Balance Table input supports parameters White module Calls Calls Driver Drivers (luma) controller pattern dynamically Constraints Constraints Drivers Dectection Expose/Auto kernel Supported Supported module CCD Linux Y-only configurable and and Bayer System IOCTLs System IOCTLs loaded Not Not Device in Detection Auto Face Expose/Auto from be 2009 loadable Kernel Auto Face DaVinci Support Support Input Can Image A Standalone Supports Supports JULY – DM365 DM365 Supported Supported Features Constraints Features Constraints Supported Supported Linux • • The • • • • • The 2.10 2.4.6.1 2.4.5.1 AEW_G_PARAM AEW_ENABLE AEW_DISABLE Constant AEW_S_PARAM FACE_DETECT_EXECUTE FACE_DETECT_SET_BUFFER Constant FACE_DETECT_SET_HW_PARAM FACE_DETECT_GET_HW_PARAM 48 2.4.6 SPRS566A 2.4.5 LSP

PRODUCT PREVIEW Submit 2.4.7 www.ti.com AF_DISABLE AF_ENABLE AF_G_PARAM AF_S_PARAM Constant 2.4.7.1 Documentation • • • The Supported Supported Constraints Features DM365 Can Input Image Support AF Driver be from AF in Not loaded Feedback IOCTLs System Bayer and Driver CCD supports Supported Constraints dynamically pattern controller Calls the following or built Table open(), None None The features: statically Disables Enables Gets • • • • Sets Description AF 2-37. A-Law HMF IIR Paxel the the close(), driver Filter DM365 AF following AF AF Filter parameters into compression Engine hardware Engine parameters supports Parameter ioctl(), the parameters/modules AF with Linux settings IOCTLs mmap() module parameters the kernel. IOCTLs and set of mumap() LSP by shown the AF_S_PARAM AF 2.10 Linux hardware: in Table DaVinci Kernel 2-37 Device SPRS566A Linux Drivers – Drivers JULY 2009 49 PRODUCT PREVIEW be for the OSS can use Feedback www.ti.com interfaces to compatible (McASP) driver is supports It port OSS simulator Documentation converted (2.6.18) The serial DM365. are Submit (OSS) and audio version Architecture plughw:0,0. system kernel applications DM355, EDMA EDMA EDMA Driver as 2 this Driver user sound ALSA multi-channel Architecture space DM644x, the Audio open DM644x/355/365 AudioDMA Though user for HelperDrivers Driver and OSS-based from ASP Driver SoundCore SoundCore DM365 AudioDriver McASP +DIT McASP Driver supports all Audio Audio Applications (McBSP) and /dev/mixer. that (ALSA) that DM644x/355/365 AudioDriver Audio Applications(UserLevel) port and accessed DM6467 DM355 driver be AIC33Driver CODEC serial expected 2-6. AIC32Codec Codec(AIC33)Driver 2 can char I CDriver is /dev/dsp architecture DM644x/DM355/DM365Hardware(McBSP,I C,EDMA,etc.) a it DM644x/ DM355/DM365 AudioDriver as buffer DM644x, is User Figure driver Space Space Kernel sound 2-5. layer, Hardware Drivers driver Space Space Kernel ALSA Hardware Drivers Linux user Figure The audio Linux multi-channel emulation Device from or an Driver 2009 libraries. advanced DaVinci Kernel DaVinci JULY – Linux with (deprecated). accessed through ALSA The DM6467, Audio 2.10 50 SPRS566A 2.5 LSP

PRODUCT PREVIEW Submit 2.5.1 www.ti.com SNDCTL_DSP_GETIPTR SNDCTL_DSP_GETOPTR SNDCTL_DSP_SETTRIGGER SNDCTL_DSP_GETTRIGGER SNDCTL_DSP_POST SNDCTL_DSP_SETDUPLEX SNDCTL_DSP_SYNC SNDCTL_DSP_SETFRAGMENT SNDCTL_DSP_GETCAPS SNDCTL_DSP_GETBLKSIZE SNDCTL_DSP_GETFMTS SNDCTL_DSP_SETFMT SNDCTL_DSP_SPEED SNDCTL_DSP_CHANNELS SNDCTL_DSP_STEREO OSS_GETVERSION Constant Documentation • • • • • • • • • • The (deprecated) Supported Supported Constraints Features Support – DM644x, – – – – DM6467: Supports Plays Mixer DSP, 34 Blocking Audio Record DaVinci sample McBSP S/PDIF McASP McASP Non-blocking and and I2S, interface zeros channel Not McBSP McASP and and Feedback mode OSS System audio DM355 separate and rates supports works in works Supported using playback Constraints DIT IOCTLs set left/right driver is is (from mode and Calls in in mode slave. slave. a to volume Table loop slave slave only stereo capabilities DM365: supports 7350 justified job 44100Hz mode mode 2-38. settings Returns Returns Starts Returns Notifies Turns Application Requests Returns Returns Returns Selects Sets Sets Sets Identifies Description mode - when 96000 Table open(), Supports • • The the formats the the stereo Audio as as ON audio DM355 Does Non-Blocking the by the the a the a the the audio no and sampling number following for the well well a the bitmask list 2-38 Hz) waits sample default driver fragment or current current current block recording close(), data driver left of Driver duplex 48000Hz not mono AFMT_S16_LE as as driver natively and of shows until and that size rate identifying is master master support format version audio recording playback trigger features: channel mode size supplied the DM365) there and/or read(), that Supported right does supported mode channels last the and sampling bits the may mode. mode. DSP, pointer the playback channels pointer byte number ALSA sound not write(), (DM644x by be capabilities (16 written sample support a right-justified, the In In driver ALSA pause rates IOCTLs of in bit) the the ioctl(), fragments sync application to formats uses audio and the of default default in the IOCTLs the a device supported for sound select() LSP DM355) following output format data left-justified configuration, configuration, has card 2.10 Linux transfers been only. DSP features: DaVinci Kernel played device. features Device AIC33 AIC32 SPRS566A Linux Drivers (DM644x, is is – master master Drivers JULY 2009 51 PRODUCT PREVIEW at: the code of one Feedback www.ti.com Application only 100% available source application API. supports is it offers Documentation the source recording mixer a Submit cleared, a the as same library If making by recording used and The the the IOCTLs mode. be as (continued) API can supported API. for usability, stereo formats Audio that are bytes bytes IOCTLs in capability selected IOCTLs Kernel kernel channels card sample supports a voltage Audio channels channels recorded recorded the currently Specific read ALSA the the sound of are with channel output a supported than level currently currently that improvements input level Specific bias control frequency of of that level control number indicating indicating indicating mode output comes gain natively tone rather gain tone online-documentation information Supported major of input channels current number number device sampling indicates bitmask bitmask bitmask list DM6467 treble master line microphone the input output bass API microphone (mono). Mixer a a a a the the the the the adds set, The Driver the non-blocking 2-40. but library Architecture DM644x/DM355/DM365 Returns Description Sets Indicates Indicates Indicates Returns Returns Returns When channel Reads Returns Returns Description Description Returns Returns Sets Resets Indicates Indicates Indicates Indicates Indicates Audio the API, Table . 2-39. looking. Sound 2-38. use Drivers kernel Table better Linux Drivers Table the should Linux of Device and 2009 Advanced Kernel DaVinci JULY – Linux programmers functionality simpler http://www.alsa-project.org The 2.10 SOUND_MIXER_MICBIAS SOUND_MIXER_BASS SOUND_MIXER_TREBLE Constant Constant SOUND_MIXER_INFO SOUND_PCM_READ_CHANNELS SOUND_PCM_READ_RATE SOUND_PCM_READ_BITS SOUND_MIXER_DEVMASK SOUND_MIXER_CAPS SOUND_MIXER_STEREODEVS SOUND_MIXER_IGAIN SOUND_MIXER_OGAIN SOUND_MIXER_RECMASK SOUND_MIXER_LINE SOUND_MIXER_MIC SOUND_MIXER_RECSRC SNDCTL_DSP_NONBLOCK SNDCTL_DSP_RESET SOUND_MIXER_VOLUME Constant SNDCTL_DSP_GETOSPACE SNDCTL_DSP_GETISPACE 52 SPRS566A LSP

PRODUCT PREVIEW Submit 2.5.2 www.ti.com Sampling Sampling 2.5.2.1 48000 44100 32000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz DM644x Rate Rate Application DDR ARM Audio performance in in frequency / DSP ALSA Word Word Performance Feedback Figure buffer frequency bits bits Length Length 16 16 16 16 16 16 16 16 Read numbers Table Table = 2-7. 162 size in in and 2-42. 2-41. DM644x

Data rate in bits/sec MHz = = 100000 200000 300000 400000 500000 600000 700000 800000 900000 No. No. were and 4096 270 Write per per of of 0 DM644x DM644x 0030041048000 44100 32000 8000 Sample Sample Benchmarks Channels Channels MHz captured 2 2 2 2 2 2 2 2 bytes Performance Audio Audio Audio apigRt nHz in Rate Sampling ALSA using No. No. 845850 777124 563901 140976 835127 767292 556793 139215 of of ALSA ALSA the Write Low Bits/Sec Bits/Sec following: Write Latency Read and Buffer Buffer Read Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Preemption Write Read – – Duration Duration LLD LLD 2.10 Linux 297.52 301.28 49.59 53.97 74.38 50.22 54.66 75.33 – LLD DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 0.56 0.56 0.42 0.15 0.44 0.46 0.35 0.14 – Drivers JULY 2009 53 PRODUCT PREVIEW Feedback www.ti.com 0.41 0.85 0.95 0.99 0.42 0.84 1.22 1.04 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 75.33 54.66 50.22 74.38 53.97 49.59 Submit 301.28 297.52 RT RT Duration Duration – – Read Write KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Preemption Read Buffer Buffer and Read Write Time following: bits/Sec bits/Sec Write Real the ALSA ALSA of of 139215 556794 767296 835129 140976 563901 777123 845850 No. No. ALSA using Audio Sampling Rate in Hz Audio Audio Performance bytes 2 2 2 2 2 2 2 2 captured MHz Channels Channels Sample Sample DM644x DM644x 8000 32000 44100 48000 0 of of per per Write 297 4096 were

900000 800000 700000 600000 500000 400000 300000 200000 100000 No. No.

DM644x = = aart nbits/sec in rate Data 2-43. 2-44. MHz and in in 2-8. size 162 Drivers Table = Table numbers Read Drivers 16 16 16 16 16 16 16 16 Length Length bits bits frequency buffer Figure Linux Word Word ALSA Device DSP / frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 44100 48000 32000 2.10 2.5.2.2 Sampling Sampling 54 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com Sampling Sampling 2.5.2.3 96000 48000 44100 32000 96000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz Rate Rate Application DDR ARM Audio performance in in frequency / DSP OSS Word Word Feedback Figure buffer frequency bits bits Read Length Length 16 16 16 16 16 16 16 16 16 16 numbers Table = Table 162 size 2-9. and in in MHz 2-46. 2-45. = = DM644x Data rate in bits/sec No. No. Write 1000000 1200000 were 200000 400000 600000 800000 4096 270 per per of of DM644x DM644x Sample Sample 0 Channels Channels MHz 0030041040096000 48000 44100 32000 8000 captured Performance 2 2 2 2 2 2 2 2 2 2 bytes Audio ui S L Performance LLD OSS Audio Audio Audio apigRt nHz in Rate Sampling using OSS No. No. 11414230 1112191 855943 786399 570643 142769 834269 766509 556261 139214 of of Low Write OSS OSS the Bits/Sec Bits/Sec following: Latency Write Read and Buffer Buffer Read Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Preemption Write Read – – Duration Duration LLD LLD 2.10 Linux – 293.78 301.29 36.75 49.00 53.34 73.50 37.71 50.28 54.72 75.40 LLD DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 0.52 0.41 0.36 0.29 0.14 0.64 0.50 0.33 0.31 0.14 – Drivers JULY 2009 55 PRODUCT PREVIEW Feedback www.ti.com 0.38 0.73 0.84 0.79 1.06 0.44 0.60 0.84 1.00 1.00 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 75.40 54.72 50.28 37.71 73.50 53.34 49.00 36.75 Submit 301.29 293.78 RT RT Duration Duration – – Read Write KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Read Preemption Buffer Buffer and Read Write Time following: bits/Sec bits/Sec Write OSS OSS the Real of of 139214 556259 766508 834265 142769 570642 786400 855943 1112189 1141228 OSS No. No. using Audio Audio Sampling Rate in Hz Audio OSS RT Performance Audio bytes 2 2 2 2 2 2 2 2 2 2 Performance captured MHz 8000 32000 44100 48000 96000 Channels Channels DM644x DM644x 0 Sample Sample of of per per 270 4096 800000 600000 400000 200000

DM644x were

1200000 1000000 Write No. No. 2-47. 2-48. = bits/sec in rate Data = MHz in in and 2-10. size 162 Drivers Table Table = numbers Drivers 16 16 16 16 16 16 16 16 16 16 Length Length Read bits bits frequency buffer Figure Linux Word Word OSS Device DSP / frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 96000 48000 96000 32000 44100 2.10 2.5.2.4 Sampling Sampling 56 SPRS566A LSP

PRODUCT PREVIEW Submit 2.5.3 www.ti.com Sampling Sampling 2.5.3.1 48000 44100 32000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz DM355 Rate Rate Application DDR ARM Audio performance in in frequency / Performance DSP ALSA Word Word Feedback buffer frequency bits bits Length Length 16 16 16 16 16 16 16 16 Figure Read numbers = 162 size in in Table Table and 2-11. MHz and

Data rate in bits/sec = = No. No. 1000000 1200000 1400000 1600000 1800000 were 200000 400000 600000 800000 4096 270 Write per per 2-50. 2-49. DM355 of of Benchmarks 0 Sample Sample 0030041048000 44100 32000 8000 Channels Channels MHz captured 2 2 2 2 2 2 2 2 bytes Performance DM355 DM355 Audio apigRt nHz in Rate Sampling using Audio Audio No. No. Write 1554177 1427891 1036125 1534629 1409887 1023121 259034 255798 of of the Low bits/Sec bits/Sec Write Read and following: Latency Read Performance Performance Buffer Buffer Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 Size Size in in – – KB KB LSP Write Read LLD LLD Preemption Duration Duration – 2.10 Linux LLD 161.92 163.97 26.99 29.37 40.48 27.33 29.75 41.00 DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 1.77 0.27 0.96 0.18 1.58 0.17 0.3 0.1 – Drivers JULY 2009 57 PRODUCT PREVIEW Feedback 2 www.ti.com 0.39 0.61 2.11 0.83 3.72 1.54 1.27 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in 41.04 29.79 27.37 40.01 29.03 26.67 Submit 163.97 159.90 RT – Duration Duration RT RT Read Write – – KB KB in in Size Size 5120 5120 5120 5120 5120 5120 5120 5120 Performance Buffer Buffer Performance Performance Read Preemption and following: Read Write bits/Sec bits/Sec the Time of of 255798 262300 1021943 1408107 1532579 1048432 1444772 1572536 Write Audio Audio No. No. using Real Sampling Rate in Hz Audio DM355 DM355 bytes 2 2 2 2 2 2 2 2 captured MHz Channels Channels 8000 32000 44100 48000 Sample Sample 0 DM355 of of 2-51. 2-52. per per 270 4096 800000 600000 400000 200000

Performance

were 1800000 1600000 1400000 1200000 1000000 No. No. = bits/sec in rate Data = MHz 2-12. Table Table in in size 162 Write Drivers = numbers Figure and Drivers 16 16 16 16 16 16 16 16 Length Length bits bits frequency buffer Linux Word Word Read Device DSP / frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 48000 32000 44100 2.10 2.5.3.2 Sampling Sampling 58 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com Sampling Sampling 2.5.3.3 96000 48000 44100 32000 96000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz Rate Rate Application DDR ARM Audio performance in in frequency / DSP OSS Word Word Feedback Figure buffer frequency bits bits Read Length Length 16 16 16 16 16 16 16 16 16 16 numbers = Table Table 162 size 2-13. and in in MHz = Data rate in bits/sec = 2-54. 2-53. No. No. Write 1000000 1500000 2000000 2500000 were DM355 500000 4096 270 per per of of Sample Sample 0 DM355 DM355 Channels Channels 0030041040096000 48000 44100 32000 8000 MHz captured Performance 2 2 2 2 2 2 2 2 2 2 bytes Audio ui S L Performance LLD OSS Audio Audio Audio apigRt nHz in Rate Sampling using OSS No. No. 2096507 1572505 1444753 1048416 2042184 1532141 1407734 1021751 262298 255789 of of OSS OSS Low Write the bits/Sec bits/Sec following: Latency Write Read and Buffer Buffer Read Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Preemption Write Read – – LLD LLD Duration Duration 2.10 Linux – 159.91 163.97 20.01 26.67 29.03 40.01 50.54 27.38 29.79 41.05 LLD DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 1.34 2.72 0.23 4.82 1.13 1.68 0.29 0.13 5.9 1.8 – Drivers JULY 2009 59 PRODUCT PREVIEW Feedback www.ti.com 2.5 1.26 0.56 1.97 7.12 1.22 0.57 2.26 2.17 1.49 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 41.05 29.79 27.38 20.54 40.01 29.03 26.67 20.01 Submit 169.97 159.91 RT RT Duration Duration – – Read Write KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Read Preemption Buffer Buffer and Read Write Time following: bits/Sec bits/Sec Write the OSS OSS Real of of 255790 262297 1021736 1407739 1532097 2042184 1048405 1444729 1572486 2096473 No. No. OSS using Sampling Rate in Hz Audio Audio Audio OSS RT Performance Audio bytes 2 2 2 2 2 2 2 2 2 2 Performance DM355 DM355 captured MHz Channels Channels 8000 32000 44100 48000 96000 Sample Sample 0 of of per per 270 DM355 4096 500000 2-55. were 2-56.

2500000 2000000 1500000 1000000 Write No. No.

= = bits/sec in rate Data MHz in in 2-14. and size 162 Table Table Drivers = numbers Drivers 16 16 16 16 16 16 16 16 16 16 Length Length Read bits bits frequency buffer Figure Linux Word Word OSS Device DSP / frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 96000 48000 96000 32000 44100 2.10 2.5.3.4 Sampling Sampling 60 SPRS566A LSP

PRODUCT PREVIEW Submit 2.5.4 www.ti.com Sampling Sampling 2.5.4.1 96000 48000 44100 32000 96000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz DM6467 Rate Rate Application DDR ARM Audio performance in in frequency / DSP ALSA Word Word Performance Feedback Figure buffer frequency bits bits Length Length 16 16 16 16 16 16 16 16 16 16 Read numbers Table Table = 2-15. 297 size in in and 2-58. 2-57. MHz DM6467 = Data rate in bits/sec = No. No. 1000000 1500000 2000000 2500000 were and 500000 4096 297 Write per per of of DM6467 DM6467 Sample Sample 0 Benchmarks Channels Channels 0030041040096000 48000 44100 32000 8000 MHz captured 2 2 2 2 2 2 2 2 2 2 bytes Performance Audio Audio Audio apigRt nHz in Rate Sampling using ALSA No. No. 2072103 1554082 1427801 1036056 2044938 1533982 1409357 1022807 259015 255780 of of ALSA ALSA the Low Write bits/Sec bits/Sec following: Write Latency Read and Buffer Buffer Read Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Write Read Preemption – – Duration Duration LLD LLD 2.10 Linux 161.93 163.98 20.24 26.99 29.38 40.48 20.51 27.34 29.76 41.01 – DaVinci Kernel LLD in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 1.04 0.59 0.58 0.47 1.02 0.73 0.57 0.27 0.13 0.1 – Drivers JULY 2009 61 PRODUCT PREVIEW Feedback www.ti.com 1.7 0.18 0.78 0.81 0.88 0.22 0.81 0.95 0.81 1.18 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 41.01 29.76 27.34 20.51 40.48 29.38 26.99 20.24 Submit 163.98 161.93 RT RT Duration Duration – – Read Write KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Read Preemption Buffer Buffer and Read Write Time following Write bits/Sec bits/Sec Real the ALSA ALSA of of 255779 259015 1022815 1409365 1533991 2044953 1036056 1427800 1554079 2072100 No. No. ALSA using Sampling Rate in Hz Audio Audio Audio Performance bytes 2 2 2 2 2 2 2 2 2 2 captured Channels Channels 8000 32000 44100 48000 96000 Sample Sample 0 DM6467 DM6467 of of per per Write 4096

500000

were 2500000 2000000 1500000 1000000 DM6467 No. No. = bits/sec in rate Data 2-59. MHz 2-60. MHz and in in 297 size 297 2-16. Drivers = Table = Table numbers Read Drivers 16 16 16 16 16 16 16 16 16 16 Length Length bits bits buffer Figure Linux Word Word ALSA Device frequency frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 96000 44100 48000 96000 32000 2.10 2.5.4.2 Sampling Sampling 62 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com Sampling Sampling 2.5.4.3 96000 48000 44100 32000 96000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz Rate Rate Application DDR ARM Audio performance in in frequency / DSP OSS Word Word Feedback Figure buffer frequency bits bits Read Length Length 16 16 16 16 16 16 16 16 16 16 numbers Table = Table 2-17. 297 size and in in MHz 2-62. 2-61.

Data rate in bits/sec = = No. No. DM6467 Write 1000000 1500000 2000000 2500000 were 500000 4096 297 per per of of DM6467 DM6467 0 Sample Sample 0030041040096000 48000 44100 32000 8000 Channels Channels MHz captured Performance 2 2 2 2 2 2 2 2 2 2 bytes Audio ui S L Performance LLD OSS Audio Audio Audio apigRt nHz in Rate Sampling using OSS No. No. 2072103 1554082 1427801 1036056 2044938 1533982 1409357 1022807 259015 255780 of of Low OSS OSS the Write bits/Sec bits/Sec following: Latency Write Read and Buffer Buffer Read Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Preemption Write Read – – Duration Duration LLD LLD 2.10 Linux 161.93 163.98 20.24 26.99 29.38 40.48 20.51 27.34 29.76 41.01 – LLD DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 1.04 0.59 0.58 0.47 1.02 0.73 0.57 0.27 0.13 0.1 – Drivers JULY 2009 63 PRODUCT PREVIEW Feedback www.ti.com 1.7 0.18 0.78 0.81 0.88 0.22 0.81 0.95 0.81 1.18 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 41.01 29.76 27.34 20.51 40.48 29.38 26.99 20.24 Submit 163.98 161.93 RT RT Duration Duration – – Read Write KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Read Preemption Buffer Buffer and Read Write Time following bits/Sec bits/Sec Write OSS OSS the Real of of 255779 259015 1022815 1409365 1533991 2044953 1036056 1427800 1554079 2072100 OSS No. No. using Audio Audio Sampling Rate in Hz Audio OSS RT Performance Audio bytes 2 2 2 2 2 2 2 2 2 2 Performance captured Channels Channels 8000 32000 44100 48000 96000 DM6467 DM6467 Sample Sample 0 of of per per 4096 500000

DM6467 were

2500000 2000000 1500000 1000000 Write No. No. 2-63. 2-64. = bits/sec in rate Data MHz MHz in in and 2-18. 297 size 297 Drivers Table Table = = numbers Drivers 16 16 16 16 16 16 16 16 16 16 Length Length Read bits bits buffer Figure Linux Word Word OSS Device frequency frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 96000 48000 96000 32000 44100 2.10 2.5.4.4 Sampling Sampling 64 SPRS566A LSP

PRODUCT PREVIEW Submit 2.5.5 www.ti.com Sampling Sampling 2.5.5.1 96000 48000 44100 32000 96000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz DM365 Rate Rate Application DDR ARM Audio performance in in frequency / Performance DSP ALSA Word Word Feedback Figure buffer frequency bits bits Length Length 16 16 16 16 16 16 16 16 16 16 Read numbers Table Table = 2-19. 243 size in in and MHz 2-66. and 2-65. = Data rate in bits/sec = DM365 No. No. 1000000 1500000 2000000 2500000 3000000 3500000 were 500000 4096 297 Write per per of of Benchmarks DM365 DM365 Sample Sample 0 Channels Channels 0030041040096000 48000 44100 32000 8000 MHz captured 2 2 2 2 2 2 2 2 2 2 bytes Performance Audio ui LALDPerformance LLD ALSA Audio Audio Audio apigRt nHz in Rate Sampling ALSA using No. No. 3111430 1555736 1443791 1035911 3066595 1533937 1422012 1022741 ALSA ALSA 258980 256053 of of the Read Low Bits/Sec Bits/Sec following: Write Read Latency and Buffer Buffer Write Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Write Read Preemption – – Duration Duration LLD LLD 2.10 Linux 161.96 163.81 13.48 26.96 29.06 40.49 16.68 27.34 29.50 41.01 – LLD DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 1.78 0.93 0.83 0.59 0.22 1.83 0.88 0.71 0.73 0.18 – Drivers JULY 2009 65 PRODUCT PREVIEW Feedback 2 www.ti.com 0.5 1.43 1.82 1.89 0.54 1.16 1.67 1.95 3.08 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 41.01 29.50 27.34 13.68 40.49 29.24 26.99 13.50 Submit 163.00 161.96 RT RT Duration Duration – – Read Write KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Preemption Read Buffer Buffer and Time Read Write following: bits/Sec bits/Sec Write Real the ALSA ALSA of of 255745 258980 1022750 1422019 1533945 3066654 1035910 1434490 1553853 3107672 No. No. ALSA using Sampling Rate in Hz Audio Audio Audio ALSA RT Performance Audio Performance bytes 2 2 2 2 2 2 2 2 2 2 captured MHz Channels Channels DM365 DM365 8000 32000 44100 48000 96000 Sample Sample 0 of of per per Write 297 4096 500000 DM365 were

No. No. 3500000 3000000 2500000 2000000 1500000 1000000 2-67.

2-68. = = MHz bits/sec in rate Data and in in 2-20. size 243 Drivers Table Table = numbers Read Drivers 16 16 16 16 16 16 16 16 16 16 Length Length bits bits frequency buffer Figure Linux Word Word ALSA Device DSP / frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 32000 44100 48000 96000 48000 96000 32000 44100 2.10 2.5.5.2 Sampling Sampling 66 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com Sampling Sampling 2.5.5.3 96000 48000 44100 32000 96000 48000 44100 32000 8000 8000 Documentation • • • The Hz Hz Rate Rate Application DDR ARM Audio performance in in frequency / DSP OSS Word Word Feedback Figure buffer frequency bits bits Read Length Length 16 16 16 16 16 16 16 16 16 16 numbers = Table Table 243 size 2-21. and in in Data rate in bits/sec 1000000 1500000 2000000 2500000 3000000 3500000 MHz 500000 = = 2-70. 2-69. No. No. Write were DM365 4096 297 per per of of 0 0030041040096000 48000 44100 32000 8000 Sample Sample DM365 DM365 Channels Channels MHz captured Performance 2 2 2 2 2 2 2 2 2 2 bytes Audio Audio Audio apigRt nHz in Rate Sampling using OSS No. No. 3144189 1572309 1457611 1048252 3061327 1531966 1420284 1021602 262252 255740 of of OSS OSS Low Read the bits/Sec bits/Sec following: Latency Write Read and Write Buffer Buffer Performance Performance Desktop 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Size Size Performance in in KB KB LSP Preemption – – Write Read LLD LLD Duration Duration 2.10 Linux – 159.93 164.01 13.34 26.68 28.78 40.01 13.70 27.38 29.53 41.06 LLD DaVinci Kernel in in Sec Sec Device SPRS566A Linux Occupancy Occupancy Drivers %CPU %CPU 1.65 0.75 0.45 0.65 0.18 1.53 0.88 0.88 0.61 0.19 – Drivers JULY 2009 67 PRODUCT PREVIEW Feedback www.ti.com 0.53 0.95 1.18 1.17 2.76 0.52 1.37 1.18 1.29 2.27 %CPU %CPU Occupancy Occupancy Documentation Sec Sec in in RT – 41.06 29.53 27.38 13.70 40.01 27.93 26.34 13.17 Submit 161.94 159.93 RT RT Duration Duration Read Write – – KB KB in in Performance Size Size 5120 5120 5120 5120 5120 5120 5120 5120 5120 5120 Performance Performance Read Preemption Buffer Buffer and Read Write Time following: bits/Sec bits/Sec Write the OSS OSS Real of of 259003 262252 1021600 1420282 1531962 3061260 1048253 1501615 1592364 3184272 No. No. OSS using Audio Audio Sampling Rate in Hz Audio bytes 2 2 2 2 2 2 2 2 2 2 Performance DM365 DM365 captured MHz Channels Channels Sample Sample 8000 32000 44100 48000 96000 0 of of per per 297 DM365 4096 2-71. were 2-72. Write No. No.

500000 = = MHz

3500000 3000000 2500000 2000000 1500000 1000000 aart nbits/sec in rate Data in in 2-22. and size 243 Table Table Drivers = numbers Drivers 16 16 16 16 16 16 16 16 16 16 Length Length Read bits bits frequency buffer Figure Linux Word Word OSS Device DSP / frequency in in 2009 Kernel performance DaVinci Audio ARM DDR Application Rate Rate JULY – Hz Hz Linux • • • The 8000 8000 96000 32000 44100 48000 44100 48000 96000 32000 2.10 2.5.5.4 Sampling Sampling 68 SPRS566A LSP

PRODUCT PREVIEW Submit 2.6.1 2.6 www.ti.com Documentation Ethernet • • • • • • Following connected The Constraints Supported Features Support – DM6467 Full Promiscuous Multicast Auto 10/100 Ethernet 1000 and Negotiation features Not Driver Mbps to and Feedback Half Mbps and the driver Constraints Duplex mode Speed Broadcast MAC speed are supports supported layer modes • • • • • • None Figure using the board Hard-coding Currently registers. Receive QoS Multiple Interrupt Hardware Linux by Kernel Space Space the support 2-23. User design the receive Flow MDIO pacing Gigabit 2.6 driver: Linux of EthernetControllerDriver with (different NAPI LinuxSocketLayerand LinuxNetworkingCore Control NetworkingProtocols interface. PHY_MASK and feature EMACHardware Ethernet VLAN Kernel Application Interface. transmit using from tag Ethernet facility RXnFREEBUFFER discrimination to TI channel The 0x3 EVMs). is driver (up Driver not are to available communicates 0x3) LSP not using supported. may 2.10 Linux and multiple on not DaVinci DM6467. RXnFLOWTHRESH Kernel work to RX Device the SPRS566A on channels. Linux PHY, another Drivers – Drivers which JULY 2009 69 is PRODUCT PREVIEW Feedback www.ti.com Sec in 60 60 60 60 60 Interval Documentation EVM). 100-LLD Submit LLD tests. – (DM644x LLD the – for mode MBytes Values in used -t60" 496 510 509 509 client 479.2 Size -d in duplex. was boot. Performance full Transfer disk DUT2 100 Performance size/2> following: bugfix) and 100 hard the mode. 100-LLD 100Mbps window CPMAC < mode using Preemption client -w through CPMAC in TCP Window Size in KBytes ip> server DM644x 69.4 71.3 71.2 71.1 67.09 in iperf negotiation, Mbits/Sec(Tx+Rx) captured booted Benchmarks Desktop DM644x for server " 2-24. < auto is patch-iperf-linux-2.6.21 and were -s been 16 32 64 128 202 DUT1 MHz -c in 2-73. on Bandwidth Latency has here (with Figure 270 "iperf Drivers "iperf = run Table numbers 0.00 Low is EVM 80.00 60.00 40.00 20.00 Drivers 2.0.2

200.00 180.00 160.00 140.00 120.00 100.00

cmd: cmd: Mbits/S in Bandwidth configured KBytes Linux captured tool is Performance in side Cable Device side frequency version data DM644x iperf Size 2009 64 16 32 128 202 Kernel performance DaVinci Cross Client Iperf The The ARM CPMAC The Server JULY – DM644x Linux • • • • The • • • • Window 2.10 TCP 2.6.2.1 70 SPRS566A 2.6.2 LSP

PRODUCT PREVIEW Submit www.ti.com 2.6.2.2 TCP Documentation Window • • • • • • • • The The The Iperf Client Server The CPMAC ARM Cross performance 212 128 32 16 64 Size DM644x data iperf version frequency side Cable side in Feedback is tool captured KBytes configured Bandwidth in Mbits/S cmd: cmd: 100.00 120.00 140.00 160.00 180.00 200.00 2.0.2 EVMs 20.00 40.00 60.00 80.00 is Real numbers 0.00 Table run = "iperf "iperf 270 (with Figure here Time Bandwidth on has 2-74. in -c MHz DUT1 -s 63 418202 128 64 32 16 were patch-iperf-linux-2.6.21 is been auto < Preemption " server 2-25. for DM644x captured Mbits/Sec(Tx+Rx) negotiation, iperf in 56.17 booted 56.7 56.2 54.9 52.9 server DM644x ip> C idwSz nKBytes in Size Window TCP in CPMAC -w client through using mode < window CPMAC 100Mbps 100-RT mode. the and 100 hard bugfix) following: size/2> DUT2 Performance 100 Transfer disk full Performance was duplex. boot. in -d Size 402.6 client 405 402 392 378 -t60" used in MBytes Values mode for LSP the – (DM644x RT tests. – 2.10 Linux RT 100-RT DaVinci Kernel EVM). Interval Device SPRS566A 60 60 60 60 60 Linux in Drivers Sec – Drivers JULY 2009 71 PRODUCT PREVIEW Feedback www.ti.com mode. Sec in 60 60 60 60 60 client in Interval Documentation 100-LLD EVM) Submit LLD tests. – LLD (DM355 the – for DUT MBytes Values in and used -t60" 185 172.5 184.6 184.2 182.7 Size -d was Performance mode Transfer 100 Performance size/2> following: bugfix) server 100 the in mode. 100-LLD window Preemption < CPGMAC using server -w network in CPGMAC TCP Window Size in KBytes ip> on Mbits/Sec DM355 Desktop 24.20 25.80 25.80 25.80 25.50 iperf captured PC Benchmarks DM355 for server " 2-26. < is patch-iperf-linux-2.6.21 were -s Bandwidth Linux MHz -c 16 32 64 128 212 and Latency 2-75. on here (with 270 Figure "iperf Drivers "iperf = run Low 100Mbps Table numbers is 0.00 Drivers to 2.0.4 80.00 60.00 40.00 20.00 cmd:

200.00 180.00 160.00 140.00 120.00 100.00 cmd: adit nMbits/S in Bandwidth KBytes Linux captured tool set Cable in side Device is Performance side frequency version data iperf Size 2009 16 32 64 128 212 Kernel performance DaVinci Straight Iperf The Speed ARM The Server Client JULY – DM355 Linux • • • The • • • • Window 2.10 TCP 2.6.3.1 72 SPRS566A 2.6.3 LSP

PRODUCT PREVIEW Submit www.ti.com 2.6.3.2 TCP Documentation Window • • • • • • • The Speed The Iperf Client Server The ARM Straight performance 128 212 64 32 16 Size data iperf version frequency side is side in Feedback Cable set tool captured KBytes cmd:

Bandwidth in Mbits/S cmd: 100.00 120.00 140.00 160.00 180.00 200.00 2.0.4 to is 20.00 40.00 60.00 80.00 numbers 0.00 Table 100Mbps Real run = "iperf "iperf 270 Figure (with here on Time 2-76. -c MHz Linux Bandwidth -s were 63 418212 128 64 32 16 patch-iperf-linux-2.6.21 is < " 2-27. server for Preemption DM355 PC captured iperf 23.20 23.20 21.86 22.24 21.40 DM355 Mbits/Sec on ip> C idwSz nKBytes in Size Window TCP in CPGMAC network -w server using < CPGMAC window 100-RT mode. in the 100 server bugfix) following: size/2> Transfer Performance 100 mode Performance was -d 151.99 Size 166.2 166.2 156.2 159.3 -t60" used and in MBytes DUT Values for LSP the – (DM355 RT tests. – 2.10 Linux RT 100-RT DaVinci EVM) Kernel Interval Device in SPRS566A client 60 60 60 60 60 Linux in Drivers Sec mode. – Drivers JULY 2009 73 PRODUCT PREVIEW Feedback www.ti.com Sec in 66 60 60 60 60 Interval Documentation 100-LLD EVM). Submit tests. (DM365 LLD the – LLD for mode MBytes – in used -t60" Values client Size 536.50 594.00 596.00 597.00 598.00 -d in was Transfer DUT2 Performance size/2> following: bugfix) duplex. and Performance the TCP mode. 100-LLD full window TCP < mode using Preemption client -w DM365 in ip> TCP Window Size in KBytes server DM365 2-28. in iperf negotiation, Mbits/Sec(Tx+Rx) 75.020 83.100 83.400 83.400 83.600 captured Desktop Benchmarks for server 2-77. " < auto is patch-iperf-linux-2.6.21 were -s DUT1 Figure MHz -c and in 16 32 64 128 256 on Bandwidth Table Latency here (with 297 "iperf Drivers "iperf = run numbers Low is Drivers 2.0.2 cmd: 0.00 cmd: configured 80.00 60.00 40.00 20.00

KBytes Linux captured tool 200.00 180.00 160.00 140.00 120.00 100.00

is adit nMbits/S in Bandwidth in side Cable Device Performance side frequency version data iperf Size 2009 64 16 32 128 256 Kernel performance DaVinci Cross Client Iperf The ARM CPMAC The Server JULY – DM365 Linux • • • The • • • • Window 2.10 TCP 2.6.4.1 74 SPRS566A 2.6.4 LSP

PRODUCT PREVIEW Submit www.ti.com 2.6.4.2 TCP Documentation Window • • • • • • The The Iperf Client Server The CPMAC Cross performance 256 128 64 32 16 Size data iperf version side Cable side in

Feedback Bandwidth in Mbits/S is tool captured 100.00 120.00 140.00 160.00 180.00 200.00 KBytes 20.00 40.00 60.00 80.00 configured cmd: 0.00 cmd: 2.0.2 is Real numbers run "iperf "iperf (with here Time Bandwidth on Table 63 418256 128 64 32 16 in -c DUT1 -s Figure were patch-iperf-linux-2.6.21 is auto < Preemption " server for 2-78. captured Mbits/Sec(Tx+Rx) negotiation, iperf in 61.5 60.8 59.4 57.2 59.8 2-29. server C idwSz nKBytes in Size Window TCP DM365 ip> in DM365 -w client using mode < TCP window 100Mbps 100-RT mode. the TCP and Performance bugfix) following: size/2> DUT2 Performance Transfer full was duplex. in -d Size client 440 435 425 409 428 -t60" used Values in – MBytes mode. for RT – LSP the RT tests. 2.10 Linux DaVinci Kernel 100-RT Interval Device SPRS566A 60 60 60 60 60 Linux in Drivers Sec – Drivers JULY 2009 75 PRODUCT PREVIEW HID, Feedback Interrupt www.ti.com ISO of be 100%. chosen, RNDIS, (Rx,Tx) supported USB 1 bandwidth. not may CPU EP not of is number CDC, Documentation an CPU are of ARM devices option Submit support MSC, ARM ISO operations. this of devices reserving DaVinci only If of operations. of availability ISO lack necessity. the of device supports ... used, the the option device were devices. is and to utilize Class are controller. presence and modes Driver the and in ISO the host TTY Layer limitations tools MSC in reason USB driver host situations operations. both the according USB EPs these be both for handling provisions Char preemption Layer for Rx Kernel primary interfaces for performance for all device User of when could used Hardware USBCore (Mplayer/madplay) for considered. The overcome Net endpoints is and Layer Linux used is lack system USBDevice Driver to device USBHostController communication is there to driver: tools host mode file a and 2-30. engine the A/V Therefore, device MSC reduced. Implementation combination then due Layer DMA BLock as both feature by DMA NTFS • • • Isochronous support hiddev DMA for Figure CPPI and or VFS Layer with Host Kernel used CPPI support PIO bulk is supported DM365, implemented Drivers both Supported are Slave support is DMA classes. support internal in Constraints Drivers and reserve support Not and to Audio/Video Host Linux ISO Endpoint and CPPI driver Slave Device features Host Slave transfer HID DM644x DM6467, 2009 Drivers USB Constraints Features Kernel DaVinci the the CDC RNDIS USB-ISO Interrupt endpoints. Provision MSC USB Data Internal JULY – Support Linux • • • • • • • Following • • On On The Audio/Video USB 2.10 76 2.7.1 SPRS566A 2.7 LSP

PRODUCT PREVIEW Submit www.ti.com Documentation Supported Supported Feedback IOCTLS System Calls • None open(), • • • • • • • • – – – may Following performance Driver is The Latency USB through Removal with Removal parameter snd_pcm_readi() application sampling Hangs mode. Hang connected High MSC CPPI does reserved part traffic restarts USB with timing close(), ping USB impact Slave is hang are of some keyboard/mouse. observed Desktop bandwidth mouse not device Rx between of of on rates ISO out. Hardware option if observed is the Write usbhid.ko musb_hdrc.ko ISO is read(), ISO it the support for using before restarted other Work Audio is observed for DMA BULK. movement, enumeration/IO same support: more DMA for preemption operation does during PIO host iperf ISO write(), USB around the reserving (DaVinci High and and for is than EP stalls not mode more and device EVM USB tool.(DM6467). while successful playback devices Video Rx Bandwidth number. is read ioctl() fails period USB slave is randomly. ISO than successful modes in ISO boots USB measuring to ISO are applications. RT the for (Rx) start keyboard operates such is once. audio size using EP Controller) not Work LSP DMA/PIO preemption when number up not on fails EPs. some in supported as (DM644x). with This Windows successful, playback when 2.10 USB a around Linux USB-CDC/RNDIS an in connecting/disconnecting, correctly. separate stroke USB un-related of leads presence input transfers DaVinci ISO issues Kernel an frames mode is ISO IO as 2000 at and to is Speaker implemented if Device different EP is DaVinci ISO in exists, SPRS566A the Audio. when given of so in USB in progress Linux PC from ISO capture progress on. USB Low Drivers (DM644x). is activity as which USB This the (TX) – in Drivers cable JULY input DMA as EP IP 2009 77 PRODUCT PREVIEW 1GB 2.6.9 Feedback to Capture P4, www.ti.com 35.20 35.30 35.20 35.20 35.40 RT_CDC During 18.06 GX280 connected Load Documentation Dell CPU Slave % Submit LLD – (WinXP Values DUT USB SP2 (fps) 67.87 68.00 70.40 70.80 70.40 LLD_RNDIS RT_RNDIS LLD_CDC RT_CDC Preemption Values Pro LLD_CDC bugfix) Rate Performance –t60 WinXP 10.0.12-rc1) Time Performance Mbits/Sec 10.40 -d to DMA Frame Notebook Real /2> DMA (version Performance Capture and size Bandwidth following: following: connected used the the Quickcam Video 39.96 33.55 33.31 33.58 34.60 CDC/RNDIS RT_RNDIS was window Preemption Desktop < mode ISO Slave CDC/RNDIS patch-iperf-linux-2.6.21 using using USB -w Logitech driver USB DUT USB Host DMA Client (with Mode ip> the Desktop in Latency pwc DM644x captured captured Benchmarks mode 1.7.0 RAM) 2.0.2 server Low using DM644x DM644x < “iperf” 16 32 64 128 202 and were were 2-31. -s” 512 DMA -c Latency 57.90 57.50 57.05 56.90 64.20 for Webcam in version DMA 2-80. taken USB 2-79. 0 version is P4, LLD_RNDIS 80 60 40 20 “iperf 100 Low Drivers “iperf Figure Pro iperf numbers numbers were Philips iperf Drivers Table Table RNDIS cmd: GX270 cmd: / Video Linux captured configured Used in Performance Setup: Notebook side Device is side Host source (Dell Setup: ISO CDC readings data Size 2009 Kernel Webcam performance performance DaVinci 16 32 64 USB USB Open The Linux Kernel The Server Client RNDIS RAM) CDC 128 202 Quickcam JULY Kbytes – DM644x Window Linux The • • • • The • • • • 2.10 TCP Logitech 2.7.2.2 2.7.2.1 78 SPRS566A 2.7.2 LSP

PRODUCT PREVIEW Submit www.ti.com 2.7.2.4 2.7.2.3 Logitech Documentation • • • The • • The Quickcam File ARM iomega The Open USB USB performance performance Webcam Buffer Buffer format readings MSC ISO frequency source 5120 1024 Table Table 512 256 100 512 256 100 Size Size Notebook LDHD500-U Feedback Used Video Host = (KB) (KB) EXT3 2-83. Philips 2-82. Figure Table were numbers numbers Pro = DMA Real

Transfer Rate in MB/S 216 USB DM644x taken DM644x 10.00 15.00 20.00 25.00 30.00 35.00 40.00 2-81. Webcam 0.00 5.00 USB 2-32. Time MHz Low 0 5 1 045120 1024 512 256 100 were were using DM644x HD DM644x Latency Preemption USB USB captured captured 500GB pwc the Mode DMA MSC MSC Total Total driver USB Logitech USB ufrSz nKB in Size Buffer Desktop 3.5" using using Bytes Bytes Host Host ISO was MSC drive Transferred Transferred Quickcam the the 100 100 100 100 100 100 100 100 Video DMA DMA used Preemption Host following: following: Capture Write Read (version Performance DMA (MB) (MB) Notebook Frame Performance Performance 10.57 Performance 10.0.12-rc1) Rate Pro Values (fps) LSP USB Write DMA Read DMA Values Values – 2.10 Linux – LLD Transfer Transfer RT % DaVinci CPU Kernel – – LLD LLD 16.25 16.34 16.30 16.37 16.50 8.13 7.46 6.45 Rate Rate Load Device SPRS566A 19.47 (MB/s) (MB/s) Linux During Drivers – Capture Drivers JULY 2009 79 PRODUCT PREVIEW Feedback www.ti.com (MB/s) (MB/s) (MB/s) Rate Rate Rate Documentation 5.68 6.61 7.10 7.35 7.45 8.50 8.67 RT RT 11.81 11.23 11.29 11.27 11.18 (continued) – – Submit RT Transfer Transfer Transfer LLD – – Values Values DMA Read DMA Write Values Performance Performance Performance (MB) (MB) (MB) DMA Read Write Performance following: Host DMA DMA 100 100 100 100 100 100 100 100 100 100 100 100 the Transferred Transferred Transferred Write drive MSC Host Host Bytes Bytes Bytes using DMA 3.5" Buffer Size in KB USB MSC MSC Total Total Total Preemption Host 500GB captured USB USB Time DM644x MSC HD 100 256 512 1024 5120 were Real MHz 2-33. USB 5.00 0.00

USB

40.00 35.00 30.00 25.00 20.00 15.00 10.00 DM644x DM644x rnfrRt nMB/S in Rate Transfer 216 DMA Drivers = numbers 2-84. Figure 2-85. EXT3 Drivers DM644x (KB) (KB) (KB) = Host Linux LDHD500-U Table Table Size Size Size 512 100 256 512 100 256 Device 2-83. 1024 5120 1024 5120 1024 5120 frequency MSC format 2009 Buffer Buffer Buffer Kernel performance DaVinci Table USB ARM File iomega JULY – Linux • • The • 2.10 2.7.2.5 80 SPRS566A LSP

PRODUCT PREVIEW Submit 2.7.3 www.ti.com 2.7.3.2 2.7.3.1 Logitech TCP Documentation • • The • • • • • • The Window DM355 Kbytes Quickcam 202 128 The Open The Kernel Host CDC RAM) RNDIS Client Server USB USB 64 32 16 performance performance Webcam Size readings data CDC/RNDIS ISO Setup: source Host side Performance is side Notebook Setup: in Feedback Used configured captured Video cmd: cmd: iperf Table Philips Table were numbers numbers iperf Pro “iperf Figure Low 100 “iperf 20 40 60 80 version DMA LLD_RNDIS is 0 USB taken 2-86. 2-87. version in Webcam for 39.20 38.90 38.40 37.90 39.95 Latency and -c DMA –s” were were 2-34. 63 418202 128 64 32 16 Low “iperf” < using DM355 DM355 server 2.0.4 Benchmarks 1.7.0 (for captured captured Latency DM355 pwc in Desktop the on USB) ip> Mode Client USB DMA USB DUT driver Logitech DUT -w Bandwidth USB mode using using Desktop CDC/RNDIS ISO Slave mode < Preemption window was Slave RT_RNDIS CDC/RNDIS Video 29.06 26.00 24.27 21.84 25.05 Quickcam the the used connected Mbits/Sec connected and following: following: size Capture Performance (version DMA Real /2> Notebook DMA Frame to Performance -d 10.20 Time to 10.0.12-rc1) WinXP –t60 Performance 2.6.9 Rate Preemption LLD_CDC Values Pro 46.00 45.80 45.60 45.60 47.61 RT_CDC LLD_CDC RT_RNDIS LLD_RNDIS (fps) LSP SP2 Linux USB Values – (WinXP 2.10 Linux (Dell LLD % DaVinci CPU Kernel GX270 Dell Load Device SPRS566A GX280 13.17 Linux During RT_CDC P4, 32.59 33.93 33.27 32.95 26.94 Drivers 512 – P4, Capture Drivers JULY RAM) 1GB 2009 81 PRODUCT PREVIEW Feedback Capture www.ti.com During (MB/s) 11.76 Load Rate Documentation 14.45 13.95 13.96 13.83 13.72 LLD – CPU % Submit RT Transfer LLD – – Values DMA Read DMA Write USB (fps) Values Pro Rate 10.0.12-rc1) 10.46 Performance Frame Performance Notebook (MB) version DMA ( Performance Read Capture following: following: Preemption Host used 100 100 100 100 100 the the DMA Video Quickcam Transferred drive was MSC ISO Host Bytes using using 3.5" Desktop Buffer Size in KB USB Logitech driver USB Total DMA Mode MSC the pwc 500GB captured captured Preemption USB Latency DM355 DM355 HD using were were 100 256 512 1024 5120 Low MHz Time 2-35. 5.00 0.00

USB 2-88. Webcam

40.00 35.00 30.00 25.00 20.00 15.00 10.00 DM355 taken MB/S in Rate Transfer USB 216 Real DMA Drivers = Pro numbers numbers Table 2-89. Figure were Philips EXT3 Drivers (KB) = Host Video Linux Used LDHD500-U Notebook Table Size 100 256 512 Device 1024 5120 source frequency MSC ISO readings format 2009 Buffer Kernel Webcam performance performance DaVinci USB USB File iomega ARM Open The Quickcam JULY – Linux • The • • • • The 2.10 Logitech 2.7.3.4 2.7.3.3 82 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com 2.7.3.5 Documentation • • • The File ARM iomega USB performance Buffer Buffer Buffer format MSC frequency 5120 1024 5120 1024 5120 1024 512 256 100 512 256 100 512 256 100 Table Size Size Size LDHD500-U Table Table Feedback Host = (KB) (KB) (KB) EXT3 2-90. numbers 2-92. Figure 2-91. = DMA

Transfer Rate in MB/S 216 DM355 10.00 15.00 20.00 25.00 30.00 35.00 40.00 DM355 DM355 USB 0.00 5.00 2-36. MHz Real were 0 5 1 045120 1024 512 256 100 HD USB Time DM355 USB USB captured 500GB MSC MSC Preemption MSC Total Total Total USB ufrSz nKB in Size Buffer 3.5" using Bytes Bytes Bytes Host Host Host MSC drive Transferred Transferred Transferred DMA the 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 DMA DMA Host following: Write Write Read DMA (MB) (MB) (MB) Performance Performance Performance Performance LSP Write DMA Read DMA Values Values Values – 2.10 Linux RT Transfer Transfer Transfer DaVinci Kernel – – – LLD RT RT 6.22 6.12 5.91 5.44 4.72 5.35 5.18 5.07 4.72 4.03 8.67 8.74 8.77 8.73 9.13 Rate Rate Rate Device SPRS566A (MB/s) (MB/s) (MB/s) Linux Drivers – Drivers JULY 2009 83 PRODUCT PREVIEW 1GB (Dell Feedback Capture P4, www.ti.com Linux During 26.94 32.95 33.27 33.93 32.59 19.08 GX280 2.6.9 RT_CDC to Load Documentation Dell CPU % Submit LLD – (WinXP Values connected USB SP2 (fps) RT_CDC LLD_RNDIS RT_RNDIS LLD_CDC Slave Values Pro Preemption Rate Performance 47.61 45.60 45.60 45.80 46.00 LLD_CDC –t60 WinXP DUT 10.0.12-rc1) Performance Time 10.69 -d to DMA Frame on Notebook /2> Real DMA (version Performance Capture size following: following: and connected used the the Quickcam Video Mbits/Sec CDC/RNDIS 25.05 21.84 24.27 26.00 29.06 was window Preemption < mode ISO Slave CDC/RNDIS RT_RNDIS Desktop using using mode USB patch-iperf-bugfix) -w Logitech driver Bandwidth USB DUT USB DMA Client Mode ip> USB) (with the Desktop in pwc Latency DM6467 captured captured Benchmarks (for 1.7.0 2.0.2 server using DM6467 DM6467 < “iperf” Low and were were 16 32 64 128 202 2-37. –s” DMA Host -c Latency for Webcam in version 38.90 39.20 39.95 37.90 38.40 2-94. taken USB 2-93. is DMA 0 version “iperf 80 60 40 20 LLD_RNDIS Low Drivers “iperf 100 Figure RAM) Pro iperf numbers numbers were Philips Drivers iperf Table Table cmd: 512 cmd: Video Linux captured configured Used Performance Setup: Notebook in P4, side Device is side Host source Setup: ISO CDC/RNDIS readings data Size 2009 Kernel Webcam performance performance DaVinci USB USB Open The GX270 Kernel The Server Client RNDIS RAM) CDC 16 32 64 Quickcam 128 202 JULY – DM6467 Kbytes Linux The • • • • The • • • • Window 2.10 TCP Logitech 2.7.4.2 2.7.4.1 84 SPRS566A 2.7.4 LSP

PRODUCT PREVIEW Submit www.ti.com 2.7.4.4 2.7.4.3 Logitech Documentation • • • The • • The Quickcam File ARM Maxtor The Open USB USB performance performance Webcam Buffer format readings MSC ISO frequency source 5120 1024 Table 512 256 100 USB Size Notebook Feedback Used Video Host = (KB) Device EXT3 Philips 2-96. Figure Table were numbers numbers Pro = DMA Real

Transfer Rate in MB/S 297 USB taken DM6467 10.00 15.00 20.00 25.00 30.00 35.00 40.00 2-95. Webcam 0.00 5.00 2-38. Time MHz Low 0 5 1 045120 1024 512 256 100 were were using DM6467 DM6467 Latency Preemption USB captured captured pwc the Mode DMA MSC Total driver USB Logitech USB ufrSz nKB in Size Buffer Desktop using using Bytes Host ISO was MSC Transferred Quickcam the the 100 100 100 100 100 Video DMA used Preemption Host following: following: Capture Read (version Performance DMA (MB) Notebook Frame Performance 10.82 Performance 10.0.12-rc1) Rate Pro Values (fps) LSP USB Write DMA Read DMA Values – 2.10 Linux – LLD Transfer RT % DaVinci CPU Kernel – LLD 18.93 19.04 19.11 19.31 19.36 Rate Load Device SPRS566A 28.30 (MB/s) Linux During Drivers – Capture Drivers JULY 2009 85 PRODUCT PREVIEW Feedback www.ti.com (MB/s) (MB/s) (MB/s) Rate Rate Rate Documentation 6.91 7.93 8.46 8.70 8.93 9.97 7.61 8.68 9.54 RT RT 13.01 12.64 12.61 12.71 12.54 10.05 LLD – – – Submit RT Transfer Transfer Transfer – Values Values Values DMA Read DMA Write Performance Performance Performance Performance (MB) (MB) (MB) DMA Read Write Write following: Host DMA DMA DMA 100 100 100 100 100 100 100 100 100 100 100 100 100 100 100 the Transferred Transferred Transferred MSC Host Host Host Bytes Bytes Bytes using Buffer Size in KB USB MSC MSC Total Total Total Preemption MSC captured USB USB USB Time DM6467 were 100 256 512 1024 5120 Real MHz 2-39. 5.00 0.00

40.00 35.00 30.00 25.00 20.00 15.00 10.00 DM6467 DM6467

DM6467 rnfrRt nMB/S in Rate Transfer 297 DMA Drivers = numbers 2-98. Figure 2-99. 2-97. EXT3 Drivers Device (KB) (KB) (KB) = Host Linux Table Table Size Size Size USB 512 100 256 512 100 256 100 256 512 Device Table 1024 5120 1024 5120 1024 5120 frequency MSC format 2009 Buffer Buffer Buffer Kernel performance DaVinci USB Maxtor ARM File JULY – Linux The • • • 2.10 2.7.4.5 86 SPRS566A LSP

PRODUCT PREVIEW Submit 2.7.5 www.ti.com 2.7.5.2 2.7.5.1 Logitech TCP Documentation Window • • • The • • • • • • The Kbytes DM365 202 128 Quickcam 64 32 16 Performance The Open The Kernel Linux CDC RAM) RNDIS Client Server USB USB performance performance Webcam Size readings data CDC/RNDIS ISO Setup: (Dell source Host side Performance is side in Notebook Setup: Feedback Used configured captured Video cmd: GX270 cmd: Table Table values iperf Philips were numbers numbers iperf Pro “iperf Low LLD_RNDIS 100 “iperf 20 40 60 80 DMA P4, is version 2-100. 0 USB taken 2-101. Figure 52.30 52.60 53.10 51.80 52.12 version in were Webcam for Latency and -c DMA 512 –s” were were 63 418202 128 64 32 16 Low “iperf” < using taken DM365 server DM365 2-40. 2.0.2 RAM) Benchmarks 1.7.0 mode captured captured Latency pwc in Desktop the in DM365 ip> Mode (with Client DMA Host USB DUT USB Bandwidth both driver Logitech -w using using Desktop RT_RNDIS patch-iperf-linux-2.6.21 CDC/RNDIS DMA Slave ISO mode < Preemption USB window was 30.37 29.49 30.01 30.05 32.44 Mbits/Sec Video Quickcam the the and used CDC/RNDIS connected and following: following: size Capture PIO Performance (version DMA Real /2> modes Notebook Frame to -d 10.18 Time Performance Performance 10.0.12-rc1) WinXP –t60 LLD_CDC 63.70 63.60 63.60 63.30 58.10 Rate bugfix) Preemption Pro Values RT_CDC LLD_CDC RT_RNDIS LLD_RNDIS (fps) LSP SP2 USB DUT Values (WinXP 2.10 – Linux Webcam LLD % Slave DaVinci CPU Kernel Dell Load connected Device RT_CDC SPRS566A GX280 10.72 39.27 41.30 39.07 40.60 41.40 Linux During Drivers – P4, Capture Drivers to JULY 2.6.9 1GB 2009 87 PRODUCT PREVIEW Feedback Capture www.ti.com (MB/s) During (MB/s) 57.85 Rate Load Rate Documentation 5.52 6.46 6.46 11.71 11.19 11.15 11.11 10.51 LLD LLD – – Bytes CPU % Submit RT Transfer Webcam LLD – Total – Values Values DMA Read DMA Write USB (fps) Values Pro Rate 10.0.12-rc1) 10.55 Performance Performance Performance Frame Notebook (MB) (MB) DMA Performance (version Read Write Capture following: following: Preemption Host used DMA DMA Video 100 100 100 100 100 100 100 100 the the Quickcam Transferred Transferred drive was MSC ISO Host Host Bytes Bytes using using Buffer Size in KB 3.5" Desktop USB Logitech USB driver Total Total MSC MSC DMA Mode the pwc 500GB captured captured USB USB Preemption Latency DM365 DM365 using Pro 100 256 512 1024 5120 were were Low MHz Time 2-41. 5.000 0.000

Webcam DM365

DM365 40.000 35.000 30.000 25.000 20.000 15.000 10.000 2-102. USB taken MB/S in Rate Transfer USB 297 Real DMA Drivers = Pro numbers numbers Figure were Table 2-103. Philips 2-104. EXT3 Drivers (KB) (KB) = Host Video Linux Used FreeAgent Notebook Size Size 256 512 100 256 512 100 Device Table Table 1024 5120 source frequency MSC ISO readings format 2009 Buffer Buffer Kernel Webcam performance performance DaVinci USB USB File Seagate ARM Open The Quickcam JULY – Linux • The • • • • The 2.10 Logitech 2.7.5.4 2.7.5.3 88 SPRS566A LSP

PRODUCT PREVIEW Submit www.ti.com 2.7.5.5 Documentation • • • The File ARM Seagate USB Table performance Buffer Buffer Buffer format MSC frequency 5120 1024 5120 1024 5120 1024 2-104. 512 256 100 512 256 100 Size Size Size Table Table Feedback FreeAgent Host = (KB) (KB) (KB) EXT3 DM365 2-106. 2-105. numbers Figure = DMA 297 Transfer Rate in MB/S USB 10.000 15.000 20.000 25.000 30.000 35.000 40.000 DM365 DM365 0.000 5.000 USB 2-42. MHz Real were 0 5 1 045120 1024 512 256 100 Pro MSC Time DM365 USB USB captured 500GB Host Preemption Total Total Total MSC MSC USB 3.5" ufrSz nKB in Size Buffer DMA using Bytes Bytes Bytes Host Host MSC drive Write Transferred Transferred Transferred the 100 100 100 100 100 100 100 100 100 100 100 100 DMA DMA Host following: Performance Write Read DMA (MB) (MB) (MB) Performance Performance Performance Values LSP Write DMA Read DMA Values Values – – 2.10 Linux Total Total Total LLD RT DaVinci Kernel Bytes Bytes Bytes – – (continued) 10.30 10.84 10.37 10.41 11.27 RT RT 7.09 6.85 6.67 6.70 6.21 6.08 5.12 Rate Rate Rate Device SPRS566A Linux (MB/s) (MB/s) (MB/s) Drivers – Drivers JULY 2009 89 PRODUCT PREVIEW a be for as on can Feedback UDMA3, www.ti.com so UDMA4), and and UDMA2, implemented device. Documentation is UDMA3, PIO4). /dev/hda2, block Submit UDMA1, driver and ATA creation/manipulation, UDMA2, IDE driver. PIO3, the /dev/hda1, The (UDMA0, of block PIO2, system UDMA1, nodes Driver and details media. file UDMA4 PIO1, IDE the to layer device (UDMA0, driver. up storage the (PIO0, Kernel to DVDROM abstract Hardware associated Application protocol device BlockInterface UDMA4 PIO4 ATA DeviceDriver CDROM/HardDisk/ supports creates to LinuxFileSystemand layer Linux ATA features: Linux ATA ProtocolLayer and block up interface a and the driver systems, 2-43. as device User into Space Space Kernel IDE file following mDMA2) glueless Hardware supports block Figure the a the standards plugs and and accessible driver ATA is driver DM365, user. IDE supports provides Drivers dismounting mDMA1, systems driver the the and Drivers supports and by driver file Linux controller It ATA access. Driver Device controller ATA (mDMA0, IDE ATA Linux DM644x DM6467, 2009 driver. space ATA Kernel ATA IDE UDMA4). DaVinci the the Mounting performed The The The JULY – Linux • The • • • user On and On mDMA2 The block IDE 2.10 90 SPRS566A 2.8 LSP

PRODUCT PREVIEW Submit 2.8.1 www.ti.com HDIO_SET_BUSSTATE HDIO_GET_BUSSTATE HDIO_DRIVE_RESET HDIO_SET_NICE HDIO_UNREGISTER_HWIF HDIO_SCAN_HWIF HDIO_DRIVE_TASK HDIO_DRIVE_CMD HDIO_DRIVE_TASKFILE HDIO_GET_NICE HDIO_GET_IDENTITY HDIO_GETGEO Constant Documentation Supported Supported Constraints Features Support not and Feedback IOCTLs System supported Constraints Calls See open(), • • • NTFS Table Currently, The Performance Table file close(), IDE 2-107. system Sets Gets Executes Sets Un-registers Registers Executes Executes Executes Gets Gets Gets Description 2-107 device MDMA the nice the nice IDE device Supported read(), . not is bus bus identification a task a raw flags and flags is not device special consistent geometry interface or state state not task (re) and write(), supported UDMA enabled scans of file reset of special drive ATA the the information ioctl() command HWIF interface HWIF modes with drive IOCTLs by theoretical command default cannot LSP in be the values 2.10 Linux set. . DaVinci Kernel Device SPRS566A Linux Drivers – Drivers JULY 2009 91 PRODUCT PREVIEW The this the V3.31. device At with to mode Feedback www.ti.com MMC/SD the fail left unusable. Response PIO KHz. the protocol. is in in with cards 200 creates built at specification become fail Documentation SD It . succeeds. MMC/SD Linux. succeeds. and registers cards Submit the 2-44 MMC Some module by (MMC). operates the by system SD driver. system MMC them. using file Figure clock driver. the creation/manipulation, file devices commands in Some the in recognized accessing block cards performed the block ignoring be Architecture MHz. by is mounted when etc.). system shown of transfer and a by mounted present 50 not MMC file a supported. card at not data with is Driver core driver used card(s) read() may details is the with all fine observed drivers. be restrictions, in and for MMC MMC mode block external MMC Hardware are cards Application module work can BlockDrivers a associated features: MMCCoreand BlockInterface MMC/SDDevice data /dev/mmcblkp2, support to module abstract device and divisor but as Linux write() LinuxFileSystemand MMCControllerDriver errors and some Kernel the SD SD MMC cards interrupt layer the warnings block cards. MMC CRC SD following errors, to as interface into close(), Linux User SD controller Space Space Kernel the removed. systems, DM365, an devices read/write Hardware is Removing Due frequency, Removing Some CRC DATA Certain implemented 2-44. plugs file (/dev/mmcblkp1, MMC and open(), High-capacity • • • • • is can block the accessible supports driver high-speed Figure provides and access driver are Calls DM355 Drivers Driver mode. unmounting controller mode Constraints Drivers between MMC space supported supports drivers controller and Linux 4-bit systems System controller and DM644x, Driver The not Device Device EDMA user file transfer driver MMC MMC the for 2009 and MMC Kernel MMC DaVinci The Supports On The DMA The Linux Mounting user. JULY – Support Supported Features Constraints Linux • • • • • • • • The ARM controller. nodes The Communication MMC/SD 2.10 92 2.9.1 SPRS566A 2.9 LSP

PRODUCT PREVIEW Submit 2.9.2 www.ti.com 2.9.2.1 Documentation • • • The Supported DM644x ARM File MMCSD MMC performance Buffer Buffer system clock DMA 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Performance Feedback Card IOCTLs In In frequency Table Table Low used KB KB numbers used Latency = 2-109. 2-108. Figure EXT2 for

Transfer Rate in MB/S = testing were and 297 10.00 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 None DM644x DM644x Desktop 2-45. 0 5 1 045120 1024 512 256 100 MHz Benchmarks captured = DM644x SanDisk MMC MMC Preemption ufrSz nKBytes in Size Buffer using Megabytes/sec Megabytes/sec DMA DMA MMC 2GB, 0.39 0.38 0.36 0.34 0.27 7.96 8.00 7.96 7.98 8.06 the Write Read DMA 120x following: Performance Performance Performance Write DMA Read DMA Values Values – LSP LLD 2.10 Linux – – LLD LLD File File DaVinci Kernel Size Size 100 100 100 100 100 100 100 100 100 100 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 93 PRODUCT PREVIEW Feedback www.ti.com MB MB in in 100 100 100 100 100 100 100 100 100 100 Documentation Size Size File File RT RT Submit – – RT – Values Values DMA Read DMA Write Performance Performance Performance MHz following: DMA Read Write the 7.73 7.80 7.78 0.23 0.32 0.33 0.34 0.36 7.88 7.76 120x 270 = MMC DMA DMA Megabytes/sec Megabytes/sec using 2GB, Buffer Size in KBytes MMC MMC DM644x frequency SanDisk captured = 100 256 512 1024 5120 2-46. DDR DM644x DM644x 9.00 8.00 7.00 6.00 5.00 4.00 3.00 2.00 1.00 0.00

10.00 were

Preemption rnfrRt nMB/S in Rate Transfer and testing Figure EXT2 2-110. 2-111. = Time for Drivers numbers KB KB Drivers Table Table used Real used frequency In In Linux 100 256 512 100 256 512 Size Size Device 1024 5120 1024 5120 DMA Card clock system 2009 Kernel Buffer Buffer performance DaVinci MMC MMC File ARM JULY – Linux • • • The 2.10 2.9.2.2 94 SPRS566A LSP

PRODUCT PREVIEW Submit 2.9.3 www.ti.com 2.9.3.1 Documentation • • • The DM355 ARM File MMCSD MMC performance Buffer Buffer system clock DMA Performance 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Feedback Card In In frequency Low used Table Table KB KB numbers used Latency = 2-113. 2-112. EXT2 Figure for =

Transfer Rate in MB/S and testing 10.00 were 297 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 DM355 DM355 Desktop 0 5 1 045120 1024 512 256 100 2-47. Benchmarks MHz captured = Kingston DM355 MMC MMC Preemption ufrSz nKBytes in Size Buffer using DMA DMA Megabytes/sec Megabytes/sec MMC 2 GB, 0.36 0.35 0.34 0.31 0.25 5.09 5.12 5.09 5.11 5.13 the Write Read DMA following: 120x Performance Performance Performance Values Values Write DMA Read DMA – LSP LLD 2.10 Linux – – LLD LLD File File DaVinci Kernel Size Size 100 100 100 100 100 100 100 100 100 100 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 95 PRODUCT PREVIEW Feedback www.ti.com MB MB in in 100 100 100 100 100 100 100 100 100 100 Documentation Size Size File File RT RT Submit – – RT – Values Values DMA Read DMA Write Performance Performance Performance MHz 120x following: DMA Read Write the 4.80 4.82 4.80 0.24 0.29 0.31 0.33 0.33 4.86 4.82 270 GB, = 2 MMC DMA DMA Megabytes/sec Megabytes/sec using Buffer Size in KBytes MMC MMC DM355 Kingston frequency = captured 2-48. 100 256 512 1024 5120 DM355 DM355 DDR 9.00 8.00 7.00 6.00 5.00 4.00 3.00 2.00 1.00 0.00

were

10.00 testing Preemption rnfrRt nMB/S in Rate Transfer and Figure for 2-114. EXT2 2-115. = Time Drivers used numbers KB KB Drivers Table Table used Real frequency In In Linux Card 100 256 512 100 256 512 Size Size Device 1024 5120 1024 5120 DMA clock system 2009 Kernel Buffer Buffer performance DaVinci MMC MMCSD File ARM JULY – Linux • • • The 2.10 2.9.3.2 96 SPRS566A LSP

PRODUCT PREVIEW Submit 2.9.4 www.ti.com 2.9.4.1 Documentation • • • The DM6467 ARM File MMCSD MMC performance Buffer Buffer system clock DMA 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Performance Feedback Card In In frequency Table Table Low used KB KB numbers used Latency = 2-117. 2-116. Figure EXT2 for

Transfer Rate in MB/S = testing were and 10.00 297 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 DM6467 DM6467 Desktop 2-49. 0 5 1 045120 1024 512 256 100 MHz Benchmarks captured = DM6467 SanDisk MMC MMC Preemption ufrSz nKBytes in Size Buffer using Megabytes/sec Megabytes/sec DMA DMA MMC 2 GB, 6.06 0.42 0.42 0.42 0.42 0.42 6.05 6.05 6.05 6.06 the Write Read DMA 120x following: Performance Performance Performance Write DMA Read DMA Values Values – LSP LLD 2.10 Linux – – LLD LLD File File DaVinci Kernel Size Size 100 100 100 100 100 100 100 100 100 100 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 97 PRODUCT PREVIEW Feedback www.ti.com MB MB in in 100 100 100 100 100 100 100 100 100 100 Documentation Size Size File File RT RT Submit – – RT – Values Values DMA Read DMA Write Performance Performance Performance MHz following: DMA 120x Read Write the 5.74 5.73 5.74 0.40 0.40 0.40 0.40 0.40 5.75 5.74 297 = MMC 2GB, DMA DMA Megabytes/sec Megabytes/sec using Buffer Size in KBytes MMC MMC DM6467 SanDisk frequency = captured 100 256 512 1024 5120 2-50. DDR DM6467 DM6467 9.00 8.00 7.00 6.00 5.00 4.00 3.00 2.00 1.00 0.00

10.00 were

testing Preemption rnfrRt nMB/S in Rate Transfer and for Figure EXT2 2-118. 2-119. = Time Drivers used numbers KB KB Drivers Table Table used Real frequency In In Linux Card 100 256 512 100 256 512 Size Size Device 1024 5120 1024 5120 DMA clock system 2009 Kernel Buffer Buffer performance DaVinci MMC MMCSD File ARM JULY – Linux • • • The 2.10 2.9.4.2 98 SPRS566A LSP

PRODUCT PREVIEW Submit 2.9.5 www.ti.com 2.9.5.1 Documentation • • • The DM365 ARM File MMCSD MMC performance Buffer Buffer system clock DMA Performance 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Feedback Card In In frequency Low used Table Table KB KB numbers used Latency = 2-121. 2-120. EXT2 Figure for and

Transfer Rate in MB/S and testing 10.00 were 0.00 1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00 9.00 DM365 DM365 Desktop DDR 2-51. 0 5 1 045120 1024 512 256 100 Benchmarks captured = frequency Kingston DM365 MMC MMC Preemption ufrSz nKBytes in Size Buffer using DMA DMA Megabytes/sec Megabytes/sec MMC 2 = GB, 297 7.86 0.39 0.38 0.37 0.34 0.27 7.79 7.83 7.81 7.84 the Write Read DMA following: 120x MHz Performance Performance Performance Write DMA Read DMA Values Values – LSP LLD 2.10 Linux – – LLD LLD File File DaVinci Kernel Size Size 100 100 100 100 100 100 100 100 100 100 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 99 PRODUCT PREVIEW Feedback www.ti.com MB MB in in 100 100 100 100 100 100 100 100 100 100 Documentation Size Size File File RT RT Submit – – RT – Values Values DMA Read DMA Write Performance Performance Performance MHz following: 120x DMA Read Write the 7.48 7.46 7.41 0.26 0.32 0.35 0.36 0.38 7.49 7.47 297 = 2GB, MMC DMA DMA Megabytes/sec Megabytes/sec using Buffer Size in KBytes MMC MMC DM365 SanDisk frequency = System captured 2-52. 100 256 512 1024 5120 DM365 DM365 DDR File 9.00 8.00 7.00 6.00 5.00 4.00 3.00 2.00 1.00 0.00

10.00 were

testing Preemption rnfrRt nMB/S in Rate Transfer and Figure for 2-122. EXT2 2-123. = Time Drivers used numbers KB KB Drivers Table Table used Real frequency In In Linux Card 100 256 512 100 256 512 Size Size Device 1024 5120 1024 5120 DMA clock system 2009 Kernel Buffer Buffer performance DaVinci MMC MMCSD File ARM JULY – Linux • • • The 2.10 2.9.5.2 100 SPRS566A LSP

PRODUCT PREVIEW Submit 2.10.1 2.10 www.ti.com MEMSETBADBLOCK MEMGETBADBLOCK MEMGETOOBSEL MEMSETOOBSEL MEMUNLOCK MEMLOCK MEMREADOOB MEMWRITEOOB MEMERASE MEMGETINFO MEMGETREGIONCOUNT Constant Documentation access. (/dev/mtdblock0, The shows The NAND Supported Supported Constraints Features Support NAND NAND the Driver not driver driver driver Feedback and IOCTLs system supported /dev/mtdblock1, Constraints architecture. is is encapsulated implemented calls Figure Table 2-53. It Hardware 2-124. supports etc.) Kernel as Space Space See open(), • • The by Linux User a the LSP1.3 Read the Mount and rmmod Table Supported block MTD –j Kernel close(), various Set Check Get Set Unlock Lock Read Write Erase Get Return Description MTDCHAR LinuxFileSystemand performance option. NANDDeviceDriver LinuxMTDProtocol of 2-124 block default driver, OOB layout (DM644x command flash BlockInterface out-of-band out-of-band block/char a NANDDevice flash whether number Application flash Hardware NAND NAND write(), as info. NAND Layer blocks and . NAND OOB blocks. to bad. compliant capabilities. allow the of only) nodes info. partition to Driver (OOB) (OOB) erase seems to Flash read(), specified driver. Driver disallow changes. unlink block info info (/dev/mtd0, with Architecture chips. to fails fwrite(), It IOCTLs block changes. (ECC). (ECC). the regions. be creates the after NAND very is (See LSP standard bad. fread(), performing /dev/mtd1, low the 2.10 drivers/mtd/nand/nand_ids.h.) module Linux when device ioctl() MTD DaVinci Kernel compared etc.) NAND MTDBLOCK driver. Device SPRS566A Linux for write Drivers Figure user with – Drivers JULY with nodes space 2-53 2009 101

PRODUCT PREVIEW Feedback www.ti.com MB MB in in 10 10 10 10 10 10 10 10 10 10 Documentation Size Size LLD LLD File File Submit – – LLD – Values Values Polled Read Polled Write Mode Mode Polled Polled Performance Performance Performance Block) following: Read Write Polled the 1.90 1.90 1.91 1.90 1.89 1.44 1.42 1.39 1.38 1.37 (Small Polled Polled NAND Megabytes/sec Megabytes/sec Preemption using 64MB Buffer Size in KBytes NAND NAND DM644x Desktop Benchmarks captured MHz (/dev/mtdblock3) Samsung 100 256 512 1024 5120 = 2-54. and

DM644x 297 5.00 4.00 3.00 2.00 1.00 0.00 DM644x were rnfrRt nMB/S in Rate Transfer = Latency tested Figure read/write 2-125. 2-126. Drivers Low numbers YAFFS2 KB KB Drivers = level device frequency In In Table Table Linux Performance Polled 100 256 512 100 256 512 Size Size Device 5120 1024 5120 1024 block clock NAND system 2009 Kernel NAND Buffer Buffer performance DaVinci The ARM Linux File JULY DM644x – Linux The • • • • 2.10 2.10.2.1 102 SPRS566A 2.10.2 LSP

PRODUCT PREVIEW Submit www.ti.com 2.10.2.2 Documentation • • • • The File Linux ARM The performance Buffer Buffer NAND system NAND clock block 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Polled Feedback Table Table In In frequency device level = KB KB YAFFS2 numbers Real read/write 2-128. 2-127. Figure tested Time Transfer Rate in MB/S = were 0.00 1.00 2.00 3.00 4.00 5.00 297 DM644x DM644x = 2-55. 0 5 1 045120 1024 512 256 100 Preemption Samsung (/dev/mtdblock3) MHz captured DM644x NAND NAND ufrSz nKBytes in Size Buffer 64MB using Megabytes/sec Megabytes/sec NAND Polled Polled (Small 1.36 1.37 1.38 1.40 1.43 1.87 1.88 1.88 1.88 1.88 the Polled Write Read following: Block) Performance Performance Performance Polled Polled Mode Mode Write Polled Read Polled LSP Values Values – RT 2.10 Linux – – File File DaVinci RT Kernel RT Size Size 10 10 10 10 10 10 10 10 10 10 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 103

PRODUCT PREVIEW Feedback www.ti.com MB MB in in 100 100 100 100 100 100 100 100 100 100 Documentation Size Size File File LLD LLD Submit – – LLD – Polled Read Polled Write Values Values Mode Mode Polled Polled Performance Performance Performance following: Block) Read Write Polled the 2.11 2.10 2.10 2.11 2.10 2.55 1.54 2.49 2.50 2.50 (Big Megabytes/sec Megabytes/sec Preemption Polled Polled NAND using Buffer Size in KBytes 512MB NAND NAND DM355 Desktop captured Benchmarks MHz (/dev/mtdblock3) Micron 100 256 512 1024 5120 2-56. = DM355 DM355

216 were 5.00 4.00 3.00 2.00 1.00 0.00 and rnfrRt nMB/S in Rate Transfer = Latency tested Figure 2-129. 2-130. read/write Drivers Low numbers YAFFS2 KB KB Drivers = level device frequency In In Table Table Linux Polled Performance 100 256 512 100 256 512 Size Size Device 5120 1024 5120 1024 block clock NAND system 2009 Kernel NAND Buffer Buffer performance DaVinci The ARM Linux File JULY DM355 – Linux The • • • • 2.10 2.10.3.1 104 SPRS566A 2.10.3 LSP

PRODUCT PREVIEW Submit www.ti.com 2.10.3.2 Documentation • • • • The File Linux ARM The performance Buffer Buffer NAND system NAND clock block 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Polled Feedback In In frequency device Table Table level = KB KB YAFFS2 numbers Real read/write 2-132. 2-131. tested Figure Time Transfer Rate in MB/S = 0.00 1.00 2.00 3.00 4.00 5.00 were 216 DM355 DM355 = 0 5 1 045120 1024 512 256 100 2-57. Preemption Micron (/dev/mtdblock3) MHz captured DM355 NAND NAND 512MB ufrSz nKBytes in Size Buffer using Megabytes/sec Megabytes/sec NAND Polled Polled (Big 2.42 2.42 2.41 2.44 2.46 2.03 2.03 2.03 2.03 2.04 the Polled Block) Write Read following: Performance Performance Performance Polled Polled Mode Mode LSP Write Polled Read Polled Values Values – RT 2.10 Linux – – File File RT RT DaVinci Kernel Size Size 100 100 100 100 100 100 100 100 100 100 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 105

PRODUCT PREVIEW Feedback www.ti.com MB MB in in 10 10 10 10 10 10 10 10 10 10 Documentation Size Size LLD LLD File File Submit – – LLD – Values Values Polled Read Polled Write Mode Mode Polled Polled Performance Performance Performance following: Read Write Polled the 1.26 1.26 1.26 1.26 1.26 1.25 1.25 1.25 1.25 1.25 Polled Polled NAND Megabytes/sec Megabytes/sec Preemption using Buffer Size in KBytes NAND NAND NAND01GB DM6467 Desktop Benchmarks captured MHz (/dev/mtdblock3) ST 100 256 512 1024 5120 = 2-58. and

5.00 4.00 3.00 2.00 1.00 0.00 DM6467 297 DM6467 were rnfrRt nMB/S in Rate Transfer = Latency tested Figure read/write 2-133. 2-134. Drivers Low numbers YAFFS2 KB KB Drivers = level device frequency In In Table Table Linux Performance Polled 100 256 512 100 256 512 Size Size Device 5120 1024 5120 1024 block clock NAND system 2009 Kernel NAND Buffer Buffer performance DaVinci The ARM Linux File JULY DM6467 – Linux The • • • • 2.10 2.10.4.1 106 SPRS566A 2.10.4 LSP

PRODUCT PREVIEW Submit www.ti.com 2.10.4.2 Documentation • • • • The File Linux ARM The performance Buffer Buffer NAND system NAND clock block 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Polled Feedback Table Table In In frequency device level = KB KB YAFFS2 numbers Real read/write 2-136. 2-135. Figure tested Time Transfer Rate in MB/S = were 297 0.00 1.00 2.00 3.00 4.00 5.00 DM6467 DM6467 = 2-59. 0 5 1 045120 1024 512 256 100 Preemption Micron (/dev/mtdblock3) MHz captured DM6467 NAND NAND 512MB ufrSz nKBytes in Size Buffer using Megabytes/sec Megabytes/sec NAND Polled Polled (Big 1.24 1.25 1.25 1.25 1.24 1.25 1.25 1.25 1.25 1.25 the Block) Polled Write Read following: Performance Performance Performance Polled Polled Mode Mode Write Polled Read Polled LSP Values Values – RT 2.10 Linux – – File File DaVinci RT Kernel RT Size Size 10 10 10 10 10 10 10 10 10 10 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 107

PRODUCT PREVIEW Feedback www.ti.com MB MB in in 100 100 100 100 100 100 100 100 100 100 Documentation Size Size File File LLD LLD Submit – – LLD – Values Polled Read Polled Write Values Mode Mode Polled Polled Performance Performance Performance following: NAND Read Write Polled the 2.46 2.45 2.46 2.45 2.45 3.07 3.07 3.06 3.06 3.05 SLC Megabytes/sec Megabytes/sec Preemption Polled Polled NAND GB using 2 Buffer Size in KBytes NAND NAND DM365 Desktop captured Benchmarks MHz (/dev/mtd3) MICRON 100 256 512 1024 5120 2-60. = DM365 DM365

5.00 4.00 3.00 2.00 1.00 0.00

297 were and rnfrRt nMB/S in Rate Transfer = Latency tested Figure 2-137. 2-138. read/write Drivers Low numbers YAFFS2 KB KB Drivers = level device frequency In In Table Table Linux Polled Performance 100 256 512 100 256 512 Size Size Device 5120 1024 5120 1024 block clock NAND system 2009 Kernel NAND Buffer Buffer performance DaVinci The ARM Linux File JULY DM365 – Linux The • • • • 2.10 2.10.5.1 108 SPRS566A 2.10.5 LSP

PRODUCT PREVIEW Submit www.ti.com 2.10.5.2 Documentation • • • • The File Linux ARM The performance Buffer Buffer NAND system NAND clock block 5120 1024 5120 1024 Size Size 512 256 100 512 256 100 Polled Feedback In In frequency device Table Table level = KB KB YAFFS2 numbers Real read/write 2-140. 2-139. tested Figure Time Transfer Rate in MB/S = were 0.00 1.00 2.00 3.00 4.00 5.00 297 DM365 DM365 = 2-61. 0 5 1 045120 1024 512 256 100 Preemption MICRON (/dev/mtd3) MHz captured DM365 NAND NAND ufrSz nKBytes in Size Buffer 2 using GB Megabytes/sec Megabytes/sec NAND Polled Polled SLC 2.99 3.00 3.01 3.01 3.04 2.42 2.42 2.42 2.42 2.43 the Polled Write Read NAND following: Performance Performance Performance Polled Polled Mode Mode Write Polled Read Polled LSP Values Values – RT 2.10 Linux – – File File RT RT DaVinci Kernel Size Size 100 100 100 100 100 100 100 100 100 100 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 109

PRODUCT PREVIEW the ROM Feedback with www.ti.com chips. ARM (/dev/mtdblock0, Flash compliant support. Documentation is (EMIFA). NOR access NOR ioctl() Submit driver have space module. Interface pread(), NOR not StrataFlash user do NOR The for the Memory pwrite(), Architecture EVMs flash. I128P30T nodes the unlink (Read/Write) read(), to Intel Driver NOR features: External device and others Layer variables NOR from because write(), Application NORDevice the and BlockInterface following command Flash DM644xHardware NORDeviceDriver LinuxMTDProtocol Flash on.) LinuxFileSystemand Kernel the close(), so NOR DM6467, processor creates system Asynchronous NOR U-Boot rmmod environment and Linux Linux the file User partitions: for the Space Space for Kernel ARM to The None open(), None system supports for driver for Hardware from/to four 2-62. file NOR used into partition Driver partition through AM29LV256M is partition DM644x Figure applicable JFFS2 The Calls NOR the Drivers AMD not transfer divided space with of the is Drivers of driver. Supported Read/Write Read-only accessed been Linux 16MB Read/Write/Erase Read/Write System IOCTLs is tested KB KB Not Device mode Driver MTD booting is has MB DM6446, 2009 128 128 4 Remaining Driver NOR Kernel NOR DaVinci the 1. 2. 3. 4. Supports Supports Polled NOR NOR JULY – Constraints Supported Supported Features NOR Linux • • • • • The On standard /dev/mtdblock1,/dev/mtd0,/dev/mtd1 The supports 2.10 110 SPRS566A 2.11 LSP

PRODUCT PREVIEW Submit 2.11.1 www.ti.com 2.11.1.1 Documentation • • • • The DM644x File Linux ARM NOR performance Buffer Buffer NOR system clock device block 5120 1024 5120 1024 Low Size Size 512 256 100 512 256 100 Feedback Performance Table Table In In frequency level = Latency tested

KB KB Transfer Rate in MB/S JFFS2 numbers 10.00 0.00 2.00 4.00 6.00 8.00 read/write 2-142. 2-141. Figure = Desktop Intel = 0 5 1 045120 1024 512 256 100 were 297 DM644x DM644x and 2-63. 128P30T (/dev/mtdblock3) MHz captured Benchmarks Preemption DM644x NOR NOR O L Performance LLD NOR ufrSz nBytes in Size Buffer (16MB) using Polled Polled Megabytes/sec Megabytes/sec NOR 2.03 2.04 2.03 2.04 2.03 7.43 8.17 8.18 8.18 8.18 the Polled Write Read following: Performance Performance Performance Polled Polled Mode Mode Values Values LSP – LLD 2.10 O Read NOR Write NOR Linux – – LLD LLD File File DaVinci Kernel Size Size 10 10 10 10 10 10 10 10 10 10 Device in in SPRS566A MB MB Linux Drivers – Drivers JULY 2009 111

PRODUCT PREVIEW Feedback www.ti.com MB MB in in 10 10 10 10 10 10 10 10 10 10 Documentation Size Size RT RT File File Submit – – NOR Write NOR Read RT – Values Values Mode Mode Polled Polled Performance Performance Performance following: Read Write Polled the 6.10 6.26 7.46 7.91 7.22 1.43 1.35 1.13 1.36 1.34 NOR Polled Polled Megabytes/sec Megabytes/sec using (16MB) NOR RT Performance Buffer Size in Bytes NOR NOR DM644x captured MHz (/dev/mtdblock3) 2-64. 128P30T DM644x DM644x 100 256 512 1024 5120 297 were = Intel = Figure 2-143. Preemption 2-144. read/write Drivers 8.00 6.00 4.00 2.00 0.00

10.00

numbers JFFS2 MB/S in Rate Transfer KB KB Drivers tested Time = level Table Table frequency In In Linux 100 256 512 100 256 512 Size Size Device Real 1024 5120 1024 5120 block device clock system 2009 Kernel NOR Buffer Buffer performance DaVinci NOR ARM Linux File JULY – Linux • • • • The 2.10 2.11.1.2 112 SPRS566A LSP

PRODUCT PREVIEW Submit 2.12.1 2.12 www.ti.com TIOCSSERIAL TIOCGSERIAL Documentation • • The driver, element, The UART Supported Supported Constraints Features Support Supports Supports UART UART and Driver which Not CONSTANT Driver can Feedback and IOCTLs System peripheral UART1 UART0 Supported be is Constraints supports accessed a for Calls functional Figure is CIR the based on from Table 2-65. following Hardware upgrade DM6467 user Kernel Space Space on Linux User 2-145. the space divisor, Set rate, Get None See open(), • • features: of Kernel UART device UART base industry Continuous UART iuT andConsole LinuxTTY the Table UARTDeviceDriver etc.) as LinuxSerialCore divisor, close(), UARTDevice device TL16C450. parameters Application /dev/ttyS0 Hardware UART Supported data Driver 2-145 standard parameters etc.) bit UART read(),write(), Driver from and device. The IOCTLs the input parity TL16C550 (for Architecture UART UART DESCRIPTION example: overruns setting ioctl() (for LSP driver example: port asynchronous fails 2.10 under Linux type, is implemented port DaVinci Kernel port moderate type, num, Device SPRS566A port communications baud Linux num, load Drivers rate, as – baud Drivers JULY a base serial 2009 113

PRODUCT PREVIEW C 2 I C 2 I C 2 I Feedback The www.ti.com /dev/i2c/0. not 2.1. some as is . MSP430, of of KHz space Documentation version 2-146 Video 400 failures user Submit Table with limitations KHz. the in 100 specification from listed intermittent is observed hardware C-bus to ioctl() 2 I 2 cause I C-Dev operation. IOCTLs Architecture accessed write). 2 failures I CDevice Due frequency C - may Adapter the be 2 I read(), C write are 2 I Driver can This C 2 there 2 I DM355 Client I CCore write(), Application supports KHz. as Default Semiconductor driver (example, - and AdapterHardware C 20 2 AdapterSpecificCode Addressing I Kernel mode at Driver close(), Algorithm Philips C The 2 2 I Driver I CDevice DM644x runs functions DM6467 supported encoders/decoders 10-Bit DMA features: Linux the • • open(), The • • driver. with 2-66. User Space Kernel following Hardware serial a the Figure as compliant Calls Drivers is Constraints Drivers Supported supports Linux System IOCTLs and mode Not Device Addressing peripheral implemented mode Driver 2009 is C C 2 2 Kernel I I Driver DaVinci 7-Bit Fast Interrupt JULY Support C – 2 Supported Supported Features Constraints I Linux The • • • The driver 2.10 114 2.13.1 SPRS566A 2.13 LSP

PRODUCT PREVIEW Submit 2.13.2 www.ti.com I2C_RDWR I2C_FUNCS I2C_TENBIT I2C_SLAVE_FORCE 2.13.2.1 Documentation • • • The DM644x ARM Bus Slave Buffer Buffer performance I 2 C frequency Low frequency Size Size used: 1024 1024 128 128 CONSTANT 64 32 16 64 32 16 Feedback Performance In In Latency Bytes Bytes EEPROM numbers = = 20 297 Desktop Table Table KHz

Transfer Rate in Kbits/S MHz (ATMEL Figure 10.00 20.00 were 0.00 Table and 2-148. 2-147. 63 4181024 128 64 32 16 Preemption captured Benchmarks 2-67. 2-146. 642 DM644x DM644x Combined Get 7- even Change 25640A) DM644x ufrSz nBytes in Size Buffer I or Data Data 2 using the C 10-bit if Driver it adapter I Rate Rate I slave 2 2 is C C 17.19 16.41 15.63 14.84 10.90 17.19 16.41 15.63 14.84 12.50 R/W the already address. I 2 Write Read Kbits/sec Kbits/sec C address. transfer following: Supported functionality. Performance taken. Performance Performance (value Slave (one = stop 0 address IOCTLs for DESCRIPTION only). – 7 bits; LLD is – – 2 Write I2C ReadI2C LSP 7 LLD LLD value or 10 2.10 != Linux bits. 0 File File for DaVinci This Kernel 10 Size Size 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 changes bits.) in in Device SPRS566A Bytes Bytes Linux the Drivers address, – Drivers JULY 2009 115

PRODUCT PREVIEW Feedback www.ti.com Bytes Bytes in in Documentation 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 Size Size File File Submit RT RT I2C Read I2C Write – – RT – Performance Performance Performance following: C Read Write Kbits/sec Kbits/sec 2 I the C C 16.12 17.15 10.88 13.36 15.08 16.12 17.15 10.88 13.36 15.08 2 2 I I Rate Rate using Data Data Buffer Size in Bytes DM644x DM644x DM644x 2-68. captured 2-149. 2-150. 16 32 64 128 1024 5.00 0.00 were Figure

20.00 15.00 10.00

MHz rnfrRt nKbits/S in Rate Transfer Table Table KHz 297 20 Drivers Preemption = = numbers Drivers Bytes Bytes Time In In Linux 32 64 16 32 64 16 128 128 Device 1024 1024 Size Size frequency Real frequency 2009 C 2 Kernel I performance DaVinci Buffer Buffer Bus ARM JULY – Linux • • The 2.10 2.13.2.2 116 SPRS566A LSP

PRODUCT PREVIEW Submit 2.13.3 www.ti.com 2.13.3.1 Documentation • • • The DM355 ARM Bus Slave Buffer Buffer performance I 2 C frequency Low frequency Size Size used: 1024 1024 128 128 Performance 64 32 16 64 32 16 Feedback In In Latency Bytes Bytes Video numbers = = 20 216 Codec Desktop KHz Table Table

Transfer Rate in Kbits/S MHz and Figure 10.00 20.00 were 0.00 (TVP5146) 2-152. 2-151. 63 4181024 128 64 32 16 Benchmarks Preemption captured 2-69. DM355 DM355 DM355 ufrSz nBytes in Size Buffer Data Data using I I 2 Rate Rate 2 C C 10.94 17.07 15.85 14.65 12.73 10.09 16.41 15.63 14.84 13.34 I the 2 Write Read C Kbits/sec Kbits/sec Performance following: Performance Performance – LLD – – 2 Write I2C ReadI2C LSP LLD LLD 2.10 Linux File File DaVinci Kernel Size Size 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 in in Device SPRS566A Bytes Bytes Linux Drivers – Drivers JULY 2009 117

PRODUCT PREVIEW Feedback www.ti.com Bytes Bytes in in Documentation 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 Size Size File File Submit RT RT I2C Read I2C Write – – RT – Performance Performance Performance following: C Kbits/sec Kbits/sec Read Write 2 I the 15.63 16.41 10.05 12.70 14.63 15.84 17.06 10.94 13.28 14.84 C C 2 2 I I Rate Rate using Data Data DM355 Buffer Size in Bytes DM355 DM355 2-70. captured 2-153. 2-154. 16 32 64 128 1024 (TVP5146)

5.00 0.00 Figure

were 20.00 15.00 10.00 MHz Kbits/S in Rate Transfer Table Table KHz Codec 216 20 Drivers Preemption = = numbers Drivers Video Bytes Bytes Time In In Linux 16 32 64 16 32 64 128 128 Device 1024 1024 used: Size Size frequency Real frequency 2009 C 2 Kernel I performance DaVinci Buffer Buffer Slave Bus ARM JULY – Linux • • • The 2.10 2.13.3.2 118 SPRS566A LSP

PRODUCT PREVIEW Submit 2.13.4 www.ti.com 2.13.4.1 Documentation • • • The DM6467 ARM Bus Slave Buffer Buffer performance I 2 C frequency Low frequency Size Size used: 1024 1024 128 128 64 32 16 64 32 16 Feedback Performance In In Latency Bytes Bytes EEPROM numbers = = 100 297 Desktop Table Table

Transfer Rate in Kbits/S KHz MHz (ATMEL Figure 100 were 20 40 60 80 and 0 63 4181024 128 64 32 16 2-156. 2-155. Preemption captured Benchmarks 2-71. 642 DM6467 DM6467 25640A) DM6467 ufrSz nBytes in Size Buffer Data Data using I Rate Rate I 2 2 C C 62.50 79.35 63.13 51.18 37.15 24.00 82.03 78.91 75.78 71.09 the I 2 Write Read Kbits/sec Kbits/sec C following: Performance Performance Performance – LLD – – 2 Write I2C ReadI2C LSP LLD LLD 2.10 Linux File File DaVinci Kernel Size Size 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 in in Device SPRS566A Bytes Bytes Linux Drivers – Drivers JULY 2009 119

PRODUCT PREVIEW Feedback www.ti.com Bytes Bytes in in Documentation 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 Size Size File File Submit RT RT – – I2C Read I2C Write RT – Performance Performance Performance following: C Read Write Kbits/sec Kbits/sec 2 I the C C 78.91 81.25 23.89 37.02 51.08 63.04 79.34 61.72 70.31 75.78 2 2 I I Rate Rate using Data Data DM6467 Buffer Size in Bytes 25640A) DM6467 DM6467 642 2-72. captured 2-157. 2-158. 16 32 64 128 1024 0 80 60 40 20 were

Figure 100

(ATMEL MHz Kbits/S in Rate Transfer KHz Table Table 297 100 Drivers Preemption = = numbers Drivers EEPROM Bytes Bytes Time In In Linux 16 32 64 16 32 64 128 128 Device 1024 1024 used: Size Size frequency Real frequency 2009 C 2 Kernel I performance DaVinci Buffer Buffer Slave Bus ARM JULY – Linux • • • The 2.10 2.13.4.2 120 SPRS566A LSP

PRODUCT PREVIEW Submit 2.13.5 www.ti.com 2.13.5.1 Documentation • • • The DM365 ARM Bus Slave Buffer Buffer performance I 2 C frequency Low frequency Size Size used: 1024 1024 128 128 Performance 64 32 16 64 32 16 Feedback In In Latency Bytes Bytes EEPROM numbers = = 20 297 Desktop KHz Table Table MHz

Transfer Rate in Kbits/S (ATMEL and Figure were 10.00 20.00 0.00 2-160. 2-159. 63 4181024 128 64 32 16 Benchmarks Preemption captured 2-73. 642 DM365 DM365 25640A) DM365 ufrSz nBytes in Size Buffer Data Data using I I 2 Rate Rate 2 C C 10.94 71.07 15.85 14.65 12.73 10.09 16.41 15.63 14.84 13.28 I the 2 Write Read C Kbits/sec Kbits/sec Performance following: Performance Performance – LLD – – 2 Write I2C ReadI2C LSP LLD LLD 2.10 Linux File File DaVinci Kernel Size Size 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 in in Device SPRS566A Bytes Bytes Linux Drivers – Drivers JULY 2009 121

PRODUCT PREVIEW Feedback www.ti.com Bytes Bytes in in Documentation 1024 1024 1024 1024 1024 1024 1024 1024 1024 1024 Size Size File File Submit RT RT I2C Read I2C Write – – RT – Performance Performance Performance following: C Kbits/sec Kbits/sec Read Write 2 I the 16.41 10.05 12.70 14.63 15.84 17.06 10.94 13.28 14.84 15.63 C C 2 2 I I Rate Rate using Data Data DM365 Buffer Size in Bytes DM365 DM365 2-74. captured 2-161. 2-162. 16 32 64 128 1024 5.00 0.00

Figure

were 20.00 15.00 10.00 MHz Kbits/S in Rate Transfer Table Table KHz 297 20 Drivers Preemption = = numbers Drivers Bytes Bytes Time In In Linux 32 64 16 32 64 16 128 128 Device 1024 1024 Size Size frequency Real frequency 2009 C 2 Kernel I performance DaVinci Buffer Buffer Bus ARM JULY – Linux • • The 2.10 2.13.5.2 122 SPRS566A LSP

PRODUCT PREVIEW Submit 2.14.1 2.14 www.ti.com Documentation • The SPI EEPROM SPI SPI Supported Supported Constraints Features Support DMA control SPI driver Driver Driver and devices. Not is driver Feedback and IOCTLs System PIO implemented Supported supports Constraints (bit-bang) supports The Calls Figure SPI the serial as modes following driver block 2-75. Hardware communication Kernel Space Space creates are User None open(), DM6467 In /dev/spi Linux driver features: order supported device Kernel and close(), SPIControllerDriver entry to and LinuxMTDLayer EEPROMDevice access Application compliant with SPIDriver Hardware /dev/mtd5 node is SPI write() not other SPI Driver for present. with SPI and driver, user on Architecture devices read() DM355 standard space you need LSP access and in MTD a DM365 3-pin 2.10 to Linux access (example, driver. DaVinci or Kernel 4-pin /dev/mtd0 It Device SPRS566A supports mode. /dev/mtd0). Linux Drivers on – Drivers JULY various The 2009 123

PRODUCT PREVIEW Size Feedback www.ti.com 1024 1024 1024 1024 1024 Buffer Total Documentation Read Submit LLD – LLD – SPIRead SPIWrite 34.39 60.40 126.05 235.16 737.46 Values Kbits/Sec Performance Performance Size Write Preemption following: / the 1024 1024 1024 1024 1024 Buffer Read Desktop Total Read/Write using SPI Buffer Size in Bytes SPI Write Latency DM355 captured Benchmarks DM355 Low 16 32 64 128 1024 2-76. were 0 and

800 700 600 500 400 300 200 100

15.58 25.73 37.96 50.35 70.59 rnfrRt nKbits/S in Rate Transfer Kbits/Sec 2-163. MHz Drivers 2 Figure = numbers EEPROM Drivers Table Read/Write Polled = = Linux Performance Size Device used Driver frequency mode 2009 Buffer Kernel SPI performance DaVinci 64 16 32 SPI SPI Slave 128 1024 JULY DM355 – Linux The • • • 2.10 Apppliation 2.14.2.1 124 SPRS566A 2.14.2 LSP

PRODUCT PREVIEW Submit www.ti.com 2.14.2.2 Apppliation Documentation • • • The 1082 128 Slave SPI SPI 64 32 16 performance SPI Buffer mode frequency Read/Write used Size Feedback = = Polled Table EEPROM numbers = 2 Figure Real MHz Kbits/Sec 2-164. Transfer Rate in Kbits/S 67.20 47.77 36.13 24.40 14.71 100 200 300 400 500 600 700 800 0 Time were 63 4181024 128 64 32 16 2-77. DM355 captured Preemption DM355 Write SPI ufrSz nBytes in Size Buffer using SPI Total Read/Write Read/Write Buffer 1024 1024 1024 1024 1024 the following: Size Performance Performance Kbits/Sec Values 595.59 207.91 114.95 62.18 31.73 LSP P WriteSPI ReadSPI – RT 2.10 Linux – RT Read DaVinci Kernel Device Total SPRS566A Linux Buffer 1024 1024 1024 1024 1024 Drivers – Drivers JULY Size 2009 125

PRODUCT PREVIEW Size Feedback www.ti.com 1024 1024 1024 1024 1024 Buffer Total Documentation Read Submit LLD – LLD – SPIRead SPIWrite 22.19 45.09 86.31 159.15 599.07 Values Kbits/Sec Performance Performance Size Preemption following: the 1024 1024 1024 1024 1024 Buffer Read/Write Desktop Read/Write Total SPI using Buffer Size in Bytes SPI Write Latency Benchmarks DM6467 captured 16 32 64 128 1024 DM6467 Low and 2-78. 0.00 were

800.00 700.00 600.00 500.00 400.00 300.00 200.00 100.00

10.64 19.19 31.30 46.66 81.54 rnfrRt nKbits/S in Rate Transfer Kbits/Sec 2-165. MHz Drivers 2 Figure = numbers EEPROM Drivers Read/Write Polled Table = = Linux Performance Size Device used Driver frequency mode 2009 Buffer Kernel SPI performance DaVinci 64 16 32 SPI SPI Slave 128 1082 JULY DM6467 – Linux The • • • 2.10 Application 2.14.3.1 126 SPRS566A 2.14.3 LSP

PRODUCT PREVIEW Submit www.ti.com 2.14.3.2 Apppliation Documentation • • • The 1082 128 Slave SPI SPI 64 32 16 performance SPI Buffer mode frequency Read/Write used Size Feedback = = Polled Table EEPROM numbers = 2 Figure Real MHz 2-166. Kbits/Sec Transfer Rate in Kbits/S 79.25 45.23 30.34 18.48 10.27 100.00 200.00 300.00 400.00 500.00 600.00 700.00 800.00 Time 0.00 were 2-79. 63 4181024 128 64 32 16 DM6467 captured Preemption DM6467 Write SPI ufrSz nBytes in Size Buffer using Total SPI Read/Write Read/Write Buffer 1024 1024 1024 1024 1024 the following: Size Performance Performance Kbits/Sec 490.67 145.98 21.15 80.74 42.98 Values LSP P WriteSPI ReadSPI – RT 2.10 Linux – RT Read DaVinci Kernel Device Total SPRS566A Linux Buffer 1024 1024 1024 1024 1024 Drivers – Drivers JULY Size 2009 127

PRODUCT PREVIEW Size Feedback www.ti.com 1024 1024 1024 1024 1024 Buffer Total Documentation Read Submit LLD – LLD – SPIRead SPIWrite 35.23 68.93 130.03 244.89 789.27 Values Kbits/Sec Performance Performance Size Write Preemption following: / the 1024 1024 1024 1024 1024 Buffer Read Desktop Total Read/Write using Buffer Size in Bytes SPI SPI Write Latency DM365 captured 16 32 64 128 1024 Benchmarks DM365 0.00 Low 900.00 800.00 700.00 600.00 500.00 400.00 300.00 200.00 100.00

2-80.

were 1000.00 and rnfrRt nKbits/S in Rate Transfer 16.02 26.23 38.67 51.20 71.73 Kbits/Sec 2-167. MHz Drivers 2 Figure = numbers EEPROM Drivers Table Read/Write Polled = = Linux Performance Size Device used Driver frequency mode 2009 Buffer Kernel SPI performance DaVinci 16 32 64 SPI SPI Slave 128 1024 JULY DM365 – Linux The • • • 2.10 Apppliation 2.14.4.1 128 SPRS566A 2.14.4 LSP

PRODUCT PREVIEW Submit www.ti.com 2.14.4.2 Apppliation Documentation • • • The 1024 128 Slave SPI SPI 64 32 16 performance SPI Buffer mode frequency Read/Write used Size Feedback = = Polled Table EEPROM numbers = 2 Figure Real MHz Kbits/Sec 2-168.

68.93 49.25 37.10 25.20 15.23 Transfer Rate in Kbits/S 1000.00 Time were 100.00 200.00 300.00 400.00 500.00 600.00 700.00 800.00 900.00 2-81. 0.00 DM365 63 4181024 128 64 32 16 captured Preemption DM365 Write SPI ufrSz nBytes in Size Buffer using SPI Total Read/Write Read/Write Buffer 1024 1024 1024 1024 1024 the following: Size Performance Performance Kbits/Sec Values 635.93 222.05 121.12 33.35 65.19 P WriteSPI ReadSPI LSP – RT 2.10 Linux – RT Read DaVinci Kernel Device Total SPRS566A Linux Buffer 1024 1024 1024 1024 1024 Drivers – Drivers JULY Size 2009 129

PRODUCT PREVIEW for the or serial that pins Feedback pins with mode www.ti.com (so and protocol TSIF1 TSIF enables connector card serial along UART TSIF. the use constraint. in parallel of driver card with Documentation transmit mode muxed EVM Display both mode. TSIF0 some daughter to (TSIF) SD Submit muxed communication the serial mode mode daughter higher These a serial mode due are mode, one on at is in supports test TSIF Serial To pins Configuring InterFace tested serial using R413 in mode Parallel UART1. TSIF1 driver in be in EVM. and and MHz UART and asynchronous The DM6467 issues. Digital. (MPEG-TS) Serial kernel. Stream MHz 81 supports in and cannot the and R406 or mode DM6467 on UART0 Linux configured stream integrity used driver on 16.875 is standard. mode Video MHz TSIF. Spectrum the with Transport be or of the resistors 54 data by parallel the brought into in can of TSIF0 async the synchronous MHz present Transport driver. muxed not have MPEG-2 MHz, mode interrupts are in instance with 13.5 27 Serial Some Currently TSIF0 When are are provided will short TSIF0 frequencies). features: char statically mode. I/F • • None • a packet. GOP each bypass either either built as for and specified at at or and mode. parallel following Parallel is streams. control B A data (TSIF0,TSIF1) the - - MPEG-TS and nodes 8-bit filters serial which filtering output interrupts reception reception TSIF Drivers and PID transmit implemented mode mode only serial read/write detection dynamically PID of mode device and mode transmit data 7 receive Constraints and and is supports Drivers of For Mode Supported 12 for ATS buffers For – Serial sensing and and Linux input and of – packet mode. loaded Not driver Device For supports supports Driver for 1-bit copy modes – instances be send Manual automatic video, 2009 Driver to Kernel TSIF TSIF DaVinci Transmission Transmission Boundary Specific Full Semi-automatic Semi-automatic Full Consequential transmit ATS Zero Both Bypass Four TSIF1 TSIF0 Creation rx_filter0-7 tx_control Can Two JULY Support – Features Constraints TSIF Linux • • • • • • • • • • • • • • • • • • • • audio, interface The • • The user 2.10 130 2.15.1 SPRS566A 2.15 LSP

PRODUCT PREVIEW Submit www.ti.com TSIF_GET_ATS TSIF_SET_ATS TSIF_TX_RING_BUF_CONFIG TSIF_RX_RING_BUF_CONFIG TSIF_QUERY_RX_BUF TSIF_REQ_RX_BUF TSIF_QUERY_TX_BUF TSIF_REQ_TX_BUF TSIF_SET_WRITE_AVAIL TSIF_GET_WRITE_AVAIL TSIF_SET_READ_AVAIL TSIF_GET_READ_AVAIL TSIF_GET_SPCPKT_CONFIG TSIF_SET_SPCPKT_CONFIG TSIF_DISABLE_PCR TSIF_ENABLE_PCR TSIF_GET_PMT_CONFIG TSIF_GET_PMT_PKT TSIF_CONFIG_PMT TSIF_GET_PAT_CONFIG TSIF_GET_PAT_PKT TSIF_CONFIG_PAT TSIF_GET_TX_BUF_STATUS TSIF_GET_RX_BUF_STATUS TSIF_STOP_TX TSIF_START_TX TSIF_STOP_RX TSIF_START_RX TSIF_GET_TX_CONFIG TSIF_SET_TX_CONFIG TSIF_GET_RX_CONFIG TSIF_SET_RX_CONFIG TSIF_GET_PID_FILTER_CONFIG TSIF_SET_PID_FILTER_CONFIG Constant Documentation Supported Supported Feedback IOCTLs System Calls Table Reads Enables Configure Configure Obtain Allocates Obtain Allocates Moves Gets Moves Gets Enables Enables Disables Enables Gets Copies Configures Gets Copies Configures Gets Gets Stops Starts Stops Starts Gets Sets Gets Sets Gets Sets Description 2-169. up up up the the the the the the the the the the the the the See open(), • • • the the the the the the the the the the the the the PCR flag status status transmitter receiver hardware length length flag PCR the the TSIF TSIF TSIF TSIF the the current Write Read address address modules. stream Consequential be use same Currently DC_P2 The TSIF new new the the transmitter receiver hardware transmit user user Table which which memory memory detection Transmitter Receiver detection same TSIF TSIF transmitter receiver transmitter receiver of of of of PAT PMT both close(), Parallel Pointer Pointer to to configuration Driver-Supported transmit receive available available ATS clock filter of of says says get set configuration in 2-169 configuration module module connector. ATS packet packet filter the the for for in instances both configuration SDRAM. value Ring the the configuration of of whether whether RX TX both Receiver Transmitter source. Ring by buffer mmap(), async buffer according the Receiver configuration configuration . free data to to to to buffer buffer filling buffer from the interface Transmitter the detect detect the buffer cases. space that PAT PMT according instances TX_ATS_MON user the mode user Source of Ring Because according by to can ioctl() Ring PAT PMT TSIF, detection initial detection in passed the the passed buffer for for has the be IOCTLs for by buffer specified parameters detecting detecting ATS to read was ring the the been of TSIF0 the that to buffer of buffer is is value that the buffer specified LSP in TSIF register not enabled parameters this transmit enabled has the amount parameters tested has specific specific taken has provided. to constraint, ring 2.10 (TSIF0 Linux to be amount or or buffer been be passed clock not packet by packet not provided. DaVinci from Kernel passed provided. storing and tested frequency to HPI if Device to TSIF1) the user SPRS566A the Linux or the mmap only Drivers mmap wants PCI source use has with – call Drivers JULY call to the to the 2009 131

PRODUCT PREVIEW internal VLYNQ Feedback www.ti.com address. a serializing an of by store Peer(Slave) through packet Documentation Vlynq function extension and this sensing devices Submit the boundary between enables the (continued) VLYNQ Local(Master) Devices that accomplishes Compatible from Vlynq packet transaction format. IOCTLs VLYNQ interface Diagram device. specific storage between complete complete mode detection. the to to serialized devices. VLYNQ mode data of link values GOP external the driver: detected. 2-82. transmit receiver the Bypass SDRAM the contents communications divisor not VLYNQDriver Driver-Supported physical the the in the Consequential the by the None Currently, is None None for for slave and Figure DM6467/DM644xHardware TSIF count) transferring Description Enables Enables Waits Enables/disables Reads Waits Selects and external pin Interrupts User transaction supported 2-169. Space Space Kernel direction low device, more master the Hardware are is, or Calls Drivers the clock VLYNQ Table one Constraints of of of in (that one Drivers Supported features to Linux System IOCTLs and Not serial Device de-serializing Driver is 2009 and Kernel following segment transactions DaVinci Configuration Configuration Configuration JULY Support – Supported Supported Features Constraints VLYNQ Linux • The • • bus port, VLYNQ bus 2.10 TSIF_WAIT_FOR_TX_COMPLETE TSIF_SET_ENDIAN_CTL TSIF_WAIT_FOR_RX_COMPLETE TSIF_ENABLE_GOP_DETECT TSIF_GET_SPCPKT Constant TSIF_BYPASS_ENABLE TSIF_SET_CONSEQUENTIAL_MODE 132 2.16.1 2.16 SPRS566A LSP

PRODUCT PREVIEW Submit 2.17.1 2.17 www.ti.com PWMIOC_STOP PWMIOC_START PWMIOC_SET_INACT_OUT_STATE PWMIOC_SET_FIRST_PHASE_STATE PWMIOC_SET_RPT_VAL PWMIOC_SET_DURATION PWMIOC_SET_PERIOD PWMIOC_SET_MODE Constant Documentation • • • • • The programmable. counter digital-to-analog The PWM Supported Supported Constraints Features Support Supports Supports /dev/davinci_pwm0, Supports space Supports The DaVinci pulse Driver PWM and as not width Feedback and IOCTLs System PWM continuous Interrupt /dev/davinci_pwm0, a four three driver supported first-phase modulator converter Constraints instances Driver instances is Calls mode implemented /dev/davinci_pwm1, and supports Table duration with (PWM) of one-shot of Reset Start Set Set Set Set Set Set Description PWM some 2-170. /dev/davinci_pwm1, See open(), capability cycles. In DMA the the the the the the PWM the generates the comparator. as continuous the Inactive First Repeat PWM PWM mode on external Table (default) PWM following a mode PWM PWM char Periods close(), on the Phase First-Phase period of to Count and output settings 2-170 operation: the is DM355 a Driver-Supported driver. work components. output modes mode, pulse not features: /dev/davinci_pwm2 Bit Value ioctl() smaller level DM6446 properly. supported. duration width level continuous /dev/davinci_pwm2, and periodic the than minimum of DM365 - This the It or 8 waveform cycles one-shot can IOCTLs period PWM EVMs period be do LSP peripheral and for accessed - and not for It motor 2.10 first-phase Linux can allow the /dev/davinci_pwm3 DaVinci PWM Kernel be is control, the from a accessed timer interrupt Device module duration SPRS566A user or Linux with can Drivers is from space – are a act Drivers JULY 8 period user as both 2009 133 as a PRODUCT PREVIEW for and and EDMA to/from Feedback external www.ti.com buffering, drivers 56-63 56-63 The DM355 data and controller of 43-53, 43-53, other circular 31, 31, by Documentation DM644x, channels. 30, 30, for utility peripherals, Submit movement a 24-27, 24-27, QDMA cache/memory ping-pong, as 8 Details 5-7 13-15, 13-15, allows (L2) allocation SRAM), and used None None DSP None 0-3, None None DSP 0-3, 0-6 0-3, 128-511 DSP None None flexible Details is Details (L2 EDMA supported. Resource level-two resource channels driver The not supports the is APIs): 55 55 memory Resource Resource This EDMA3 EDMA3 54, 54, that applications 64-event mode to the processor APIs. (Kernel between to protection. 32-42, 32-42, EDMA3 internal EDMA3 DM355 up 29, 29, level about single DM6467. (PaRAM) 28, 28, callback and a features for addressing memory transfers DM365 DM646x on including kernel transfers RAM details 16-23, 16-23, supports and data FIFO None None None the details the DM644x 2-173. 0-127 ARM 0-63 0-7 0-63 0-256 ARM 0-63 4 0-63 0-127 ARM 4-12, 7 4-12, driver 2-172. following all DMA completion register EDMA spaces, only channel the such gives with Table CC 2-171. Table values Parameter EDMA The Transfers handles DMA of Calls gives 2-171 Drivers error channel Table memory auto-reloading, exposes transaction supports specific Free Drivers DMA a scalable supported 2-172 Table DMA Synchronize Linux return DMA a System IOCTLs and controller driver instances driver peripherals. not Device Mode of can and Table Driver 2009 addressable transfer. Kernel EDMA EDMA EDMA device DaVinci Multiple Read/Write Polled APIs Request Programs Start Provides JULY – Set Set Set Constraints Supported Supported Features EDMA Linux • • • • The • • • • DM365. consists channel-chaining, any memory. The data The the Channel Channel Channel Resource Resource Resource Channel Channel Channel 2.10 PaRAM DMA QDMA TCC EDMA TCC PaRAM EDMA DMA QDMA PaRAM DMA QDMA TCC EDMA 134 SPRS566A 2.18 LSP

PRODUCT PREVIEW Submit 2.18.1 www.ti.com 2.18.1.1 Documentation • The A A 65535 32768 16384 65535 32768 16384 DM644x 8192 4096 1024 8192 4096 1024 Count Count Bytes performance EDMA Table Table transferred 2-175. Feedback Memory 2-174. Performance

Figure Bytes/u-Sec 1000 250 500 750 numbers DM644x 0 DM644x 0449 1213437765535 32767 16384 8192 4096 1024 = to 2-83. 65535 B B Memory Count Count 16 64 16 64 1 2 4 8 1 2 4 8 were DM644x AB-Sync and A-Sync bytes captured Benefits Low EDMA EDMA EDMA Latency using Count A Memory Memory Memory C C Desktop Count Count the 1 1 1 1 1 1 1 1 1 1 1 1 following: to to to Memory Memory Memory Preemption Performance Performance Performance Time Time 517 218 218 218 219 227 219 219 218 231 253 287 LSP (u_Sec) (u_Sec) 2.10 Linux – Values Values ABSYNC ASYNC LLD DaVinci Kernel – Device – SPRS566A LLD Bytes/u-Sec Bytes/u-Sec LLD Linux 126.76 300.62 300.61 299.96 299.25 299.25 299.25 300.61 283.71 259.04 228.35 288.7 Drivers – Drivers JULY 2009 135

PRODUCT PREVIEW Feedback www.ti.com 263.2 261.1 44.55 201.65 236.58 264.25 262.14 262.62 260.06 262.14 118.08 167.18 RT RT Bytes/u-Sec Bytes/u-Sec – – Documentation RT Values ASYNC ABSYNC Values – Submit (u-Sec) (u-Sec) 325 277 248 250 249 251 249 252 250 555 392 1471 Time Time Performance Performance Performance Memory Memory Memory to to to following: 1 1 1 1 1 1 1 1 1 1 1 1 the Count Count C C Memory Preemption Memory Memory A Count using Time EDMA EDMA EDMA Real captured bytes A-Sync AB-Sync DM644x were 8 4 2 1 8 4 2 1 64 16 64 16 Count Count Memory B B 65535 2-84. to = Drivers DM644x 1024 4096 8192 16384 32767 65535 0 DM644x numbers 750 500 250

Drivers

1000 Bytes/u-Sec Figure Linux 2-176. Memory 2-177. Device transferred 2009 Table Table Kernel EDMA performance DaVinci Bytes Count Count 8192 1024 4096 1024 4096 8192 JULY 16384 32768 65535 16384 32768 65535 – A A Linux • The 2.10 2.18.1.2 136 SPRS566A LSP

PRODUCT PREVIEW Submit 2.18.2 www.ti.com 2.18.2.1 Documentation • The A A 65535 32768 16384 65535 32768 16384 DM355 8192 4096 1024 8192 4096 1024 Count Count Bytes performance EDMA Table Table transferred Performance 2-179. Feedback Memory 2-178.

Figure Bytes/u-Sec 1000 250 500 750 numbers DM355 0 DM355 0449 1213437765535 32767 16384 8192 4096 1024 = to 2-85. 65535 B B Memory Count Count 16 64 16 64 1 2 4 8 1 2 4 8 and AB-Sync were A-Sync DM355 bytes Benefits captured Low EDMA EDMA EDMA Latency using Memory Memory Count A Memory C C Desktop Count Count the 1 1 1 1 1 1 1 1 1 1 1 1 following: to to to Memory Memory Memory Preemption Performance Performance Performance Time Time 384 672 288 286 289 289 295 287 289 303 308 337 LSP (u-Sec) (u-Sec) 2.10 Linux – Values Values ABSYNC ASYNC LLD DaVinci Kernel – – Device LLD SPRS566A LLD Bytes/u-Sec Bytes/u-Sec Linux 170.67 227.55 229.14 226.27 226.77 222.16 228.35 226.76 216.28 212.78 194.47 97.52 Drivers – Drivers JULY 2009 137

PRODUCT PREVIEW Feedback www.ti.com 99.6 38.37 162.22 175.69 200.41 198.59 197.99 191.63 200.59 197.99 197.99 199.47 RT Bytes/u-Sec Bytes/u-Sec RT – – Documentation RT Values ASYNC ABSYNC Values Submit – (u-Sec) (u-Sec) 404 373 327 330 331 342 326 331 331 658 491 1708 Time Time Performance Performance Performance Memory Memory Memory to to to following: 1 1 1 1 1 1 1 1 1 1 1 1 the Count Count C C Memory Preemption Memory Memory A Count using Time EDMA EDMA EDMA Real captured bytes DM355 A-Sync AB-Sync were 8 4 2 1 8 4 2 1 64 16 64 16 Count Count Memory B B 65535 2-86. to = DM355 Drivers 1024 4096 8192 16384 32767 65535 DM355 0 numbers 750 500 250

1000 Drivers Bytes/u-Sec Figure 2-180. Linux 2-181. Device transferred Table 2009 Table Kernel EDMA-Memory performance DaVinci Bytes Count Count 8192 1024 4096 1024 4096 8192 JULY 16384 32768 65535 16384 32768 65535 – A A Linux • The 2.10 2.18.2.2 138 SPRS566A LSP

PRODUCT PREVIEW Submit 2.18.3 www.ti.com 2.18.3.1 Documentation • The A A 65535 32768 16384 65535 32768 16384 DM6467 8192 4096 1024 8192 4096 1024 Count Count Bytes performance EDMA Table Table transferred 2-183. Feedback Memory 2-182. Performance

Figure Bytes/u-Sec 1000 250 500 750 numbers DM6467 0 DM6467 0449 1213437765535 32767 16384 8192 4096 1024 = to 2-87. 65536 B B Memory Count Count 16 64 16 64 1 2 4 8 1 2 4 8 were DM6467 AB-Sync and A-Sync bytes captured Benefits Low EDMA EDMA EDMA Latency using Count A Memory Memory Memory C C Desktop Count Count the 1 1 1 1 1 1 1 1 1 1 1 1 following: to to to Memory Memory Memory Preemption Performance Performance Performance Time Time 365 107 124 159 LSP 94 94 94 94 94 95 95 98 (u-Sec) (u-Sec) 2.10 Linux – Values Values ABSYNC ASYNC LLD DaVinci Kernel – Device – SPRS566A LLD Bytes/u-Sec Bytes/u-Sec LLD Linux 179.55 697.18 697.17 695.66 697.19 697.19 689.85 689.84 668.71 612.49 528.52 412.18 Drivers – Drivers JULY 2009 139

PRODUCT PREVIEW Feedback www.ti.com 455.1 54.12 368.18 550.71 508.03 546.13 546.13 544.93 546.12 546.13 167.67 265.33 RT RT Bytes/u-Sec Bytes/u-Sec – – Documentation RT Values Values ASYNC ABSYNC – Submit (u-Sec) (u-Sec) 178 144 119 129 120 120 120 120 120 391 247 1211 Time Time Performance Performance Performance Memory Memory Memory to to to following: 1 1 1 1 1 1 1 1 1 1 1 1 the Count Count C C Memory Preemption Memory Memory A Count using Time EDMA EDMA EDMA Real captured bytes A-Sync AB-Sync DM6467 were 8 4 2 1 8 4 2 1 64 16 64 16 Count Count Memory B B 65536 2-88. to = Drivers DM6467 1024 4096 8192 16384 32767 65535 0 DM6467 numbers

750 500 250

Drivers 1000 Bytes/u-Sec Figure Linux 2-184. 2-185. Device transferred 2009 Table Table Kernel EDMA-Memory performance DaVinci Bytes Count Count 8192 1024 4096 1024 4096 8192 JULY 16384 32768 65535 16384 32768 65535 – A A Linux • The 2.10 2.18.3.2 140 SPRS566A LSP

PRODUCT PREVIEW Submit 2.18.4 www.ti.com 2.18.4.1 Documentation • The A A 65535 32767 16384 65535 32767 16384 DM365 8192 4096 1024 8192 4096 1024 Count Count Bytes performance EDMA Table Table transferred Performance 2-187. Feedback Memory 2-186.

Figure Bytes/u-Sec 1000 250 500 750 numbers 0 DM365 0449 1213437765535 32767 16384 8192 4096 1024 DM365 = to 2-89. 65535 B B Memory Count Count 16 64 16 64 1 2 4 8 1 2 4 8 and AB-Sync were A-Sync DM365 bytes Benefits captured Low EDMA EDMA EDMA Latency using Memory Count A Memory Memory C C Desktop Count Count the 1 1 1 1 1 1 1 1 1 1 1 1 following: to to to Memory Memory Memory Preemption Performance Performance Time Time Performance (microsec) (microsec) 480 182 186 181 180 182 182 174 178 189 205 245 LSP 2.10 Linux – Values Values ABSYNC ASYNC LLD DaVinci Kernel – – Device LLD SPRS566A LLD Bytes/u-Sec Bytes/u-Sec Linux 136.53 360.08 352.33 361.28 364.09 360.09 360.09 376.64 368.17 346.75 317.69 267.49 Drivers – Drivers JULY 2009 141

PRODUCT PREVIEW Feedback www.ti.com 43.09 224.44 271.93 292.57 313.57 309.13 315.08 314.38 309.12 309.13 120.92 178.09 RT Bytes/u-Sec Bytes/u-Sec RT – – Documentation RT Values ASYNC ABSYNC Values Submit – 292 241 224 209 212 208 208 212 212 542 368 1521 (microsec) (microsec) Performance Time Time Performance Performance Memory Memory Memory to to to following: 1 1 1 1 1 1 1 1 1 1 1 1 the Count Count C C Memory Preemption Memory Memory A Count using Time EDMA EDMA EDMA Real captured bytes DM365 A-Sync AB-Sync were 8 4 2 1 8 4 2 1 64 16 64 16 Count Count Memory B B 65536 2-90. to = DM365 Drivers DM365 1024 4096 8192 16384 32767 65535 0 numbers

750 500 250

Drivers 1000 Bytes/u-Sec Figure 2-188. Linux 2-189. Device transferred Table 2009 Table Kernel EDMA-Memory performance DaVinci Bytes Count Count 8192 1024 4096 1024 4096 8192 JULY 16384 32767 65535 16384 32767 65535 – A A Linux • The 2.10 2.18.4.2 142 SPRS566A LSP

PRODUCT PREVIEW Submit 2.19 www.ti.com PCIMODULE_CMD_GETBARLOCN PCIMODULE_CMD_GENNOTIFY Constant Documentation • The exposing with PCI PCI Supported Supported Constraints Features Generates Slave PCI Slave the Slave host a not driver minimal Feedback Driver IOCTLs System and supported machine driver is Handle implemented set Calls supports of Table over file interrupts Figure operation the 2-190. the To To Description Hardware for See open(), None None read generate Kernel Space PCI following Space User the received 2-91. PCI the Table interface. structure Linux mapping close(), a Slave PCI software functions: 2-190 DM6467Hardware on PCISlaveDriver operating Slave Driver-Supported Application the namely release(), The . interrupt PCI Driver driver system release, interface. ioctl(), Diagram is running developed mmap, mmap() IOCTLs LSP on ioctl, the as 2.10 Linux and a DM6467 DaVinci Kernel simple fasync. Device SPRS566A board character Linux Drivers interfacing – Drivers JULY driver 2009 143

PRODUCT PREVIEW 1.3.4 which Feedback DDR2. www.ti.com PC PC U-Boot Boot from Boards executed, Tools Tools NFS 65 Flash/NAND is 1.3.4. Documentation executed UBL DM644x/DM6467/DM355/DM3 Submit U-Boot then reset, is hardware board version Boot power U-Boot Locations At NAND NAND NAND EVM DM365 NAND On Ethernet memory. System memory. or open-source DM6446 memory. File the port DDR2 EVM NAND board on and to Boot DaVinci in DDR2 serial NAND NAND NAND and into DM355 functions: via NAND based NAND kernel DM6446 Kernel On resides is from kernel Linux memory DM6467, following DaVinci U-Boot, U-Boot the O/S to release the to the U-Boot 3-1. the DM644x this for on case, Drive the DM365, Boot in images NAND NAND Board loads this HD Table Hard DaVinci Drivers kernel In RESET and parameters loading On binary DM355, in responsible for Linux the Linux bootloader boot new reset is NAND: DSP the Overview at for 2009 Overview U-Boot U-Boot Kernel DaVinci Initializes Places Provides Starts Uploads Bootloader System JULY responsible – U-Boot • • • • • executes U-Boot is The The Functions U-Boot File Linux 2.10 U-Boot 144 3.1 SPRS566A 3 LSP

PRODUCT PREVIEW IMPORTANT NOTICE Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements, and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment. TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s standard warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where mandated by government requirements, testing of all parameters of each product is not necessarily performed. TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and applications using TI components. To minimize the risks associated with customer products and applications, customers should provide adequate design and operating safeguards. TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or in which TI products or services are used. Information published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI. Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional restrictions. Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not responsible or liable for any such statements. TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in such safety-critical applications. TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use. TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated products in automotive applications, TI will not be responsible for any failure to meet such requirements. Following are URLs where you can obtain information on other Texas Instruments products and application solutions: Products Applications Amplifiers amplifier.ti.com Audio www.ti.com/audio Data Converters dataconverter.ti.com Automotive www.ti.com/automotive DLP® Products www.dlp.com Broadband www.ti.com/broadband DSP dsp.ti.com Digital Control www.ti.com/digitalcontrol Clocks and Timers www.ti.com/clocks Medical www.ti.com/medical Interface interface.ti.com Military www.ti.com/military Logic logic.ti.com Optical Networking www.ti.com/opticalnetwork Power Mgmt power.ti.com Security www.ti.com/security Microcontrollers microcontroller.ti.com Telephony www.ti.com/telephony RFID www.ti-rfid.com Video & Imaging www.ti.com/video RF/IF and ZigBee® Solutions www.ti.com/lprf Wireless www.ti.com/wireless Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265 Copyright © 2009, Texas Instruments Incorporated