Difference between revisions of "Archived:LinuxTV Drivers"

From LinuxTVWiki
Jump to: navigation, search
(tried to structure this part...)
Line 1: Line 1:
 
''' ''please review this text and insert the information at some better places... thanks!!'' '''
 
''' ''please review this text and insert the information at some better places... thanks!!'' '''
 +
==Introduction==
 +
We host a public CVS for drivers for various DVB PCI cards. During time there were various branches and attempts to restructure the driver and DVB API. The following list gives a short overview.
 +
==The Branches in Detail==
 +
===Branche '''DVB'''===
 +
The main DVB stable driver is in the CVS module '''DVB'''. There also exists a module named "dvb-kernel" which contains the most important drivers from the DVB module repackaged for inclusion in the Linux 2.5 kernel. Then there is also an old "margi" module which has been merged into DVB.
 +
===Branche '''dvb-kernel'''===
 +
The ''main development'' work is currently being done in '''dvb-kernel''', because this is the driver that goes into the 2.5/2.6 Linux kernel. dvb-kernel can also be compiled for the Linux 2.4 kernel.
 +
dvb-kernel includes a new saa7146 driver written by Michael Hunold, which allows sharing between analog TV cards and DVB cards. He also wrote a V4L2 based driver for the Siemens-Nixdorf 'Multimedia eXtension board'
 +
(a small analog TV extension board for the Siemens-Nixdorf DVB-C ff card) which is included there. While being at it he also split the old av7110 driver into two distinct drivers for the av7110-less Budget cards, and one for the full-featured cards. Florian Schirmer contributed a driver for Bt8xx based DVB cards based on the work done by Peter Hettkamp for the Pinnacle PCTV card in the NEWSTRUCT branch.
  
 
+
===The history and older Branches===
We host a public CVS for drivers for various DVB PCI cards. During time there were various branches and attempts to restructure the driver and DVB API. The following list gives a short overview:
+
The "DVB" CVS module originally contained the driver source up to the siemens_dvb-0.9.4 release. We then decided to restructure the driver sources in order to make it easier to support different hardware without having to copy common code.<BR>Therefore the '''NEWSTRUCT''' branch was created. Around this time we also made some modifications to the frontend API.  
 
+
The main DVB driver is in the CVS module "DVB". There also exists a module named "dvb-kernel" which contains the most important drivers from the DVB module repackaged for inclusion in the Linux 2.5 kernel. Then there is also an old "margi" module which has been merged into DVB.
+
 
+
dvb-kernel includes a new saa7146 driver written by Michael Hunold, which allows sharing between analog TV cards and DVB cards. He also wrote a V4L2 based driver for the Siemens-Nixdorf 'Multimedia eXtension board' which is included there. While being at it he also split the old av7110 driver into two distinct drivers for the av7110-less Budget cards, and one for the full-featured cards. Florian Schirmer contributed a driver for Bt8xx based DVB cards based on the work done by Peter Hettkamp for the Pinnacle PCTV card in the NEWSTRUCT branch.
+
 
+
The main development work is currently being done in dvb-kernel, because this is the driver that goes into the 2.5/2.6 Linux kernel. dvb-kernel can also be compiled for the Linux 2.4 kernel.
+
 
+
The "DVB" CVS module originally contained the driver source up to the siemens_dvb-0.9.4 release. We then decided to restructure the driver sources in order to make it easier to support different hardware without having to copy common code. Therefor the NEWSTRUCT branch was created. Around this time we also made some modifications to the frontend API.  
+
 
+
 
Later, when NEWSTRUCT was deemed stable enough, it was merged into the trunk of the CVS version tree ("HEAD"). Development on NEWSTRUCT was then abandoned.  
 
Later, when NEWSTRUCT was deemed stable enough, it was merged into the trunk of the CVS version tree ("HEAD"). Development on NEWSTRUCT was then abandoned.  
  
