LSP 2.10 DaVinci Linux 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 Linux Kernel 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 IOCTLs...... 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 Write 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-Sync 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 File System 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 (uclibc) 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 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 Sysfs 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 Board Control 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 device driver video 2-1. DaVinci set Application Window Window post-capture description, of Display focus and GUI DM644x of the processing (FBDev) node DM644x-VPBE Display video performance are Encode Manager, Encoder video device (AF), BE API FBDEV /dev/fb/1, /dev/fb/3 driver and Display Driver done created Video display, features processing. processing and and drivers are: 2-3 front for auto Video Display for V4L2 Driver shows a Application and V4L2 Frame Work 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-VPFE Capture (VPBE) package. and TVP5146 Decoder LSP white The its for is architecture. default V4L2 Frame Work Application different /dev/video0. and Capture Driver Video Capture 2.10 device and Decoder 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 ioctl(), 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 close(), 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 • • • • • • • open(), • • 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. Capture and and Decoder DM355-VPFE is Video Capture Capture Driver Submit peripheral TVP5146 Decoder V4L2 Frame Work 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. V4L2 Frame Work with format. statistics, VPFE End using Linux video Application the Video Display 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 and Display Driver the DM355-VPBE Display created alpha RGB H3A display, Video DACs: Encoder Manager, 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/LCD Panel 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, Capture and and Decoder Analog Input DM6467-VPIF Video Capture Submit Capture Driver node V4L2 Frame Work 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 Video Image VDCE Driver driver, DM6467-VDCE and UDEV