NOTE This page tracks the status of major subsystem support in mainline kernel (Linus Torvalds's tree). This does not indicate status of any TI release which often contains more functionality which may not have been accepted (or even submitted) upstream yet.
The Linux support for the DaVinci family of processors is maintained in the linux-davinci GIT tree. Patches are sent upstream from this tree to the mainline (Linus') kernel regularly. This topic describes what is in the DaVinci kernel tree and corresponding status for each device and/or peripheral.
Please note: Port of LSP 02.10 display drivers to community kernel is available in linux-davinci staging tree on Arago. This is based on encoder manager & display manager architecture (THS8200 not supported).
To Do
push the patches to mainlne.
Video Capture
On DM644x, DM355 and DM365, Video Capture is handled by Video Peripheral Front End (VPFE) and CCDC. CCDC is interfaced with decoders - TVP514x and/or TVP7002 for SD/HD capture. It is also interfaced with Imagers (Camera) for raw capture.
On DM6467, Video capture is handled by Video Port Interface (VPIF), which interfaces with decoders - TVP514x and TVP7002. VPIF is also used on DA850/OMAP-L138.
Devices
DM644x
DM6467
DM355
DM365
DA850/OMAP-L138
Mainline
Status
Status
Supports TVP5146 capture on DM6446, DM355 & DM365.
Supports TVP7002 driver
Note: following supported in linux-davinci staging tree on arago-project.org (not submitted to community):-
Support for capture from TVP7002 on DM365 and DM6467
Support for capture from MT9T031 on DM355 & DM365
Support for capture from MT9T031 on DM355 & DM365 (on the fly mode mode)
Support for capture from TVP7002 on DM365 (on the fly mode)
TO DO
Minor bug fixes and some cleanup.
Submit patches for for mainline.
IPIPE - Previewer/Resizer
Devices
DM644x
DM6467
DM355
DM365
DA850/OMAP-L138
Mainline
Status
Status
IPIPE (Previewer/Resizer) for DM365 is submitted to community as RFC.DM355 and DM6446 will follow.
The current arago linux-davinci supports the fully featured driver with one-shot and on-the-fly mode support using Media Controller framework.
TODO
Submit the driver to mainline acceptance.
H3A - AEW/AF
Devices
DM644x
DM6467
DM355
DM365
DA850/OMAP-L138
Mainline
Status
Status
H3A - AEW/AF support is not submitted to community.
Media Controller and event mechanism based support present on linux-davinci staging tree on arago-project.org
TODO
Submit the patches to mainline.
VDCE
Devices
DM644x
DM6467
DM355
DM365
DA850/OMAP-L138
Mainline
Status
Status
Interim patch for VDCE driver on DM6467 is maintained in the linux-davinci staging tree on Arago
TO DO
For upstream submission, this driver will require updates based on media controller framework
I2C
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
UART
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
USB Host
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status / To Do
OHCI and MUSB support need to be added in OMAPL138 board file.
CPPI4.1 DMA driver needs to be added for OMAPL1x.
USB patches to support DM365 and DM646x needs to be added.
CPPI3.0 DMA fine tuning for performance enhancements is pending.
USB Gadget
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status / To Do
MUSB support need to be added in OMAPL138 board file.
CPPI4.1 DMA driver needs to be added for OMAPL1x.
USB patches to support DM365 and DM646x needs to be added.
CPPI3.0 DMA fine tuning for performance enhancements is pending.
USB OTG
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status / To Do
MUSB support need to be added in OMAPL138 board file.
CPPI4.1 DMA driver needs to be added for OMAPL1x.
USB patches to support DM365 and DM646x needs to be added.
CPPI3.0 DMA fine tuning for performance enhancements is pending.
NAND
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
4-bit ECC patches accepted into the mtd subsystem
Patch submitted to mtd list for 4-Bit ECC error correction issue.
TODO
Support for 4K page size NAND devices requires changes to nand_ecclayout structures. Need to bring it up on the linux-mtd list for a generic solution
SPI
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
SPI driver accepted into Linus's kernel
SPI was tested on DM355, DM365 and DM6467 using EEPROMs on the EVMs connected to SPI
SPI was tested on OMAP-L138 and OMAP-L137 using EEPROMS on the EVMs connected to SPI
TODO
PCI Host
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
Aug03 2009: v2 patch set submitted to DaVinci ML for review
TODO
Submit boot driver
MMC/SD
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
Platform support patches for DA830/OMAP-L137 have been merged.
To Do
SDIO patches submitted on the mailing list - require updates based on the comments received
EDMA
Devices
DM644x
DM6467
DM355
DM365
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
To Do
Naming the event queues wrt priority.
Implementing single tc err handler for all the Transfer controllers.
Getting the TC err interrupt numbers from platform resources.
Getting rid of the n_* fields in struct edma_soc_info with the help of EDMA_CCCFG register.
Graphical LCD
Devices
DM368
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
OMAP-L1 FB driver is present in mainline.
Character LCD
Devices
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
Patch adding dummy parallel port driver to support this has been rejected in LKML. Need to rework based on review received. Basically means cleaning up the panel.c driver before adding new support.
RTC
Devices
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
RTC patch accepted into Linus's kernel.
Power Management
CPU Freq
Devices
DA850/OMAP-L138
Mainline
Status
Status
CPUFreq support is present in Linus's tree
To Do
Support driver notifications for all affected drivers. LCD and MMC/SD modifications are complete.
CPU Idle
Devices
DA850/OMAP-L138
Mainline
Status
Status
CPUIdle support is present in Linus's tree.
Suspend-to-RAM support
Devices
DA850/OMAP-L138
DM355
DM365
Mainline
Status
Status
Support for DA850/OMAP-L138 is present in Linus's tree
To Do
Support suspend/resume for all drivers. Support Suspend-to-RAM on DM355 and DM365
uPP (Universal Parallel Port)
Devices
DA850/OMAP-L138
Mainline
Status
Status
Need to start work on driver development
SATA
Devices
DA850/OMAP-L138
Mainline
Status
Status
SATA patches queued in linux-next. Slated to appear in v3.2 kernel
eQEP
Devices
DA830/OMAP-L137
Mainline
Status
Status
Driver available in MV Linux. Need to work on submitting patches to input subsystem mailing list.
eCAP
Devices
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
Patches to support APWM on eCAP module submitted to DaVinci mailing list and under review
HRPWM
Devices
DA830/OMAP-L137
DA850/OMAP-L138
Mainline
Status
Status
Patches to support PWM control using eHRPWM module submitted to DaVinci mailing list and under review.
Also look forward to dvsdk, dmai for git kernel
--Weijiang 23:57, 2 December 2009 (CST)