Before we sent the DVB driver to Alan Cox for inclusion in the Linux 2.5 kernel, we decided to clean up some inconsistencies in the naming of various types in the API header files. This was done in both dvb-kernel and DVB. include/linux/dvb/version.h now defines DVB_API_VERSION == 3.
+
Before we sent the DVB driver to Alan Cox for inclusion in the Linux 2.5 kernel, we decided to clean up some inconsistencies in the naming of various types in the API header files. This was done in both dvb-kernel and DVB. <pre>include/linux/dvb/version.h</pre> now defines <pre>DVB_API_VERSION == 3</pre>
  
 +
==Actual used Branches==
 
All in all, today there are now several relevant CVS lines:  
 
All in all, today there are now several relevant CVS lines:  
  
DVB:          Stable driver for 2.4 kernel users.
+
:*'''DVB''':          Stable driver for 2.4 kernel users.
dvb-kernel:    Current development driver.
+
:*'''dvb-kernel''':    Current development driver.
dvb-apps:      The standalone package of test utilities.
+
:*'''dvb-apps''':      The standalone package of test utilities.
dvb-kernel-v4: The upcoming v4 API implementation.
+
:*'''dvb-kernel-v4''': The upcoming v4 API implementation.
  
 
There may still some bits and pieces in both the NEWSTRUCT branch and the old DVB line from a year-or-so ago, which are missing from current DVB or dvb-kernel. Also, some drivers from DVB must be ported to dvb-kernel at some time.
 
There may still some bits and pieces in both the NEWSTRUCT branch and the old DVB line from a year-or-so ago, which are missing from current DVB or dvb-kernel. Also, some drivers from DVB must be ported to dvb-kernel at some time.

Revision as of 11:02, 25 September 2004

please review this text and insert the information at some better places... thanks!!

Introduction

We host a public CVS for drivers for various DVB PCI cards. During time there were various branches and attempts to restructure the driver and DVB API. The following list gives a short overview.

The Branches in Detail

Branche DVB

The main DVB stable driver is in the CVS module DVB. There also exists a module named "dvb-kernel" which contains the most important drivers from the DVB module repackaged for inclusion in the Linux 2.5 kernel. Then there is also an old "margi" module which has been merged into DVB.

Branche dvb-kernel

The main development work is currently being done in dvb-kernel, because this is the driver that goes into the 2.5/2.6 Linux kernel. dvb-kernel can also be compiled for the Linux 2.4 kernel. dvb-kernel includes a new saa7146 driver written by Michael Hunold, which allows sharing between analog TV cards and DVB cards. He also wrote a V4L2 based driver for the Siemens-Nixdorf 'Multimedia eXtension board' (a small analog TV extension board for the Siemens-Nixdorf DVB-C ff card) which is included there. While being at it he also split the old av7110 driver into two distinct drivers for the av7110-less Budget cards, and one for the full-featured cards. Florian Schirmer contributed a driver for Bt8xx based DVB cards based on the work done by Peter Hettkamp for the Pinnacle PCTV card in the NEWSTRUCT branch.

The history and older Branches

The "DVB" CVS module originally contained the driver source up to the siemens_dvb-0.9.4 release. We then decided to restructure the driver sources in order to make it easier to support different hardware without having to copy common code.
Therefore the NEWSTRUCT branch was created. Around this time we also made some modifications to the frontend API. Later, when NEWSTRUCT was deemed stable enough, it was merged into the trunk of the CVS version tree ("HEAD"). Development on NEWSTRUCT was then abandoned.

Before we sent the DVB driver to Alan Cox for inclusion in the Linux 2.5 kernel, we decided to clean up some inconsistencies in the naming of various types in the API header files. This was done in both dvb-kernel and DVB.
include/linux/dvb/version.h
now defines
DVB_API_VERSION == 3

Actual used Branches

All in all, today there are now several relevant CVS lines:

  • DVB: Stable driver for 2.4 kernel users.
  • dvb-kernel: Current development driver.
  • dvb-apps: The standalone package of test utilities.
  • dvb-kernel-v4: The upcoming v4 API implementation.

There may still some bits and pieces in both the NEWSTRUCT branch and the old DVB line from a year-or-so ago, which are missing from current DVB or dvb-kernel. Also, some drivers from DVB must be ported to dvb-kernel at some time.