<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://linuxdriverproject.org/mediawiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://linuxdriverproject.org/mediawiki/api.php?action=feedcontributions&amp;user=Tomasz+Grzegurzko&amp;feedformat=atom</id>
		<title>Linux Driver Project - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://linuxdriverproject.org/mediawiki/api.php?action=feedcontributions&amp;user=Tomasz+Grzegurzko&amp;feedformat=atom"/>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Special:Contributions/Tomasz_Grzegurzko"/>
		<updated>2013-05-24T02:39:59Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.20.5</generator>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/User:Josheratkins</id>
		<title>User:Josheratkins</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/User:Josheratkins"/>
				<updated>2012-05-07T22:56:32Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Links to non-relevant external sites.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/User:Tomasz_Grzegurzko</id>
		<title>User:Tomasz Grzegurzko</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/User:Tomasz_Grzegurzko"/>
				<updated>2012-05-07T07:26:20Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* The administrator of the linuxdriverproject.org web and related services. To report problems, please send me an email &amp;lt;email&amp;gt;tomasz89@gmail.com&amp;lt;/email&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Linux_Driver_Project:About</id>
		<title>Linux Driver Project:About</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Linux_Driver_Project:About"/>
				<updated>2012-05-07T07:25:02Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
For any problems with the mailing lists, wiki or web site, please send an email to [[User:Tomasz Grzegurzko|the administrator]].&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-07T07:16:13Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the Wiki for The Linux Driver Project.&lt;br /&gt;
&lt;br /&gt;
This group is focused on creating and maintaining [[Open Source]] Linux kernel drivers for all types of devices, and maintaining community information on developments around devices. If you had previously registered in the [http://linuxdriverproject.org/legacy/foswiki old wiki], you will need to create a new account.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the [[Company Process]] page.&lt;br /&gt;
&lt;br /&gt;
If you are a developer, consider joining the [[Mailing Lists]] or creating an account in the Wiki and aiding in the documentation effort.&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of [[Frequently Asked Questions]] that you might wish to peruse before asking them to the developers or on the [[Mailing Lists]].&lt;br /&gt;
&lt;br /&gt;
== Mailing Lists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the [[Mailing Lists]] page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the [[Project Status]] page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of [[Out Of Tree Drivers]], that could be cleaned up and added to the main Linux kernel tree, and one list of [[Drivers Needed]] for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by [[User:GregKH|GregKH]], and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact [[User:GregKH|GregKH]].&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Linux_Driver_Project:About</id>
		<title>Linux Driver Project:About</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Linux_Driver_Project:About"/>
				<updated>2012-05-07T07:14:39Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, d...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-07T05:24:32Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the Wiki for The Linux Driver Project.&lt;br /&gt;
&lt;br /&gt;
This group is focused on creating and maintaining [[Open Source]] Linux kernel drivers for all types of devices, and maintaining community information on developments around devices. If you had previously registered in the [http://linuxdriverproject.org/legacy/foswiki old wiki], you will need to create a new account.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the [[Company Process]] page.&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of [[Frequently Asked Questions]] that you might wish to peruse before asking them to the developers or on the [[Mailing Lists]].&lt;br /&gt;
&lt;br /&gt;
== Mailing Lists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the [[Mailing Lists]] page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the [[Project Status]] page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of [[Out Of Tree Drivers]], that could be cleaned up and added to the main Linux kernel tree, and one list of [[Drivers Needed]] for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by [[User:GregKH|GregKH]], and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact [[User:GregKH|GregKH]].&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-07T04:34:14Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the Wiki for The Linux Driver Project.&lt;br /&gt;
&lt;br /&gt;
This group is focused on creating and maintaining [[Open Source]] Linux kernel drivers for all types of devices, and maintaining community information on developments around devices. If you had previously registered in the [http://linuxdriverproject.org/foswiki old wiki], you will need to create a new account.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the [[Company Process]] page.&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of [[Frequently Asked Questions]] that you might wish to peruse before asking them to the developers or on the [[Mailing Lists]].&lt;br /&gt;
&lt;br /&gt;
== Mailing Lists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the [[Mailing Lists]] page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the [[Project Status]] page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of [[Out Of Tree Drivers]], that could be cleaned up and added to the main Linux kernel tree, and one list of [[Drivers Needed]] for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by [[User:GregKH|GregKH]], and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact [[User:GregKH|GregKH]].&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Help:Editing</id>
		<title>Help:Editing</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Help:Editing"/>
				<updated>2012-05-07T04:25:04Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Please see http://meta.wikimedia.org/wiki/Help:Editing&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Help:Editing</id>
		<title>Help:Editing</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Help:Editing"/>
				<updated>2012-05-07T04:24:29Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;#REDIRECT [http://meta.wikimedia.org/wiki/Help:Editing]&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [http://meta.wikimedia.org/wiki/Help:Editing]&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/User:Tomasz_Grzegurzko</id>
		<title>User:Tomasz Grzegurzko</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/User:Tomasz_Grzegurzko"/>
				<updated>2012-05-07T04:14:54Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;* I am the administrator of the linuxdriverproject.org web and related services. * To report problems, please send me an email &amp;lt;email&amp;gt;tomasz89@gmail.com&amp;lt;/email&amp;gt;.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* I am the administrator of the linuxdriverproject.org web and related services.&lt;br /&gt;
* To report problems, please send me an email &amp;lt;email&amp;gt;tomasz89@gmail.com&amp;lt;/email&amp;gt;.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-07T04:03:44Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Linux Driver Project is focused on creating and maintaining [[Open Source]] Linux kernel drivers for all types of devices.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the [[Company Process]] page.&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of [[Frequently Asked Questions]] that you might wish to peruse before asking them to the developers or on the [[Mailing Lists]].&lt;br /&gt;
&lt;br /&gt;
== Mailing Lists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the [[Mailing Lists]] page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the [[Project Status]] page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of [[Out Of Tree Drivers]], that could be cleaned up and added to the main Linux kernel tree, and one list of [[Drivers Needed]] for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by [[User:GregKH|GregKH]], and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact [[User:GregKH|GregKH]].&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/No_Linux_Driver_Needed</id>
		<title>No Linux Driver Needed</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/No_Linux_Driver_Needed"/>
				<updated>2012-05-07T04:02:58Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;Not all devices need a Linux kernel driver in order to work properly.  The following is a list of some of these types of devices.  == USB devices ==  Most of these should not ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Not all devices need a Linux kernel driver in order to work properly.  The following is a list of some of these types of devices.&lt;br /&gt;
&lt;br /&gt;
== USB devices ==&lt;br /&gt;
&lt;br /&gt;
Most of these should not need in-kernel drivers beyond those that already exist.  Userspace can access USB devices via [http://libusb.sourceforge.net libusb], or soon via [http://wiki.cs.pdx.edu/usb/usbfs2.html usbfs2].&lt;br /&gt;
&lt;br /&gt;
=== USB Scanners ===&lt;br /&gt;
&lt;br /&gt;
These devices use [http://libusb.sourceforge.net libusb] and the [http://www.xsane.org xsane] project to access the device properly.  Please contact that project if you need new devices supported.&lt;br /&gt;
&lt;br /&gt;
=== USB Digital Cameras ===&lt;br /&gt;
&lt;br /&gt;
For digital cameras, first check if the camera shows up as a mass storage device; if not, see [http://www.gphoto.org/ gphoto].&lt;br /&gt;
&lt;br /&gt;
=== USB Media Players (music, video) ===&lt;br /&gt;
&lt;br /&gt;
If the device shows up as a mass storage device, then either it finds media automatically (no driver needed) or it needs a magic media index built (userspace support needed only).  If the device does not show up as a mass storage device, it can have a driver written in userspace (no kernel driver needed, often using [http://libusb.sourceforge.net libusb]). Such userspace drivers exist for e.g MTP devices (see [http://libmtp.sourceforge.net libmtp]), NOMAD devices ([http://libnjb.sourceforge.net/ libnjb]).&lt;br /&gt;
&lt;br /&gt;
=== Mobile Phones ===&lt;br /&gt;
&lt;br /&gt;
Mobile phones can typically present several types of interfaces, sometimes all at once. They are all already supported through kernel drivers or userspace libraries.&lt;br /&gt;
&lt;br /&gt;
==== Mass storage interface ====&lt;br /&gt;
&lt;br /&gt;
Kernel driver available, but occasionally device quirks need to be specified for new phones.&lt;br /&gt;
&lt;br /&gt;
==== CDC ACM Modem ====&lt;br /&gt;
&lt;br /&gt;
Supported by cdc_acm kernel driver.&lt;br /&gt;
&lt;br /&gt;
==== OBEX filetransfer interface ====&lt;br /&gt;
&lt;br /&gt;
Supported through [http://www.openobex.org libopenobex] (which is using libusb) and various frontends to that library.&lt;br /&gt;
&lt;br /&gt;
==== OBEX SyncML interface ====&lt;br /&gt;
&lt;br /&gt;
Supported through [http://www.opensync.org OpenSync] and libsyncml library that it includes (that in turn is using libopenobex).&lt;br /&gt;
&lt;br /&gt;
==== Nokia FBUS interface also known as DKU2 interface ====&lt;br /&gt;
&lt;br /&gt;
Supported by [http://www.gnokii.org] through libusb.&lt;br /&gt;
&lt;br /&gt;
==== Generic serial interfaces ====&lt;br /&gt;
&lt;br /&gt;
Supported by kernel drivers.&lt;br /&gt;
&lt;br /&gt;
==== Windows Mobile RNDIS interface ====&lt;br /&gt;
&lt;br /&gt;
Supported via rndis_host driver. Check [http://www.synce.org/index.php/Connecting_your_Windows_Mobile_2005_device_via_USB_(usb-rndis-lite) this] and [http://ohioloco.ubuntuforums.org/showpost.php?p=3588717&amp;amp;postcount=54 this].&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
&lt;br /&gt;
All Linux printer drivers are done in userspace.  Contact the [http://www.linuxprinting.org Linux Printing Project] if you have a printer that you wish to get properly supported under Linux.&lt;br /&gt;
&lt;br /&gt;
== Video Cards ==&lt;br /&gt;
&lt;br /&gt;
A number of video cards are directly supported by the [http://www.x.org x.org] project and do not need a kernel driver.  However, for some newer devices, to get properly 3d graphics support, a kernel driver is needed to help out the X side.   We will be glad to help out with the kernel driver for projects like this if needed.&lt;br /&gt;
&lt;br /&gt;
== GPS ==&lt;br /&gt;
&lt;br /&gt;
For GPS devices, see [http://gpsd.berlios.de/ gpsd]&lt;br /&gt;
&lt;br /&gt;
== Fingerprint Readers ==&lt;br /&gt;
&lt;br /&gt;
These are the same as scanners mentioned above, kernel drivers are not needed. The [http://www.reactivated.net/fprint/wiki/ fprint project] supports a lot of fingerprint scanners found in consumer devices.&lt;br /&gt;
&lt;br /&gt;
== Spectrometers and Colorimeters ==&lt;br /&gt;
&lt;br /&gt;
These devices are used for colour calibration and profiling. A number of them are supported via the [http://www.argyllcms.com Argyll CMS project] and don't need a kernel driver.&lt;br /&gt;
&lt;br /&gt;
== Winmodem devices ==&lt;br /&gt;
&lt;br /&gt;
The large majority of these devices are already supported by the ALSA modem drivers, and should work just fine in the latest version of your favorite Linux distribution.&lt;br /&gt;
&lt;br /&gt;
== FireWire Audio devices ==&lt;br /&gt;
&lt;br /&gt;
FireWire Audio devices are handled in userspace; see the [http://www.ffado.org/ FFADO project].&lt;br /&gt;
&lt;br /&gt;
== Uninterruptible Power Supplies (UPS) ==&lt;br /&gt;
&lt;br /&gt;
These devices, whatever the bus used (serial, USB, network), use [http://www.networkupstools.org Network UPS Tools] project to access the device properly.  Please contact that project if you need new devices supported.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Windows_Mobile</id>
		<title>Windows Mobile</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Windows_Mobile"/>
				<updated>2012-05-07T03:59:45Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;* USB support for Windows Mobile 6 Internet Sharing - Please read before deleting AGAIN.  Windows Mobile 6 introduced a NEW method of internet sharing using PAND networking.  ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* USB support for Windows Mobile 6 Internet Sharing - Please read before deleting AGAIN.  Windows Mobile 6 introduced a NEW method of internet sharing using PAND networking.  Linux currently supports this method using Bluetooth.  It does '''NOT''' in any way shape or form support PAND via USB and that is what is being requested.  The old method of bluetooth and USB DUN worked in Windows Mobile 5 but does NOT work in Windows Mobile 6.&lt;br /&gt;
** Where are the references to support your claim? Why does this require a new kernel driver? Accessing the internet via USB with WM6 devices is supported by rndis_host kernel driver, as confirmed by SyncE developer [http://ohioloco.ubuntuforums.org/showpost.php?p=3588717&amp;amp;postcount=54 here]. You can find the instructions for setting up USB connection for example [http://forum.ubuntu-fr.org/viewtopic.php?id=88530 here] - in French, but you can get an idea.&lt;br /&gt;
*** I stand corrected.  Following the SyncE developer's instructions allowed me to connect via USB to internet sharing.  It only worked using the SVN version and not the module on sourceforge. Thank you for the info.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
--&lt;br /&gt;
ohci_hcd 0000:02:02.0: wakeup&lt;br /&gt;
usb 3-2: new full speed USB device using ohci_hcd and address 121&lt;br /&gt;
usb 3-2: new device found, idVendor=0bb4, idProduct=0303&lt;br /&gt;
usb 3-2: new device strings: Mfr=1, Product=2, SerialNumber=3&lt;br /&gt;
usb 3-2: Product: Generic RNDIS&lt;br /&gt;
usb 3-2: Manufacturer: HTC&lt;br /&gt;
usb 3-2: SerialNumber: ###############&lt;br /&gt;
usb 3-2: configuration #1 chosen from 1 choice&lt;br /&gt;
rndis0: register 'rndis_host' at usb-0000:02:02.0-2, RNDIS device, XX:XX:XX:XX:XX:XX&lt;br /&gt;
--&lt;br /&gt;
rndis0    Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX&lt;br /&gt;
          inet addr:192.168.0.102  Bcast:192.168.0.255  Mask:255.255.255.0&lt;br /&gt;
          inet6 addr: 2002:d036:7557:10:8200:60ff:fe0f:e800/64 Scope:Global&lt;br /&gt;
          inet6 addr: fec0::10:8200:60ff:fe0f:e800/64 Scope:Site&lt;br /&gt;
          inet6 addr: fe80::8200:60ff:fe0f:e800/64 Scope:Link&lt;br /&gt;
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1460  Metric:1&lt;br /&gt;
          RX packets:10884 errors:10759 dropped:0 overruns:0 frame:0&lt;br /&gt;
          TX packets:8178 errors:0 dropped:0 overruns:0 carrier:0&lt;br /&gt;
          collisions:0 txqueuelen:1000&lt;br /&gt;
          RX bytes:13692482 (13.0 Mb)  TX bytes:1147593 (1.0 Mb)&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Drivers_Needed</id>
		<title>Drivers Needed</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Drivers_Needed"/>
				<updated>2012-05-07T03:57:55Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;&amp;lt;span style=&amp;quot;color:#ff0000&amp;quot;&amp;gt;This is a list of hardware that does not have support on Linux and needs kernel drivers written for them.&amp;lt;/span&amp;gt;  Note, some types of [[No Linux Dr...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;span style=&amp;quot;color:#ff0000&amp;quot;&amp;gt;This is a list of hardware that does not have support on Linux and needs kernel drivers written for them.&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note, some types of [[No Linux Driver Needed|devices do not need Linux kernel drivers]], so please consult that list first and do not include them here.&lt;br /&gt;
&lt;br /&gt;
'''If the device you are concerned about already works in Linux, but not as well as you would like it to, or with reduced functionality, please do not list it here.''' Instead, contact the author of the driver and work with them to fix the problem or add the new features. [http://bugzilla.kernel.org/ bugzilla.kernel.org] is the proper place to report such bugs and feature requests for existing drivers.&lt;br /&gt;
&lt;br /&gt;
If the device you are concerned about only works with a proprietary driver, that does not count as proper Linux support; please list it here, and note the existence of the proprietary driver as it may provide useful resources for writing a Free Software driver. This includes network cards only supported by ndiswrapper and a Windows driver.&lt;br /&gt;
&lt;br /&gt;
Try to keep these devices sorted by type and possibly manufacturer. The developers of the Linux Driver Project will use this list to contact the companies involved to try to create Linux drivers for them.&lt;br /&gt;
&lt;br /&gt;
If there are devices with already created drivers, but the drivers are not in the kernel tree, please add them to the OutOfTreeDrivers page, do not put them on this page.&lt;br /&gt;
&lt;br /&gt;
Wherever possible, please give the device product and vendor ids (for PCI and USB devices) as well as the full name the manufacturer uses.&lt;br /&gt;
&lt;br /&gt;
If you do not wish to create a wiki account, just to edit this list, feel free to email [[User:GregKH|GregKH]] your requests, or send them to [[Developers]] [[Mailing Lists]].&lt;br /&gt;
&lt;br /&gt;
== Storage devices ==&lt;br /&gt;
=== SCSI controllers ===&lt;br /&gt;
* Adaptec SCSI Controllers with HostRAID - HostRaid kernel module (a320raid) is closed source. Seems that there is no linux distro which supports system installation on HostRaid raid volumes. Dmraid has limited support for hostraid now. I read that dmraid was part of SLES10SP1 but I failed installation on machines with HostRaid.&lt;br /&gt;
&lt;br /&gt;
=== SATA controllers ===&lt;br /&gt;
* Marvell 88SE6111 (found in Asus P5K SE for example). There's some code written by Marvell available for download from Asus' support page, although I'm not sure about the license.&lt;br /&gt;
* Marvell 6141, made by Marvell Technology Group Ltd.&lt;br /&gt;
* Initio 162x. Half-working driver (sata_inic162x) exists but virtually useless (LBA48 doesn't work). More info from the vendor required.&lt;br /&gt;
* Promise RAID controllers http://www.promise.com/support/support_eng.asp&lt;br /&gt;
* ALL Highpoint RocketRAID controllers(except RR3xxx/4xxx supported by driver/scsi/hptiop.c) only have binary vendor drivers, which include raid1.o raid5.o etc. for fakeraid support. Highpoint labels them Open Source, but '''MODULE_LICENSE''' is &amp;lt;span style=&amp;quot;color:#ff0000&amp;quot;&amp;gt;Proprietary&amp;lt;/span&amp;gt; (see http://www.highpoint-tech.com/USA/bios.htm)&lt;br /&gt;
* [http://linux-ata.org/driver-status.html Serial ATA (SATA) Linux hardware/driver status report] lists cards that have drivers.&lt;br /&gt;
&lt;br /&gt;
=== USB Storage Devices ===&lt;br /&gt;
* Kingston DataTraveler Secure (AES encrypted USB flash device)&lt;br /&gt;
* LG Cosmo cell phone (the one sold at Brazil). It should work as a Mass Storage Device, however, current kernel driver does not work.&lt;br /&gt;
&lt;br /&gt;
=== Flash media readers ===&lt;br /&gt;
* O2 OZ711Mx controller 1217:7110, by o2 Micro, a card reader for MMC/SD/MemoryStick(Pro), [http://mmc.drzeus.cx/wiki/Controllers/O2/OZ711Mx more info (page no longer available)]&lt;br /&gt;
* Toshiba TypA SD controllers (PCI ID 1179:0805) - not SDHCI compatible.&lt;br /&gt;
* TIFM controllers for XD and Smartmedia - Memory Stick support exists in Subversion and seems to work (provides a generic Memory Stick class for drivers to hook into) (MMC/SD functionality is believed to work while is generally faulty)&lt;br /&gt;
* Ricoh R5C843 xD/memorystick support (PC Card and SD currently working).&lt;br /&gt;
* Ricoh R5C576 SD Bus Host Adapter&lt;br /&gt;
* Ricoh R5C592 Memory Stick Bus Host Adapter&lt;br /&gt;
* Rioch Co Ltd xD-Picture Card Controller (rev 05).&lt;br /&gt;
* ENE CB710 - multi card reader, no driver available.&lt;br /&gt;
* ENE Technology Inc. - multi card reader, no driver available, for Acer Aspire Laptops.&lt;br /&gt;
=== Turbo memory controllers ===&lt;br /&gt;
* Intel turbo memory controller - Drivers not available. Intel refuses to release specs.&lt;br /&gt;
&lt;br /&gt;
=== External NAS/RAID storage devices ===&lt;br /&gt;
These &amp;quot;should&amp;quot; not need kernel drivers, but there are some exceptions: &lt;br /&gt;
* Raw NAS storage like the Netgear SC 101. This performs adequately on some Windows systems, and very poorly on others, for reasons which are not obvious. The protocol is proprietary, and some details of the hardware, such as the CPU, are undocumented, so a firmware solution may not be possible. The protocol may be capable of reverse engineering, but it would be better if the manufacturer would do something about it. See also: http://code.google.com/p/sc101-nbd/&lt;br /&gt;
* [https://secure.wikimedia.org/wikipedia/en/wiki/Network_Direct_Attached_Storage Network Direct Attached Storage]. There is a proprietary driver at http://code.ximeta.com/&lt;br /&gt;
&lt;br /&gt;
== Video for Linux devices (Input) ==&lt;br /&gt;
To reduce the amount of duplicates, please use [http://webcam-osx.sf.net/cameras/index.php this page] for information about the chipset/controller in your webcam.&lt;br /&gt;
&lt;br /&gt;
* [http://ati.amd.com/products/theater650pro/index.html/ ATI Theater\x{2122} 650 PRO] - TV Tuner - ven_1002 / dev_4d50 - see ATITheater650Pro - Out Since 2006&lt;br /&gt;
* [http://ati.amd.com/products/tvwonder650/PCI/index.html/ ATI TV Wonder 650] - TV Tuner&lt;br /&gt;
* [http://ati.amd.com/products/tvwonderelite/features.html ATI TV Wonder Elite; 550 Pro] - TV/FM Tuner&lt;br /&gt;
* [http://ati.amd.com/products/tvwonderproremote/index.html ATI TV-Wonder Pro and Remote Control Support] - I think this is the 550 chipset, but I'm not too sure.&lt;br /&gt;
* [http://ati.amd.com/products/tvwonderdigital/index.html ATI TV-Wonder Digital Cable Tuner] with CableCard support.&lt;br /&gt;
* The new AMD/ATI HD capture cards listed in http://magicboxlive.blogspot.com/2007/10/amd-new-tuner-products-to-deliver-hdtv.html&lt;br /&gt;
* ATI All-In-Wonder (ex. 9700 Pro, X800 XT) Video Card TV-Tuner Support (better support for DVR programs like mythTV)&lt;br /&gt;
* [http://www.ali.com.tw/eng/about/index.htm ALi] M560x chipset webcams, as shipped in some Asus and Clevo laptops, plus many standalone webcams from Creative (e.g. [http://us.creative.com/products/product.asp?category=218&amp;amp;subcategory=219&amp;amp;product=14813 Live! Cam Voice] and [http://us.creative.com/products/product.asp?category=218&amp;amp;subcategory=219&amp;amp;product=15442 Video IM Pro]). Some progress has been made at https://sf.net/projects/m560x-driver/&lt;br /&gt;
* Anysee E30 C Plus USB2.0 DVB-C Receiver with Conax card reader. http://www.anysee.com/eng/product/anyseeE30CPlus.php&lt;br /&gt;
* ASUSTeK TV7162, Hybrid Capture Device. lspci: Multimedia controller: Philips Semiconductors Unknown device 7162 (rev 01) - Subsystem: ASUSTeK Computer Inc. Unknown device 4872, found in Fujitsu Siemens, Scaleo E Mediacenter PC.&lt;br /&gt;
* AVerMedia Hybrid TV card M115S (1461:e836, MiniPCI card on SONY VAIO VGN-AR21MR,SONY VAIO VGC-LA1)&lt;br /&gt;
* AverMedia AverTV USB2.0 (model M033) tv tuner/video&amp;amp;audio input device. I believe this is based on the DC1100 video chip, which may sometime be supported by http://syntekdriver.sf.net/ if the project gets somewhere.&lt;br /&gt;
* AVerMedia AVerTV USB2.0 PLUS (model M036)&lt;br /&gt;
* AVerMedia USB2.0 DVB-T A310 Minicard. Based on the Intel CE9500 DVB-T reference design. Contains a Intel CE6230 DVB-T Tuner and a MaxLinear MXL5003F Receiver Chip. Other USB Receivers based on this Design exist. At least one from GoldenBrigde.&lt;br /&gt;
* AVerMedia AVerTV Hybrid Volar, USB2.0 dongle - official drivers: http://www.avermedia.com/images/www.avermedia.com_EN/driver_linuxA828_x86.html - DVB works fine, analog TV doesn't. Audio is ok, but picture is pretty bad (TVtime). It feels like there is much less frames per second then it should be.&lt;br /&gt;
* AVerMedia AVerTV Hybrid NanoExpress. ExpressCard formfactor. Very NEW,compact tuner. Based on NXP TDA18271, NXP SAA7136E and DVB-T COFDM Intel WJCE6353. AVerMedia representatives said that they will NEVER ever think about creating linux drivers for it. Kernel 2.6.27rc6 saw some part of it, nothing works at all.&lt;br /&gt;
* AVerMedia AVerTV cardbus Plus (E501R) PCMCIA - Radio doesn't work, because i2c addresses aren't standard or used multiple times. Depending on which chip is enabled at that time.&lt;br /&gt;
* AVerMedia AVerTV Combo PCIe M780 - combines a digital ATSC tuner and a analog tuner in an inexpensive PCIe 1x low profile card. It apparently uses an nGene chip which is not yet supported.&lt;br /&gt;
* AVerMedia AVerTV USB MCE (M038), 07ca:1228, [http://www.avermedia.com/AVerTV/Product/ProductDetail.aspx?Id=45 product page at AVerMedia.com]&lt;br /&gt;
* [http://www.e3ctech.com/products.html e3C Inc EC168] based USB DVB-T receivers, for example [http://www.teknikmagasinet.se/nydb/db.pl?template_file=link_product.html&amp;amp;link=Produktsok&amp;amp;artnr=480315 this one from .ZAP] with USB ID 18b4:fffb (shows up as HID device, should be more there).&lt;br /&gt;
* Genius Look 320s webcam [http://www.geniusnet.co.uk/geniusOnline/online.portal?_nfpb=true&amp;amp;productPortlet_actionOverride=%2Fportlets%2FproductArea%2Fcategory%2FqueryPro&amp;amp;_windowLabel=productPortlet&amp;amp;productPortletproductId=488880&amp;amp;_pageLabel=productPage&amp;amp;test=portlet-action# link]&lt;br /&gt;
* Genius Slim 321c webcam [http://osdir.com/ml/macosx.macam.devel/2006-07/msg00031.html link]&lt;br /&gt;
* Logitech Trash.MainQuickCam Sphere MP&lt;br /&gt;
* Leadtek WinFast TV 2000/XP (rm)&lt;br /&gt;
* Leadtek WinFast TV USB2 Deluxe&lt;br /&gt;
* HP Pavilion Webcam for the dv2000 series HP laptops&lt;br /&gt;
* Hercules Trash.MainWebCam Deluxe&lt;br /&gt;
* Trust Sp@cecam 320&lt;br /&gt;
* Trust webcam (04f2:a128), www.trust.com/14921&lt;br /&gt;
* Webcam Genesys Logic: ID 05e3:0503 [http://www.genesyslogic.com/_en/product_01_1.php?id=40 link]&lt;br /&gt;
* There is a project to provide drivers for these Microdia webcams (0c45:xxxx and others) [http://groups.google.com/group/microdia/ here]&lt;br /&gt;
** Microdia webcam (0c45:608f), made by Dr. Hank (VC-R035-CD2B).&lt;br /&gt;
** Microdia webcam (0c45:624f), made by Microdia, found in Lenovo 3000 N100 0768-A2U.&lt;br /&gt;
** Microdia webcam (0c45:6260), made by Microdia, found in some Acer Aspire models.&lt;br /&gt;
** Microdia webcam (0c45:627b), made by Microdia, found in Thinkpad Z61t, Frontech e-cam model JIL-2217 [http://www.frontechonline.com/webcam.php?atype=webcam&amp;amp;&amp;amp;model=e-Cam%20(1.3%20MP)&amp;amp;&amp;amp;jilcode=2217 link] Basically rebranded Sonix PC webcams with VGA Sensor SN9C201 + OV7660 chips [http://rsuinux.free.fr/luxya/img-2.jpg link].&lt;br /&gt;
** Microdia webcam (0c45:60c0), made by Microdia, found in MSI StarCam Clip.Works with modified driver out of box. http://pamplast.com/gspca/&lt;br /&gt;
** Microdia webcam (0c45:8105), made by CyClops sold as a &amp;quot;CyClops DR100&amp;quot;&lt;br /&gt;
** Microdia webcam (0c45:6270), made by Microdia, sold separately as a generic 1.3MP webcam. [http://global.msi.com.tw/index.php?func=proddesc&amp;amp;prod_no=632&amp;amp;maincat_no=132&amp;amp;cat2_no=262 link]&lt;br /&gt;
** Sonix webcam chipset Trash.MainSN9C201 (chipset in the Microdia webcams above) and SN9C202. There is a closed-source driver [http://www.linux-projects.org/modules/mydownloads/viewcat.php?cid=7 here]&lt;br /&gt;
** Microdia webcam (0c45:613b). Branded as Fujitsu Siemens Computers, Webcam USB, Model No: DLV-B16. [http://www.fujitsu-siemens.com/home/products/accessories/multimedia/webcam_usb.html Product page] Now works with sn9c102, 2.6.27 (Mandriva 2009)&lt;br /&gt;
** Microdia webcam (0c45:6242), sold as [http://www.bigpockets.co.uk/product.php?product_id=23445 Sumvision Web Camera Panther GT 4MP] (link no longer available)&lt;br /&gt;
* Creative Webcam Live! Ultra: there appears to have been [http://gkall.hobby.nl/sq930x.html some work] on making this hardware work already.&lt;br /&gt;
* Creative Live! Cam Video IM Pro ( a similar model without the &amp;quot;Pro&amp;quot; is supported but this has a different chipset) Details on camera can be found here: [http://www.qbik.ch/usb/devices/showdev.php?id=3970] This camera uses the ALi M560x chipset, reported above.&lt;br /&gt;
* [http://www.ieiworld.com/en/product_IPC.asp?model=PM-1059 IEI Tech. PM-1059] MPEG-4 Audio/Video PC-104+ capture module&lt;br /&gt;
* Twinhan model 1027 DVB-S card. Twinhan supposedly released drivers that compile against an old kernel version. They probably need to be ported to the new DVB driver API. Links: &lt;br /&gt;
** http://www.linuxtv.org/pipermail/linux-dvb/2007-May/017916.html&lt;br /&gt;
** http://www.al7bar.tk/Forums/showthread.php?t=206806&lt;br /&gt;
** http://www.mail-archive.com/linux-dvb@linuxtv.org/msg22823.html&lt;br /&gt;
* Twinhan model 7045A DVB card. Twinhan has released windows drivers and also a hardware spec for it. The code to make it work already is in the DVB-T tree, somebody &amp;quot;just&amp;quot; needs to glue the TDA10046 frontend to the existing VP7045 backend code. Links: &lt;br /&gt;
** http://www.linuxtv.org/pipermail/linux-dvb/2006-November/014202.html&lt;br /&gt;
** http://www.flamingspork.com/blog/2006/09/05/twinhan-usb-dtv-dongle-not-working/&lt;br /&gt;
* TerraTec Cinergy 2400i DVB-T card. This is a PCIe dual tuner card, which (just like all other known PCIe DVB cards currently on the market) does not have any Linux drivers yet. Links: &lt;br /&gt;
** http://www.linuxtv.org/wiki/index.php/TerraTec_Cinergy_2400i_DVB-T&lt;br /&gt;
** http://www.linuxtv.org/wiki/index.php/DVB-T_PCIe_Cards&lt;br /&gt;
* TerraTec Cinergy T USB XE DVB-T card. This is a USB digital tuner, with ID 0ccd:0069. This is version number 2 of this tuner, and it uses chip AF9015. Version number 1, ID 0ccd:0055, uses chip AF9005 and works under Linux&lt;br /&gt;
* Haupauge HVR-900h DVB/analogue usb tuner with ID 2040:6600 (v4l, tm6010 never completed) -- Main.JanSimonMoeller - 02 Dec 2009&lt;br /&gt;
* Hauppauge has not released Linux drivers for their HDTV video capture devices, such as [http://www.hauppauge.com/pages/support/support_hvr950.html WinTV-HVR-950] and [http://www.hauppauge.com/pages/support/support_hvr1600.html WinTV-HVR-1600] &lt;br /&gt;
** There is a Linux driver for the HVR-950, but there are issues getting it merged. You can try my http://www.makomk.com/hg/v4l-dvb-makomk driver (more mergable, less tested) or Markus' http://mcentral.de/hg/~mrec/v4l-dvb-experimental/ (more tested, but totally unmergable - please only use it if you have issues with v4l-dvb-makomk) -- Main.AidanThornton - 28 Oct 2007&lt;br /&gt;
* Hauppauge Wintv pvr usb.This card is an external tuner card that has a mpeg2 encoder inside...drivers only exist for the 2.4 kernel http://pvrusb.sf.net/&lt;br /&gt;
* Logitech Quickcam Notebook&lt;br /&gt;
* Terratec Cinergy hybrid T USB XS (USB analogue and digital tv tuner) with ID 0ccd:005e. Note that Marcus Rechberger is working on a userspace driver, which is not likely to be included in the kernel. &lt;br /&gt;
** There is a non-userspace driver out there; several versions of it, in fact. The least unmergable is probably my http://www.makomk.com/hg/v4l-dvb-makomk, but it's also the least tested. -- Main.AidanThornton - 28 Oct 2007&lt;br /&gt;
* AXIS ARTPEC-1 (Real Time Picture Encoder) ... closed-source driver included on the firmware image in Axis network cameras.&lt;br /&gt;
* Chicony Webcam: ID 04f2:b016 Chicony Electronics Co., Ltd, found in HP Pavilion dv2555ea (should work with the Linux UVC driver available at http://linux-uvc.berlios.de - please test and report) Thank you very much, although is not reported it works, unfortunately only for 5-10 seconds&lt;br /&gt;
* [http://r-engine.sf.net/ Sony R-Engine] MPEG2 encoder/decoder (0x10cf:0x2011) for VAIO laptops' Motion Eye webcam - also found in some Fujitsu laptops?&lt;br /&gt;
* Z-Star Webcam: ID 0ac8:307b Z-Star Microelectronics Corp.&lt;br /&gt;
* [http://www.kworld.com.tw/product_overview.aspx?P_ID=14 Kworld TV/FM Tuner PVR-TV PE210] - TV/FM tuner&lt;br /&gt;
* Z-Star Microelectronics Corp. - Sansun SN-510 Trash.MainWebCam [hv713d] - USB - ID \x{200e}0x0ac8 - 0x301b&lt;br /&gt;
* Z-Star Microelectronics Corp. USB2 - 0ac8:0323&lt;br /&gt;
* Ricoh Webcam Ry5u870: 05ca:1830, 05ca:1832, 05ca:1833, 05ca:1834, 05ca:1835, 05ca:1836, 05ca:1870, 05ca:1810. There is a working driver (http://avilella.googlepages.com/r5u870-0.10.0.tgz) but needs to be incorporated in the mainstream kernel.&lt;br /&gt;
* The above driver doesn't yet support Ricoh's new cameras like 05ca:1839, which is the Motion Eye included in the Sony Vaio CR, and possibly others.&lt;br /&gt;
* Logitech Trash.MainQuickCam Communicate STX. A very rudimentary driver for this [http://home.mag.cx/messenger/ here].&lt;br /&gt;
* AverMedia AverTV USB 2.0 - Integrated into several notebooks, also a standalone version available product page: http://www.avermedia.com/cgi-bin/products_tvtuner_avertvusb2.asp&lt;br /&gt;
* Video capture with LG GSA-5169D (advanced USB DVD burner).&lt;br /&gt;
* ADS-Tech Video Xpress (USBAV-191-EF) [http://www.adstech.com/products/USBAV-191-EF/intro/USBAV_191_intro.asp?pid=USBAV-191-EF]&lt;br /&gt;
* ADS-Tech Instant Video To-Go (RDX-160) (H.264 hardware compression accelerator) based on [http://www.mobilygen.com/] SOC which claims to have a Linux SDK. [http://www.adstech.com/products/RDX-160/intro/RDX-160_intro.asp?pid=RDX-160]&lt;br /&gt;
* Toshiba PCI DVB-T/Analog Hybrid Tuner&lt;br /&gt;
* Techwell 6800 based video capture card&lt;br /&gt;
* bttv driver needs to be updated for v4l2&lt;br /&gt;
* Adaptec Gamebridge USB devices&lt;br /&gt;
* Blackmagic Design [http://www.blackmagic-design.com/products/intensity/ Intensity / Intensity Pro] HDMI capture cards.&lt;br /&gt;
* YUAN Analog TV Tuner (Trash.MainExpressCard) (HP Analog Tuner) 1164:0601&lt;br /&gt;
* Shenzhen SSTR Technology CO STR-300 USB2 DVB-T TV-Tuner. The em28xx driver at http://www.makomk.com/hg/v4l-dvb-makomk now supports this, needs testing.&lt;br /&gt;
* Compro VideoMate H900 analog TV/FM-Tuner with real-time hardware MPEG-1/2 encoder based on Conexant CX23418 video process chip&lt;br /&gt;
* Medion TV/DVB-T Combo card CTX953_V.1.4.3. Works with SAA7134 and Card=96 but no audio!&lt;br /&gt;
* Pinnacle PCTV HD (800i) TV-Tuner Support [http://www.linuxtv.org/wiki/index.php/Pinnacle_PCTV_HD_Card_(800i)]&lt;br /&gt;
* DVB-S TeVii S400 http://www.ruslink.info/tevii/index.php&lt;br /&gt;
* DVB-S TeVii S600 http://www.ruslink.info/tevii/index.php&lt;br /&gt;
* Konica Minolta Dimage Xg (it's WebCam mode)&lt;br /&gt;
* Pinnacle System Dazzle DVC150 USB2.0 MPEG-2 Encoder http://www.pinnaclesys.com/PublicSite/us/Products/Consumer+Products/Home+Video/Dazzle/Digital+Video+Creator+150.htm&lt;br /&gt;
* NVIDIA DualTV MCE TV tuner card http://www.nvidia.com/page/dualtvmce.html&lt;br /&gt;
* Pinnacle System PCTV and PCTV PRO&lt;br /&gt;
* Multimedia video controller: Unknown device 197d:0ecb (rev 01)&lt;br /&gt;
* Multimedia controller: Unknown device 1745:2010&lt;br /&gt;
* Vimicro Corp. USB2 Web Camera (0ac8:0323) sold as Zolid 1.3MP WEBCAM&lt;br /&gt;
* MediaForte SF256-PCP-R (fm801) - radio card ( chip: tea575x)&lt;br /&gt;
* Griffin RadioSHARK and RadioSHARK 2: USB AM/FM radio tuners. There is an abandoned userland HID-based control program (http://marius.scurtescu.com/2007/09/21/radioshark2_under_ubuntu) for each, so writing a real driver shouldn't be too difficult&lt;br /&gt;
* Emuzed Maui / LSI DVXPLORE, lists as Multimedia controller [0480]: C-Cube Microsystems E4? [123f:8120] (rev b1) in lspci.&lt;br /&gt;
&lt;br /&gt;
== Network devices ==&lt;br /&gt;
&lt;br /&gt;
=== 802.11 Wireless Network cards ===&lt;br /&gt;
* [http://en.wikipedia.org/wiki/IEEE_802.11 IEEE_802.11 (Wi-Fi)]&lt;br /&gt;
* AMD am1772 chipset&lt;br /&gt;
* Atheros old PCI chipsets are only supported by MadWifi/OpenHAL.&lt;br /&gt;
* Inprocomm IPNxxxx chips: http://osdir.com/ml/law.gpl.violations.legal/2006-01/msg00013.html&lt;br /&gt;
* Marvell TOPDOG USB [0846:9000] and PCI [11ab:2a02] devices. &lt;br /&gt;
** Proprietary drivers are available through ndiswrapper all around the net ( look for netmw245.inf (USB) or NetMW24x.inf (PCI) ), though these only work on 32-bit unix. No 64-bit drivers are available.&lt;br /&gt;
** See: http://ubuntuforums.org/showthread.php?t=859481 and http://bbs.archlinux.org/viewtopic.php?pid=557623&lt;br /&gt;
* Marvell libertas W8300 PCI.&lt;br /&gt;
* SiS16x chipsets : http://www.sis.com/download/ -&amp;amp;gt; I gree -&amp;amp;gt;Linux -&amp;amp;gt;Network driver -&amp;amp;gt; SiS160 WLAN controller.&lt;br /&gt;
* Socket Mobile Go Wi-Fi SDIO: http://www.socketmobile.com/products/embedded-wireless-communications/wireless-lan-modules/&lt;br /&gt;
* ParkerVision WLAN1500 [http://www.parkervision.com/]&lt;br /&gt;
* The Eye-Fi Card (http://www.eye.fi/) is a combined SecureDigital storage card and 802.11 network card, designed to add WiFi uploading to digital cameras.&lt;br /&gt;
* Broadcom SoftMAC 802.11g USB chipset, used in Linksys WUSB54GSCv2. Not supported by rndis_wlan or b43.&lt;br /&gt;
* STMicroelectronics STLC4370 (Nokia 770) - [http://cx3110x.garage.maemo.org/ cx3110x] is a driver for a binary-only wlan stack. No open source driver exists at this point. The STLC4550/STLC4560 (Nokia N8x0) is similar, and supported by [http://stlc45xx.garage.maemo.org/ stlc45xx] and [http://wireless.kernel.org/en/users/Drivers/p54 p54spi]&lt;br /&gt;
&lt;br /&gt;
=== 802.16 Wireless Network cards ===&lt;br /&gt;
* [http://en.wikipedia.org/wiki/IEEE_802.16 IEEE_802.16 (WiMAX)]&lt;br /&gt;
* Navini Networks Ripwave PCMCIA card (both SCDMA only and PMX &amp;quot;pre-WiMAX&amp;quot; cards)&lt;br /&gt;
&lt;br /&gt;
=== Controller Area Network (CAN) cards ===&lt;br /&gt;
[http://lwn.net/Articles/253425/ PF_CAN] is already included in the current Linux kernel but there is a lack of different device drivers. &lt;br /&gt;
* Softing [http://www.softing.com/home/en/industrial-automation/products/can-bus/interface-cards/can/usb.php?navanchor=3010140 CANusb]: some of the Softing CAN devices [http://www.softing.com/home/en/pdf/ia/datasheet/can-bus/CAN-Interfaces-Technical-Data-e.pdf have already a Linux driver], but the CANusb is not included in this list.&lt;br /&gt;
* IXXAT [http://www.ixxat.com/usb-to-can-compact-interface_en.html USB-to-CAN compact]: there is already a [http://www.ixxat.com/linux_vxworks_driver_en.html driver created by IXXAT] but it is only available with signing an NDA.&lt;br /&gt;
* IXXAT [http://www.ixxat.com/usb-to-can-ii-interface_en.html USB-to-CAN II]: this card is not supported by the [http://www.ixxat.com/linux_vxworks_driver_en.html driver created by IXXAT].&lt;br /&gt;
* Vector [http://www.vector.com/vi_cancase_xl_en.html CANcaseXL]&lt;br /&gt;
&lt;br /&gt;
=== ISDN cards ===&lt;br /&gt;
* working opensource capi in the kernel for FRITZ!Card PCI Proprietary (.o parts) driver exists http://www.avm.de/files/cardware/fritzcrd.pci/linux/suse.93, but the are very old, and are not longer maintained&lt;br /&gt;
* working opensource capi in the kernel for hfc based cards (misdn sucks)&lt;br /&gt;
* USB Winbond W6694 Driver [http://pdfdata.datasheetsite.com/web/190788/W6694.pdf Specs] ... there is a [http://www.turbocat.net/~hselasky/isdn4bsd/sources/src/sys/i4b/layer1/ihfc2/i4b_wibusb.h BSD Driver]... would be really great and shouldn't be too hard&lt;br /&gt;
* LanCapi for [http://www.lancom-systems.de/index.php?i-d=&amp;amp;no_cache=1&amp;amp;L=1&amp;amp;send=GO LANCOM] ISDN/DSL+ISDN router products for using their ISDN functionallity over IP - manufactorer provides specs when asked for&lt;br /&gt;
&lt;br /&gt;
=== Analog Modems ===&lt;br /&gt;
* Creative Modem Blaster *PCI* (DI5656 &amp;amp; DI5663)&lt;br /&gt;
* Motorola SM56 based Winmodems&lt;br /&gt;
* Conexant D110 MDC V.9x Modem unsupported&lt;br /&gt;
* Conexant D480 MDC V.9x Modem vendor ID 14f1 device ID 5422, also known as a hsfmodem; there are binary only drivers available from [http://www.linuxant.com/drivers/hsf/full/downloads-ubuntu-x86.php linuxant] or [http://support.dell.com/support/downloads/download.aspx?c=us&amp;amp;l=en&amp;amp;s=gen&amp;amp;releaseid=R155004&amp;amp;SystemID=INSPIRONI6400/E1505&amp;amp;servicetag=&amp;amp;os=UBLN&amp;amp;osl=en&amp;amp;deviceid=8593&amp;amp;devlib=0&amp;amp;typecnt=0&amp;amp;vercnt=1&amp;amp;catid=-1&amp;amp;impid=-1&amp;amp;formatcnt=1&amp;amp;libid=20&amp;amp;fileid=206745 Dell]&lt;br /&gt;
* Class 0403: 8086:27d8 Audio device: Intel Corporation 82801G (ICH7 Family), SubSystem : 1028:01cc Dell Unknown device 01cc&lt;br /&gt;
Further information about supported and unsupported modems can be found on [http://www.linmodems.org linmodems.org]&lt;br /&gt;
&lt;br /&gt;
=== ADSL ===&lt;br /&gt;
* RNDIS/USB to Dlink ADSL modems.&lt;br /&gt;
* Conexant AccessRunner ADSL PCI modem. Proprietary (.o parts) driver exists in http://patrick.spacesurfer.com/linux_conexant_pci_adsl.html , but it don't function in multi-core system. You have to compile kernel with CONFIG_SMP=off.&lt;br /&gt;
* Sangoma ADSL and T1/T3 cards. Mix of open and closed source available from the [http://wiki.sangoma.com/wanpipe-linux-drivers manufacturer]. Need better integration with netdev/tty stacks. There's also a F/OSS OpenBSD driver ([http://www.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/ if_san*.{c,h}]) for Sangoma AFT T1/E1.&lt;br /&gt;
* ADSL controllers, such as the TI Avalanche used by Dlink 5- and 6-series ADSL routers. These run Linux but the lack of source support for this chip prevents better firmware, such as OpenWrt, being used.&lt;br /&gt;
* ADSL Modem HUAWEI SmartAX MT882 USB do not have drivers for kernel 2.6&lt;br /&gt;
* Unicorn driver for ADSL modem (USB ID 0483:0137 SGS Thomson Microelectronics). The proprietary driver http://www.bewan.com/bewan/drivers/A1012-A1006-A904-A888-A983-0.9.3.tgz doesn't compile on 2.6.24. On 2.6.22 with patches from community it compiles but works unstable. It is even not any more available on Bewan site (still on [http://www.filewatcher.com/m/A1012-A1006-A904-A888-A983-0.9.3.tgz.1176291.0.0.html filewatcher]).&lt;br /&gt;
&lt;br /&gt;
=== Various network cards ===&lt;br /&gt;
* Olicom Token-Ring adapters do not have drivers for kernel 2.6. There is an outdated driver for kernel 2.4 on the Madge website (open source, I'm not sure if compatible with the GPL; doesn't work on SMP kernels), and FreeBSD has a contributed binary driver (with an open source wrapper).&lt;br /&gt;
* ZTE MF330 - GSM modem on pcmcia card. Modem is detected, but kernel should create 3 input/output ports in /dev/ (ttyUSB*). Problem is with USB drivers. Check this: https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.22/+bug/129433&lt;br /&gt;
* ADSL Modem HUAWEI SmartAX MT882 USB do not have drivers for kernel 2.6&lt;br /&gt;
* Broadcom BCM4210 based Linksys HomePNA 2.0 card have own bug drivers work only Windows driver via NdisWrapper but their not support PROMISC mode.&lt;br /&gt;
* Prolific USB network cable pl-2501 appears not to work with the usbnet module, at least with kernel 2.6.9. Module loads but network packets don't get through.&lt;br /&gt;
* Many UTMS/GPRS data cards do not work.&lt;br /&gt;
* Soerensen EnVision VoIP board: video capture and G.723.1 voice encoding&lt;br /&gt;
&lt;br /&gt;
== Crypto ==&lt;br /&gt;
Hardware encryption accelerators: &lt;br /&gt;
* &amp;lt;del&amp;gt;[http://www.hifn.com/ HiFn crypto accelerators chipsets] (with full devs doc on [ftp://ftp.hifn.com ftp.hifn.com]). Soekris crypto accelerators has an Hifn chipsets (see http://soekris.com/vpn1401.htm ). We can also find discrete PCI cards using those chipsets. Since June 2006 (and after OpenBSD devs requested it), Hifn provide full developers specifications for their crypto chipsets (HiFn 6500, 7711, 7751, 7811, 795x, 7855), without nda nor registration, on their ftp ( ftp://ftp.hifn.com ). There's an ou-of-free, unmaintained, old driver for HiFn 7951 for [http://sf.net/projects/hifn7951/ kernels 2.2 and 2.4]. There's also an [http://www.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/ OpenBSD driver]). Hifn people seems responsive to developers demand (search for &amp;quot;hifn&amp;quot; on openbsd-misc mailing-list archive, for instance, to get some execs emails), so they may be willing to provide hardware too.&amp;lt;/del&amp;gt;&lt;br /&gt;
* Broadcom 5820/5821 chipsets do RSA and DSA plus Hardware RNG and some bulk symmetric crypto. Maru has drivers here [http://sourceforge.net/projects/bcm58xx] -- pci id 0x14e4 :: 5821&lt;br /&gt;
* cavium nitrox XL based PCI-X accelerator cards.. similar to hifn and Broadcom offerings, but high throughput. pci id 0x177d :: [1,2,3,4, etc..] see [http://www.caviumnetworks.com/acceleration_boards.htm] and [http://www.caviumnetworks.com/processor_security_nitrox.htm]&lt;br /&gt;
* The Freescale MPC184 and MPC190 chipsets do RSA, Diffie-Hellman, Elliptic Curve, DES, 3DES, RC4, SHA1, SHA256, MD4, MD5 and HMAC. It also has an on-board PRNG. I know of no Linux or other Open Source drivers for it. The documentation for them ([http://www.freescale.com/files/32bit/doc/ref_manual/MPC1848XXUM.pdf], [http://www.freescale.com/files/32bit/doc/ref_manual/MPC184UM.pdf] and [http://www.freescale.com/files/32bit/doc/ref_manual/MPC190UM.pdf]) appear to fully document all of the data structures and PCI calls needed to use the chip. &lt;br /&gt;
** MPC190 appears to be end of life. Which products use an MPC184 chip?&lt;br /&gt;
&lt;br /&gt;
== Sound ==&lt;br /&gt;
* Various sound cards; see the [http://www.alsa-project.org/main/index.php/Matrix:Main ALSA project's Sound Card Matrix]. In particular: &lt;br /&gt;
** ESI Juli@ (Needs better driver. It causes kernel panics because of midi support not working and that's not the only problem.)&lt;br /&gt;
** Conexant CX20551&lt;br /&gt;
** ALSA drivers for some exotic (not PC) and ISA hardware with in-kernel OSS drivers&lt;br /&gt;
* FireWire devices [[No Linux Driver Needed|do not need Linux kernel drivers]]]&lt;br /&gt;
* Digidesign &lt;br /&gt;
** USB interfaces: Mbox, Mbox2, and Mbox-mini&lt;br /&gt;
** PCI interfaces: Project, project II, pro tools III, pro tools 24, pro tools mix(+), pro tools HD, Digi 001&lt;br /&gt;
** PCIe interfaces: Pro Tools HD&lt;br /&gt;
* USB Audio: Wireless headset Jabra BT620s doesn't work in USB-mode.&lt;br /&gt;
* Bluetooth handsfree support for all devices - (khandsfree is no longer active in http://bluetooth.kmobiletools.org/)&lt;br /&gt;
* Diasonic DVR DDR-3000 Series Digital Voice Recorder.&lt;br /&gt;
* E-MU Digital Audio Systems&lt;br /&gt;
* !HardSID [http://www.hardsid.com/:The HardSID homepage]&lt;br /&gt;
* Sigmatel Audio on SB450 southbridge ([http://support.gateway.com/s/Mobile/Q106/Bishop/4006148R/4006148Rsp2.shtml mobo documentation])&lt;br /&gt;
* Build in Plusdeck2 tape drive (not usb version) [http://www.plusdeck.com/]&lt;br /&gt;
* Zalman ZM-RSSC USB sound card [http://www.zalman.co.kr/eng/product/view.asp?idx=112&amp;amp;code=023] - I'm really just after any affordable sound card with FULL support for S/PDIF optical out. Thought I had a chance with this USB product, but no...&lt;br /&gt;
* Frontier Design PCI cards, including Dakota, WaveCenter/PCI.&lt;br /&gt;
* 5.1 support for Hercules Muse Pocket.&lt;br /&gt;
* Sound Blaster !SigmaTel High Definition Audio (Audigy HD) - There is no sound at all, no volume controls, nothing. There is an error that says GStreamer plugin not detected/installed&lt;br /&gt;
* Sondigo Sirocco (http://sondigo.com/sirocco), Wireless 5.1 Soundcard&lt;br /&gt;
* ESI !U46DJ Multi-chanel soundcard [http://www.esi-pro.com/viewProduct.php?pid=60]&lt;br /&gt;
* Philips Aurillium PSC805 [http://www.p4c.philips.com/cgi-bin/dcbint/cpindex.pl?ctn=PSC805/17&amp;amp;scy=US&amp;amp;slg=en] - usb-audio supports 2 channel looking for support for subdevices such as surround and s/pdif out&lt;br /&gt;
* Sweex external soundcard 5.1 with digital in/out USB 2.0 / C-Media CM6207. This card (actually a box) is more or less works using &amp;quot;standard&amp;quot; USB audio class support from ALSA, but lacks bits of functionality that either is implemented using vendor specific extensions or simply ALSA doesn't support it in it's USB driver. Documentation of the CM6207 IC can be found here: [http://erik.slagter.name/pub/6207-datasheet-1.2.pdf], this sheet doesn't seem to be freely available from C-Media but it is distributed with the Sweex box. Also it only works when fed with 4 or more channel data, 2 channel data is broken (alsa bug?).&lt;br /&gt;
* Panasonic RR US450 - Digital Voice Recorder (http://www2.panasonic.com/consumer-electronics/support/Audio/Portable-Audio/Recorders/model.RR-US450) Driver available only for MS Vista, none for Linux. Device comes with USB cable.&lt;br /&gt;
&lt;br /&gt;
== Input devices ==&lt;br /&gt;
* TwinhanDTV StarBox DVB-S USB2.0 (VP7021) [http://www.twinhan.com/product_satellite_6.asp]&lt;br /&gt;
* 6-Degrees of Freedom Headtracker called TrackIR [http://www.naturalpoint.com/trackir/]&lt;br /&gt;
* 3D-controllers from [http://www.3dconnexion.com 3DConnexion.com]. They have a old motif-interface today on the Linux platform. Not very well integrated. I think it should be a kernel-module instead. A drop-in, replacement, open source driver is available from John Tsiombikas at [http://spacenav.sf.net]. The open source version works well with Space Navigator. Neither version currently provides the ability to use a 3Dconnexion controller as a general mouse replacement. Currently, programs must specifically implement calls to the SDK to use the controller.&lt;br /&gt;
* Apple Remote when used with an [http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore.woa/wa/RSLID?mco=31188AB7&amp;amp;fnode=home/shop_ipod/ipod_accessories/cables_docks&amp;amp;nplm=MB125G/A Apple Universal Dock] (the one with an infra-red receiver). There exists driver for this on Mac Mini and Power-/MacBooks, but not for this Dock and Remote combo.&lt;br /&gt;
* Novint Falcon force feedback input device (info [http://home.novint.com/products/sdk.php here])&lt;br /&gt;
* eBeam Whiteboard device ([http://www.e-beam.com/])&lt;br /&gt;
* Mimio XI Whiteboard device ([http://www.mimio.com/]) -- [http://praxis.it.usyd.edu.au/mimiolinux.tar.bz2 some initial work] (builds for kernel 2.6.17 -- 2.6.23 (+?))&lt;br /&gt;
* The Fujitsu P7230 Notebook has two special buttons on it, one is marked &amp;quot;ECO&amp;quot; and the other is marked &amp;quot;A&amp;quot;. Neither of these buttons elicit any sort of response in X or in the Linux kernel.&lt;br /&gt;
* Keyboard Dell Sk-8135 Volume Knob does not function under bleeding edge distros. (info [http://ubuntuforums.org/showthread.php?t=203770], [http://www.spinics.net/lists/xorg/msg28087.html]).&lt;br /&gt;
* Graphic tablets other than Wacom, for example Packard Bell PB-GT-150, Genius, and Hyundai graphics tablets. &lt;br /&gt;
** The entire range of hand writing tables from [http://www.penpower.com.tw/brand_en/4_0product/4_1pro.html Penpower], usually for Chinese input.&lt;br /&gt;
* ShuttleXpress (possibly ShuttlePro as well?) control pad. Currently partially functional. 1 of 5 buttons recognized as a mouse button, each of the jog wheel directions is recognized as a mouse button as well, but behaves oddly. Wheel/knob is not recognized at all.&lt;br /&gt;
* Merc Zboard Gaming Keyboard (info [http://ubuntuforums.org/showthread.php?t=395841 here])&lt;br /&gt;
* Microsoft Natural Keyboard 4000 (Most special keys don't work at all. Zoom does not work. Keyboard crashes after reset/reboot)&lt;br /&gt;
* Logitech MX5000 wireless bluetooth keyboard and mouse, works OK in standard wireless, doesn't work at all in bluetooth mode, none of the special keys work, also would be nice to see the screen be of use on the keyboard. &lt;br /&gt;
** The keyboard repeats 10-20 characters when waking up from sleep mode (e.g. after a pause). This a hardware bug with the keyboard, but could maybe be fixed with a specialized driver?&lt;br /&gt;
** Some support for the keyboard LCD screen is available from [http://home.gna.org/mx5000tools/ mx5000tools], but doesn't work for all setups.&lt;br /&gt;
* Logitech G15 Keyboard. No GamePanel LCD- and programmable extra button Support.&lt;br /&gt;
* LCD and control panel for Thecus n3200, n5200 and 1U4500 NAS devices/servers. The LCD/control panel needs a kernel module and a user-space tool. There are sources for a 2.6 kernel module in Thecus GPL downloads: http://www.thecus.com/Downloads/. There are also some reverse-engineered instructions: http://wiki.chaostreff.ch/index.php/Thecus_n5200_Debian#Thecus_Kernel_Patch. As almost all Thecus products have this LCD/control panel, it would be great to persuade the company to try to push this driver upstream.&lt;br /&gt;
* Keyboard BTC 8193 (scroll wheel doesn't work, [http://bugzilla.kernel.org/show_bug.cgi?id=9385 kernel.org bug #9385]).&lt;br /&gt;
* IBM UltraNav external USB keyboard. (eg http://shop.lenovo.com/SEUILibrary/controller/e/na/LenovoPortal/en_US/catalog.workflow:item.detail?GroupID=38&amp;amp;Code=31P9490&amp;amp;current-category-id=32DC77FF9F7C48E78298CB802038DD45 ). This works fine, except that the trackpoint sensitivity cannot be accelerated. The trackpoint in an internal thinkpad keyboard works brilliantly, and can be configured thus: http://www.thinkwiki.org/wiki/How_to_configure_the_TrackPoint&lt;br /&gt;
* Nokia SU-1B Digital Pen&lt;br /&gt;
* C Technologies C-Pen 10 Digital Input Pen&lt;br /&gt;
* Finger Print Reader AuthenTec 2810 PCI ID 08ff:2810&lt;br /&gt;
* [http://www.jastec.co.kr/ Jastec] touchscreens - you can get a proper serial line e.g. via usb subsystem, but the touchscreen protocol is not known to the kernel.&lt;br /&gt;
&lt;br /&gt;
=== Gaming controllers ===&lt;br /&gt;
* Lifetec Erazer joystick&lt;br /&gt;
* Logitech G25 Racing Wheel (046d:c294) basics supported by USBHID, but no force feedback, clutch pedal not available&lt;br /&gt;
** Update: Logitech G25 Racing Wheel has three mode - basic (046d:c294), extended(046d:c299) and pro(046d:c298). clutch and H-shift work in extended mode. You can switch from basic mode to extended with [ftp://srv.l14.ru/pub/usbtool-0.1.tar.gz usbtool]&lt;br /&gt;
* Logitech G15 Keyboard, LCD display, multimedia keys, and M1-3 programable keys.&lt;br /&gt;
* Belkin Nostromo N52 Gamepad&lt;br /&gt;
* Logitech RumblePad 2 Vibration Feedback Gamepad. No datasheet available.&lt;br /&gt;
* Flight Stick 2. usb joystick and throttle by Hori originally for Playstation 2 but drivers are available for Windows XP (tested and confirmed working): [http://www.tamanegi.org/prog/hfsd/ Third party Windows XP/2000 drivers including source code](Japanese site). [http://www.hori.jp/us/contact.html Company contact info]. [http://au.gear.ign.com/articles/562/562988p1.html More info].&lt;br /&gt;
* Haptic devices: [http://home.novint.com/ Novint Falcon] (force feedback)&lt;br /&gt;
* Genius Maxfire Pandora Pro Mini [http://www.geniusnet.com/geniusOnline/online.portal?_nfpb=true&amp;amp;productPortlet_actionOverride=%2Fportlets%2FproductArea%2Fproduct%2FquerySection&amp;amp;_windowLabel=productPortlet&amp;amp;productPortletproductId=160250&amp;amp;productPortletsectionId=160252&amp;amp;_pageLabel=productPage&amp;amp;test=portlet-action link] (force feedback)&lt;br /&gt;
&lt;br /&gt;
== Video Cards (X.org Output) ==&lt;br /&gt;
* Yes, we know all about ATI and nVidia graphic cards, please don't feel like you need to list the specific cards that are not supported, there are teams of developers working right now to address this in an open-source manner: see http://dri.freedesktop.org/wiki/Status&lt;br /&gt;
* SiS315/Xabre chipset family direct rendering driver&lt;br /&gt;
* Matrox G550 and others. Proprietary driver is available from Matrox, but TV-out feature is not supported in Linux. (Works in Windows only.) Matrox has ceased driver development for its older hardware, and has stated that it has no interest in developing TV-out for Linux. Matrox TV-out quality is extremely high in Windows and it is a shame we can't have it on Linux.&lt;br /&gt;
* AIGLX support for S3 Inc. SuperSavage IX/C SDR (rev 05) Driver works, but 2D only.&lt;br /&gt;
* Via Unichrome. Proprietary drivers exist along with OpenChrome&lt;br /&gt;
* 3D driver for the Prophet Kyro Series graphic cards (STMicroelectronics), there is an old proprietary driver from [http://www.imgtec.com/powerVR/insider/powervr-drivers.asp Imagination Technologies], but only for the 2.4 kernel. X.org developers are [https://bugs.freedesktop.org/show_bug.cgi?id=1652 not interested] in writing a driver unless documentation is released.&lt;br /&gt;
* DRI (3D) driver for various Trident chipsets (e.g. CyberBlade series). X.org &amp;quot;trident&amp;quot; driver is 2D only. &lt;br /&gt;
** e.g. Trident CyberBlade XPAi1 (PCI ID 1023:8820)&lt;br /&gt;
* [http://en.wikipedia.org/wiki/DisplayLink DisplayLink] USB Graphics devices ( [http://www.displaylink.com/shop.html multiple vendors])&lt;br /&gt;
* 3D driver for the SIS Series graphic cards[Silicon Integrated Systems], there is an old driver, but no 3D supported.&lt;br /&gt;
&lt;br /&gt;
== Video Cards (Framebuffer) ==&lt;br /&gt;
* radeonfb support for the remaining unsupported pre-AVIVO radeon cards like RV410 (nobody is currently working on this according to benh)&lt;br /&gt;
* Framebuffer support for AVIVO radeon cards (R500 and later)&lt;br /&gt;
* viafb - support for Via Unichrome chipsets enabling hardware accelerated mpeg decoding&lt;br /&gt;
&lt;br /&gt;
== Motherboard Chipsets ==&lt;br /&gt;
* Foxconn 662MX - Chipset SiS 966L - Video Problems&lt;br /&gt;
* Built-in VIA Technologies, Inc. UniChrome Pro IGP (rev 01) P4M800 NorthBridge Controller ASROCK Motherboard 775VM800&lt;br /&gt;
&lt;br /&gt;
== Musical Instruments ==&lt;br /&gt;
* Access Virus TI Synthesizer (http://virus.info)&lt;br /&gt;
* M-Audio Keystation 49e USB midi-keyboard (Is not recognized at all, even in lsusb. This may also include other keystation models and usb midi-keyboards from M-audio) (http://www.m-audio.com/products/en_us/Keystation49e-main.html) -&amp;amp;gt; works for me (tm) ... See [http://www.christian-gmeiner.info/wordpress/?p=12 this link]&lt;br /&gt;
* Creative Prodikeys keyboard&lt;br /&gt;
&lt;br /&gt;
== Printers ==&lt;br /&gt;
See [http://www.linuxdriverproject.org/twiki/bin/view/Main/NoLinuxDriverNeeded#Printers this link] for why this project does not handle printer issues.&lt;br /&gt;
&lt;br /&gt;
== Scanners ==&lt;br /&gt;
See [http://www.linuxdriverproject.org/twiki/bin/view/Main/NoLinuxDriverNeeded#USB_Scanners this link] for why this project does not generally handle scanner issues.&lt;br /&gt;
&lt;br /&gt;
== Mobile Phones and Smartphones ==&lt;br /&gt;
See [http://www.linuxdriverproject.org/twiki/bin/view/Main/NoLinuxDriverNeeded#Mobile_Phones this link] for why this project does not generally handle mobile phone issues. However, if you are certain that some phone needs a whole new type of kernel driver, you are welcome to demonstrate this (for example with portions of lsusb -v output). [[Windows Mobile]] for example, is a solved case.&lt;br /&gt;
&lt;br /&gt;
== Measurement and Automation ==&lt;br /&gt;
* National Instruments -- they provide a free DDK, but they would definitely benefit from mainlined Linux support&lt;br /&gt;
* USB Data Acquisition Boards from [http://www.datatranslation.com/products/dataacquisition/usb/default.htm Data Translation]&lt;br /&gt;
* It would be nice to have support for PC-based measuring instruments - I'm thinking of my TiePie HandyScope HS3 digital scope and similar items. See http://www.tiepie.nl. I'm not really a programmer, but I'm obviously more than willing to help on this.&lt;br /&gt;
&lt;br /&gt;
== Imaging Devices (e.g. Cameras) ==&lt;br /&gt;
* Canon SDKs - Canon provides full-featured SDKs for many of their models. This allows developer to write application to interact with cameras (i.e. controlling the camera to build HDR images). It will be very beneficial to have their driver and SDK available in Linux. This is actually work in progress in the [http://www.gphoto.org/ Gphoto Project]. This is user-land and it works with a small selection of camera, not only Canon. See [http://www.gphoto.org/doc/remote/ Remote Controlling Cameras] for up-to-date information.&lt;br /&gt;
* Concord EyeQ 4060AF 4 megapixel digital camera - http://www.concord-camera.com This is a Chinese made digital camera. It may well have been superseded now by another model. There are some Concord models listed in various 'graphics's software such as DigiKam but not this one. It has been tried with both 2.4 and 2.6 kernels but is not even recognised as a USB mass storage device. Just this basic functionality would be good.&lt;br /&gt;
&lt;br /&gt;
== PCI and PCI Express Endpoints ==&lt;br /&gt;
There exist a number of PCI and PCI Express ASIC chips or FPGA IP cores that implement either a PCI to local bus bridge or a full scatter/gather DMA endpoint implementation. Although these are not complete devices, the example cores or development boards do require a complementary driver. Those device examples often just DMA to/from a local device memory. &lt;br /&gt;
* Altera FPGA soft core and hard core PCI Express endpoint with descriptor based scatter/gather DMA example implementation. &lt;br /&gt;
** Altera PCI Express Megacore with the Chaining DMA application running on most Altera FPGA PCIe development boards, the Arria GX PCIe kit is one example: http://www.altera.com/products/devkits/altera/kit-arriagx.html. This has driver project number 012.&lt;br /&gt;
* OpenCores.org PCI Bridge to Wishbone * ...&lt;br /&gt;
&lt;br /&gt;
== Uncategorized ==&lt;br /&gt;
* Additional keys support for ACER laptops &lt;br /&gt;
** Older laptops need polling&lt;br /&gt;
** Newer laptops (i.e. all Acer laptops from 2004 onwards, possibly from even earlier) only need their extra keys added to HAL - they do _not_ need a new driver&lt;br /&gt;
* Additional keys support for HP Compaq nx6125 Laptop&lt;br /&gt;
* ACPI Support for HP Pavillion laptops&lt;br /&gt;
* ACPI Support for Samsung R20 and related&lt;br /&gt;
* ACPI Support for Samsung R40 and related&lt;br /&gt;
* ACPI Support for Toshiba A100 Series Laptops&lt;br /&gt;
* ACPI Support for HP Compaq nc6000 Laptop&lt;br /&gt;
* ACPI Support for HP Compaq nx6125 Laptop&lt;br /&gt;
* ACPI Support for MITAC laptops (8258d model)&lt;br /&gt;
* ACPI Support for FSC Amilo Pa 2548 and related.&lt;br /&gt;
* Support for Panasonic Let's Note W5 functions (key to power-off internal USB dvd-drive; changing battery charging policy) (probably valid for all &amp;quot;Let's Note&amp;quot; serie)&lt;br /&gt;
* Blu-Ray and HD-DVD support. Reading appears to require a [http://sf.net/tracker/index.php?func=detail&amp;amp;aid=1671912&amp;amp;group_id=295&amp;amp;atid=300295 patched UDF filesystem driver] for UDF 2.5. Several sources suggest that writing requires a kernel patch in addition to support from cdrkit or dvd+rw-tools.&lt;br /&gt;
* Lightscribe CD/DVD labeling support. (May not need kernel support; if not, move to NoLinuxDriverNeeded. Closed-source driver for x86 only downloadable from lightscribe.com - no public specs.)&lt;br /&gt;
* Creative external/internal I/O Hubs (e.g. Audigy 2 ZS, Audigy 4)&lt;br /&gt;
* ITE Tech. Consumer Infrared Receiver CIR. Model 8704/8707/8708/8709 series. Not compatible with ITE 8705/8712F Chips for which a driver exists. May be a former SMSC Chip.&lt;br /&gt;
* TI OMAP platform drivers, as used in the Nokia Internet Tablets (N800, N810), and currently available in binary-only form from Nokia.&lt;br /&gt;
* Ageia PhysX physics accelerator card.&lt;br /&gt;
* Bodybugg http://www.bodybugg.com&lt;br /&gt;
* Thin Qemu drivers -- i.e. drivers for Linux guests that (1) are as quick as possible in the guest and (2) expose as much host functionality as possible. For instance, hardware accelerated video. Note that this is really a driver+&amp;quot;hardware&amp;quot; project where, in addition to a guest driver, a matching virtualized hardware chunk must be implemented. It would be nifty if the virtualized hardware were documented adequately to permit similar lightweight drivers to be written for non-Linux OSs (although this &amp;quot;requirement&amp;quot; is not in-scope for this forum).&lt;br /&gt;
* DDC's ARINC (avionics) cards. They have proprietary drivers ([http://www.ddc-web.com/Products/2/Default.aspx], select software) for Linux for the DD-42976S1 and DD-42977S1, although the 76S1 driver is circa 2004 at the latest. The drivers do appear to be mission-critical-quality.&lt;br /&gt;
* TI 1620 with firmware loading found on the HP TC1100 tablet and similar devices JoeBeaty - 9 Nov 2007&lt;br /&gt;
* TI SmartCard reader, as found in (for example) the HP NW8240, PCI ID 104C:8035&lt;br /&gt;
* Texas Instruments UltraMedia GemCore SmartCard reader, as found in (for example) the Dell D800, PCI ID 104C:8204 -- Main.JensJorgensen - 29 Oct 2007&lt;br /&gt;
* Digilent USB JTAG Programming cable (http://www.digilentinc.com/Products/Detail.cfm?Prod=JTAG-USB&amp;amp;Nav1=Products&amp;amp;Nav2=Cables). Cable has own firmware and seems to need windows only software to be able to program micro controllers. Cables can be provided.&lt;br /&gt;
* [http://www.passmark.com/products/usb2loopback.htm PassMark USB loopback test plugs]&lt;br /&gt;
* Largan Chameleon Digital Camera http://www.largan.com&lt;br /&gt;
* RF Kill Switch interface on some Fujitsu-Siemens devices.&lt;br /&gt;
* Xyron Wishblade and Xyron Wishblade Personal Media Cutter - these are based on Graphtec plotters and cutters&lt;br /&gt;
* SigmaDesigns REALmagic® Xcard http://www.sigmadesigns.com&lt;br /&gt;
* HP MDPS (Hewlett Packard Mobile Data Protection System) - An acceleration sensor, similar to IBM's HDAPS (Hard Disk Active Protection System). There has been an patch at the LKML, but it never got integrated into the Kernel due to some open issues (high CPU usage in some cases etc.). Take a look at the LKML thread for more details: [http://lkml.org/lkml/2007/8/11/60]&lt;br /&gt;
* lirc drivers for imon_pad remote &amp;amp; VFD from Silverstone LC16M (New version) USB ID ID 15c2:0036&lt;br /&gt;
* Windows Vista SideShow devices/displays&lt;br /&gt;
* Stargate ACL serial adapters - especially the ACL 16(+) (Note: these adapters are (mostly) ISA, so they might be marginally interesting.) Technical information available here; [ftp://ftp.digi.com/support/legacy/stargate/developers/] That and other info here; [ftp://ftp.digi.com/support/legacy/stargate/index.html] (Note2: the ACL 16(+) also needs firmware written for it, but the technical info covers how to.)&lt;br /&gt;
* Inmax USB IMT-0521 Smartcard Reader (USB ID 11c5:0521) [http://www.soft32.com/Download/Free/Inmax_USB_IMT0521_Smartcard_Reader/4-180747-1.html info]&lt;br /&gt;
* Pazzles Creative Cutter Inspiration - a paper cutter simialr to the Xyron Wishblade series. Used just like a printer except instead of printing paper, it cuts paper (such as shapes, fonts, etc.)&lt;br /&gt;
&lt;br /&gt;
== Other lists ==&lt;br /&gt;
There are quite a few other lists of linux incompatible hardware. &lt;br /&gt;
* [http://www.leenooks.com/ Linux Incompatibility List] is a wiki.&lt;br /&gt;
* [http://tldp.org/HOWTO/Hardware-HOWTO/incompatible.html Linux incompatible Hardware] from the Linux Compatibility HOWTO is a bit dated.&lt;br /&gt;
* http://www.ubuntuhcl.org/&lt;br /&gt;
* http://hardware4linux.info/&lt;br /&gt;
* http://linux-wless.passys.nl/ this is cohomprensive list of wireless cards, saying also which are unsupported or with unknown status.&lt;br /&gt;
* http://www.fsf.org/resources/hw&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Out_Of_Tree_Drivers</id>
		<title>Out Of Tree Drivers</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Out_Of_Tree_Drivers"/>
				<updated>2012-05-07T03:39:32Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;'''Here is a list of [http://www.opensource.org/ Open Source] (only GPL, BSD, MIT or MPL licenses accepted) Linux drivers that are already written, but are not included in the...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''Here is a list of [http://www.opensource.org/ Open Source] (only GPL, BSD, MIT or MPL licenses accepted) Linux drivers that are already written, but are not included in the main Linux kernel.org tree for one reason or another'''. These are all possible projects that the Linux Driver Project developers could undertake to move the driver into the main kernel tree.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' &amp;lt;span style=&amp;quot;color:#ff0000&amp;quot;&amp;gt;Please do not list closed source drivers here&amp;lt;/span&amp;gt;, or ones that contain some kind of licensing issue that prevents them from being merged into the Linux source tree due to a legal issue. If no open source driver exists for the same hardware, please add an entry on DriversNeeded if one does not already exist.&lt;br /&gt;
&lt;br /&gt;
== Drivers by subsystem and type ==&lt;br /&gt;
&lt;br /&gt;
=== Firewire ===&lt;br /&gt;
* ToDo:&lt;br /&gt;
** http://ieee1394.wiki.kernel.org/index.php/Out-of-tree_Kernel_Drivers&lt;br /&gt;
** http://ieee1394.wiki.kernel.org/index.php/To_Do#New_drivers&lt;br /&gt;
** http://ieee1394.wiki.kernel.org/index.php/Juju_Migration&lt;br /&gt;
&lt;br /&gt;
=== Networking ===&lt;br /&gt;
&lt;br /&gt;
==== Fixed Ethernet ====&lt;br /&gt;
* Chelsio TOE and RDMA support for the Terminator family [http://service.chelsio.com/]&lt;br /&gt;
** NOTE: Networking maintainers do not want support for this class of hardware in kernel!&lt;br /&gt;
&lt;br /&gt;
=== Wireless 802.11 ===&lt;br /&gt;
* Texas Instruments' ACX100/ACX111/TNETW1450 http://acx100.sf.net/ . See http://acx100.sf.net/wiki/History#Kernel_inclusion kernel inclusion section for some background information on the previous attempt to include it in the mainline kernel, also read http://linuxwireless.org/en/users/Drivers/acx1xx&lt;br /&gt;
* 3Com 3CRWE62092A X-Jack PCMCIA : [[http://poldhu.sf.net]]&lt;br /&gt;
* [http://linuxwireless.org/en/users/Drivers/ar6k Atheros ar6k (AR6000)] http://git.openmoko.org/?p=kernel.git (try the head [http://git.openmoko.org/?p=kernel.git;a=shortlog;h=refs/heads/ar6000-2.6.31 ar6000-2.6.31] unless a newer has shown up). It might be a good idea to read the thread starting [http://www.mail-archive.com/openmoko-kernel@lists.openmoko.org/msg09979.html here] first...&lt;br /&gt;
* ks7010 microSD wifi card [http://projects.qi-hardware.com/index.php/p/qi-kernel/source/tree/5396a9238205f20f811ea57898980d3ca82df0b6/drivers/net/wireless/ks7010 http://projects.qi-hardware.com]&lt;br /&gt;
* [http://linuxwireless.org/en/users/Drivers/rtl819x Realtek r8192xx] 802.11&amp;lt;strong&amp;gt;N&amp;lt;/strong&amp;gt; devices, they are in staging right now.&lt;br /&gt;
&lt;br /&gt;
=== Controller Area Network (CAN, ISO 11898) ===&lt;br /&gt;
* pcan http://www.peak-system.com/linux/index.htm Peak-System Technik CAN interfaces (ISA, PC/104, parport, PCI, PCMCIA, USB, PC/104plus, embedded variants)&lt;br /&gt;
* lincan http://www.ocera.org/download/components/WP7/lincan-0.3.3.html&lt;br /&gt;
&lt;br /&gt;
=== Misc ===&lt;br /&gt;
* iBurst mobile broadband wireless http://sf.net/projects/ibdriver http://en.wikipedia.org/wiki/Iburst&lt;br /&gt;
* Zaptel (DAHDI) drivers for the Digum telephony interfaces http://downloads.asterisk.org/pub/telephony/dahdi-linux/&lt;br /&gt;
* NDISWrapper http://ndiswrapper.sf.net/ - implements Windows kernel API and NDIS API within Linux kernel, mostly acting as a compatibility layer to be able to load proprietary windows drivers when there is no Linux driver available. Not sure if any kernel developer wants this in mainline at all, so it`s just being listed for completeness here.&lt;br /&gt;
* kclown_spy http://clownix.net/ This kernel module permits the display of real-time plots for bandwidth of tcp/udp connexions and for qdiscs monitoring.&lt;br /&gt;
* l7-filter http://l7-filter.sf.net/ Linux layer 7 packet classifier&lt;br /&gt;
* Pulsar ADSL card http://sf.net/projects/openadsl/&lt;br /&gt;
* IMQ http://www.linuximq.net/. IFB was added to mainline to provide similar functionality as IMQ but didn't go all the way thus IMQ is still being used.&lt;br /&gt;
* bewan-adsl - Bewan ADSL PCI &amp;amp; USB st driver http://www.bewan.com/&lt;br /&gt;
* ipp2p - netfilter module for dealing with P2P applications http://www.ipp2p.org&lt;br /&gt;
* arpstar - ARPStar kernel module for protection against arp poisoning http://arpstar.sf.net&lt;br /&gt;
* htbinit - Sets up Hierachical Token Bucket based traffic control (QoS) with iproute2 http://sf.net/projects/htbinit&lt;br /&gt;
* ksb - kernel SOCKS bouncer http://ksb.sf.net/&lt;br /&gt;
* noarp - kernel module for hiding network interfaces http://www.masarlabs.com/noarp/&lt;br /&gt;
* portbunny - kernel based highspeed TCP SYN port scanner http://recurity-labs.com/portbunny/&lt;br /&gt;
* linmodem - winmodems with Lucent Apollo (ISA) and Mars (PCI) chipsets http://linmodems.technion.ac.il/&lt;br /&gt;
* madwimax - user-space driver for the Samsung SWC-U200 Mobile WiMAX USB dongle http://code.google.com/p/madwimax/&lt;br /&gt;
* tcpcp - TCP connection passing between apps on different hosts http://tcpcp.sourceforge.net/&lt;br /&gt;
* wanpipe - WANPIPE S-series multi-protocol WAN and ADSL adapters http://wiki.sangoma.com/wanpipe-linux-drivers&lt;br /&gt;
* mpls-linux Multi Protocol Label Switching stack for the _Linux kernel_ http://sourceforge.net/apps/mediawiki/mpls-linux/index.php?title=Main_Page&lt;br /&gt;
&lt;br /&gt;
== Storage ==&lt;br /&gt;
* Oracle ASMLib Kernel Driver http://oss.oracle.com/projects/oracleasm/&lt;br /&gt;
&lt;br /&gt;
=== ATA ===&lt;br /&gt;
* Promise Technology RAID controllers: http://www.promise.com/support/support_eng.asp&lt;br /&gt;
&lt;br /&gt;
=== Card Readers ===&lt;br /&gt;
* O2Micro OZ711MS1/OZ711MP1 controller, a card reader for MMC/SD/MS Pro - [http://mmc.drzeus.cx/wiki/Controllers/O2/OZ711MP1/MS1 more info, driver for pre-2.6.17-series kernel]&lt;br /&gt;
* sdricoh_cs mmc/sd-cardreader http://sdricohcs.sf.net/&lt;br /&gt;
* Neuros SD/MMC card readers (davinci.c, dm320_mmc.c, itomap2430_hsmmc.c, omap24xx_mmc.c, omap2430_hsmmc.c, etc). http://www.google.com/search?hl=en&amp;amp;lr=&amp;amp;q=+site%3Asvn.neurostechnology.com+mmc&amp;amp;btnG=Search&lt;br /&gt;
* Smart Cards readers drivers http://www.musclecard.com/sourcedrivers.html&lt;br /&gt;
&lt;br /&gt;
=== SCSI ===&lt;br /&gt;
* Accusys SCSI raid driver http://uwsg.iu.edu/hypermail/linux/kernel/0710.2/2783.html&lt;br /&gt;
* ATARI SCSI (ACSI) [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=56a68a500fcab9e3a9a49ca7fbef14230ab7d144 1], [http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c2bcf3b8978c291e1b7f6499475c8403a259d4d6 2] need to be ported from 2.4 kernel&lt;br /&gt;
* AEC-671X SCSI adapter driver (atp870u), was working in 2.4 kernel, broken in 2.6.&lt;br /&gt;
* ppSCSI, drivers for various parallel-port-to-SCSI chips, so your parallel-port-connected device shows up as a SCSI device. 2.6 version here: http://penguin-breeder.org/kernel/download/&lt;br /&gt;
* vscsihba - Virtual SCSI HBA Project http://vscsihba.aboo.org/&lt;br /&gt;
* cdemu-vhba - emulates SCSI HBA for cdemu http://cdemu.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
=== iSCSI ===&lt;br /&gt;
* The '''iSCSI Enterprise Target Project''', also known as '''IET'''. As explained in the [http://sourceforge.net/apps/mediawiki/iscsitarget/index.php?title=FrequentlyAskedQuestions IET FAQ], IET is deployed as a kernel module. In contrast with the older iSCSI target IET has been forked from, patching and recompiling the kernel is not necessary in order to use IET.&lt;br /&gt;
* The '''iSCSI-SCST''' project. The [http://scst.sourceforge.net/ iSCSI-SCST] project is another actively maintained implementation of an iSCSI target for Linux. Compared to IET, iSCSI-SCST has a higher performance and overcomes several of the limitations of IET. For a detailed comparison of iSCSI-SCST and IET, see also http://scst.sourceforge.net/comparison.html.&lt;br /&gt;
* Although the kernel part of the '''Linux SCSI target framework project''' ([http://stgt.berlios.de/ stgt]) has been merged upstream in kernel 2.6.20, both the IET and the SCST projects have a considerable user base. This is because the IET and iSCSI-SCST targets have a higher throughput and lower latency than stgt. The throughput difference can be up to 50% -- see also [https://lists.berlios.de/pipermail/stgt-devel/2007-May/000662.html] or [http://groups.google.com.ph/group/open-iscsi/browse_thread/thread/7f71acbdf08339d]. The performance difference is significant because stgt has been implemented almost entirely in user space, while IET and iSCSI-SCST have been implemented in the kernel. There are no plans to reimplement the stgt iSCSI target in the kernel -- to the contrary, implementing most of it in user space was one of the design goals of the stgt project.&lt;br /&gt;
&lt;br /&gt;
=== Tape ===&lt;br /&gt;
* [https://www14.software.ibm.com/webapp/iwm/web/pick.do?source=lstdd lin_tape driver] for IBM scsi/fc tape drives and libraries, open-source rewrite of the older proprietary IBMtape driver&lt;br /&gt;
* [http://lkml.org/lkml/2006/12/3/183 FTape driver], [http://lkml.org/lkml/2007/1/11/97 1], [http://web.archive.org/web/20021203052705/www.instmath.rwth-aachen.de/~heine/ftape/ 2]&lt;br /&gt;
* [http://www.informatik.uni-oldenburg.de/~delwi/trakker.html HP Colorado Trakker] tape driver&lt;br /&gt;
&lt;br /&gt;
=== Disk encryption ===&lt;br /&gt;
* [http://loop-aes.sf.net/ loop-AES] (uncooperative with kernel developers)&lt;br /&gt;
&lt;br /&gt;
== USB ==&lt;br /&gt;
* [http://svn.charonmedia.org/svn/vendor/spcp8x5/ Driver for spcp8x5 USB to serial adaptor.] Used in ACT Solutions HomePro/Zwave controller ZCU201.&lt;br /&gt;
* Eagle Chipset powered ASDL modem http://www.eagle-usb.org/&lt;br /&gt;
* PLX Tech NET 2272 USB controller [http://www.plxtech.com/files/products/net2000/software/selectiontool/NET_2272/Device-side_Software/Linux/NET_2272_Linux_2.6_Serial.htm PLX Tech NET 2272 USB Controller driver]&lt;br /&gt;
&lt;br /&gt;
== Video Input ==&lt;br /&gt;
&lt;br /&gt;
=== Web Cams ===&lt;br /&gt;
* Divio NW802 and related (various cameras, various chipsets). [http://nw802.sf.net/ SF project] very infrequently updated&lt;br /&gt;
* Ricoh R5U870-based Custom OEM Webcams : http://lsb.blogdns.com/ry5u870 http://marc.info/?l=linux-usb-devel&amp;amp;m=117803950126004&lt;br /&gt;
* ov511-new - adds additional decompression to the existing ov511 driver (ubuntu kernel) -- same as ov51x-jpeg? If so may not be suitable for in-kernel, see: http://www.rastageeks.org/ov51x-jpeg/index.php/Main_Page HansDeGoede is working on getting this into the mainline, decompression will go to userspace (libv4l)&lt;br /&gt;
* [http://www.ali.com.tw/eng/about/index.htm ALi] M5603c with ov7648 sensor webcams, as shipped in some Asus laptops, or Creative (e.g. [http://us.creative.com/products/product.asp?category=218&amp;amp;subcategory=219&amp;amp;product=14813 Live! Cam Voice] and [http://us.creative.com/products/product.asp?category=218&amp;amp;subcategory=219&amp;amp;product=15442 Video IM Pro]), probably Genuis SLIM321c. A functional driver developped as a sub-driver of GSPCAv2 (Jean-François Moine) exists at http://m560x-driver.svn.sourceforge.net/viewvc/m560x-driver/m560x/branches/m5603c-gspca/ . It needs some test or cleanup before going into gspca tree. Works for me for usb device '''0402:5603''' ALi Corp. USB 2.0 Q-tec Webcam 300 and for '''041e:4055''' Creative Technology, Ltd Live! Cam Video IM Pro. Note the ALi M5602 have nothing common with this driver and is already included in gspca tree.&lt;br /&gt;
=== V4L ===&lt;br /&gt;
* [http://marvel.sf.net/ V4L driver for Matrox Marvel G200-TV and G400-TV]&lt;br /&gt;
* [http://rivatv.sf.net/ RivaTV]: Enables video-in TV tuners that come with nVidia graphics cards.&lt;br /&gt;
* [http://www.jusst.de/hg/mantis] Video capture from Mantis based DVB cards - still considered as experimental by the driver author (Found link here: http://linuxtv.org/wiki/index.php/TerraTec_Cinergy_C_DVB-C)&lt;br /&gt;
* [http://www.linuxtv.org/v4lwiki/index.php/Trident_TM6000] The TV-Master TM6000 is an integrated Video decoder and USB bridge IC from Trident. There is an experimental patch that has several issues. Due to that, it is was not been included in tree, and doesn't compile with the latest kernels, due to the i2c changes.&lt;br /&gt;
* [http://gitorious.org/tw68 tw68] - V4L2 driver for Techwell TW6800 based boards&lt;br /&gt;
&lt;br /&gt;
== Video Output ==&lt;br /&gt;
* device3dfx kernel driver for Voodoo boards svn://sf.net/projects/glide&lt;br /&gt;
* [http://attila.kinali.ch/mga/ mga_vid] driver for Matrox cards&lt;br /&gt;
* radeonfb ATOM BIOS parser and support for newer cards http://lwn.net/Articles/215965/ http://thread.gmane.org/gmane.linux.kernel/530781&lt;br /&gt;
* DXR3 &amp;amp; Hollywood plus Mpeg2 Decoder card http://dxr3.sf.net/&lt;br /&gt;
* radeonlcd http://fdd.com/software/radeon/&lt;br /&gt;
&lt;br /&gt;
== Audio ==&lt;br /&gt;
* hardsid driver http://hardsid.sf.net/&lt;br /&gt;
* snd_bt-sco - bluetooth SCO sound driver (ubuntu kernel)&lt;br /&gt;
&lt;br /&gt;
== Input Devices ==&lt;br /&gt;
* Acer hotkey driver http://www.cakey.de/acerhk/ (Does not work on x86-64 because it calls 32 bit protected mode BIOS routines; it can't be ported to libx86 because this can currently only make 16 bit real mode BIOS calls) (Ubuntu and Mandriva kernels)&lt;br /&gt;
* ATI Remote Wonder Plus http://mythtv.wbond.net/remote_wonder_plus_linux/&lt;br /&gt;
* Creative DXR2 http://dxr2.sf.net (only works on linux-2.4)&lt;br /&gt;
* Panasonic hotkey driver http://www.da-cha.jp/letsnote&lt;br /&gt;
* Wacom tablets [http://linuxwacom.sourceforge.net Project homepage]&lt;br /&gt;
* lirc http://www.lirc.org (included in Fedora kernel) and the lirc drivers for Hauppauge cards at http://ivtvdriver.org&lt;br /&gt;
* [http://www.jan-steinhoff.de/linux/synaptics-usb.html Synaptics USB driver] for cPad and other USB touchpads&lt;br /&gt;
* lmpcm_usb - Logitech mediaplay cordless mouse driver (ubuntu kernel)&lt;br /&gt;
* xpc rc01 remote control - http://mathema.tician.de/node/416&lt;br /&gt;
* Aiptek/Trust USB tablets - http://sourceforge.net/projects/aiptektablet&lt;br /&gt;
&lt;br /&gt;
== Multiport Serial Devices ==&lt;br /&gt;
* Digi RealPort ethernet-connected multiport console/serial server [ftp://ftp1.digi.com/support/beta/linux/dgrp/ (dgrp)]&lt;br /&gt;
* Digi AccelePort C/X, XEM, Xr and EPC/X driver [ftp://ftp1.digi.com/support/beta/linux/dgap/ (dgap)]&lt;br /&gt;
* Digi AccelePort RAS and XP driver [ftp://ftp1.digi.com/support/beta/linux/dgdm/ (dgdm)]&lt;br /&gt;
* Digi Neo and ClassicBoard driver [ftp://ftp1.digi.com/support/beta/linux/dgnc/ (dgnc)]&lt;br /&gt;
* Equinox/Avocent ESP Serial Hub http://www.connectivity.avocent.com/support/download-drivers/&lt;br /&gt;
* Equinox/Avocent SST multiport serial http://www.connectivity.avocent.com/support/download-drivers/ - http://marc.info/?a=115098161800001&amp;amp;r=1&amp;amp;w=2 linux-kernel review&lt;br /&gt;
&lt;br /&gt;
== Data acquisition / custom device control ==&lt;br /&gt;
* dmx4linux http://llg.cubic.org/dmx4linux/ (like midi, but for lighting)&lt;br /&gt;
* GPIB/IEEE488 USB Controller, model NI GPIB-USB-HS by National Instruments. http://linux-gpib.sf.net/&lt;br /&gt;
* linuxclc http://sf.net/projects/linuxclc/ - &amp;quot;This is a Linux 2.4 driver for ISA, PC-104 and serial Indramat CLC cards for SERCOS motion control.&amp;quot;&lt;br /&gt;
* camac http://www.ifh.de/~ole/camac/ Wiener CC-16 ISA-CAMAC, Jorway J73A SCSI-CAMAC controllers, and a few others&lt;br /&gt;
* ccp http://psux1.kek.jp/~kohama/ccp/ccp.html CAMAC, TKO and Fastbus driver for Hoshin CCP-IBM(ISA) controller&lt;br /&gt;
* camdrv http://www.awa.tohoku.ac.jp/%7Esanshiro/kinoko/camdrv/index.html CAMAC driver for CC/7700-PCI,CC/7700-ISA,CC/7000-ISA,CCP (PCI/ISA),CCP (PCI-2703A)&lt;br /&gt;
* k2927/k2915/acc_unidaq http://www.elc.nias.ac.jp/~daq/software/ drivers for various KineticSystems CAMAC cards&lt;br /&gt;
&lt;br /&gt;
== Hardware monitoring (a.k.a lm_sensors) ==&lt;br /&gt;
* TODO table: http://www.lm-sensors.org/wiki/Devices&lt;br /&gt;
&lt;br /&gt;
== VME ==&lt;br /&gt;
* SIS1100/SIS3100 PCI to VME interface (VME is a bus architecture popular in high-end physics labs and mission-critical systems) - the existing Linux source can be found at http://www.struck.de/linux1100.htm&lt;br /&gt;
* [http://www.awa.tohoku.ac.jp/~sanshiro/kinoko-e/vmedrv/ vmedrv] is a device driver for Linux 2.x for the PCI-VME bus adapter Model 616/617/618/620 manufactured by SBS Technologies (Bit3).&lt;br /&gt;
&lt;br /&gt;
== Test/development cards ==&lt;br /&gt;
* ex10 ex10_i2c ex10_spi Modules for Amfeltec eX10 PCI Extender, GPL, included on accompanying CD only.&lt;br /&gt;
&lt;br /&gt;
== ACPI Support ==&lt;br /&gt;
* Experimental Toshiba ACPI Driver (needed for Toshset to control fan speeds, LCD brightness, etc.) http://memebeam.org/toys/ExperimentalToshibaAcpiDriver&lt;br /&gt;
* acer_acpi - Acer hardware control http://code.google.com/p/aceracpi&lt;br /&gt;
* fritzacpi - SuSE's 2.6 AVM kernel modules for fcclassic, fcpci, fcpcmcia, fcpnp, fcusb, fcusb2, fxusb_CZ, fxusb, e2220pc and e5520pc http://www.avm.de/ ftp://ftp.suse.com/pub/suse/i386/10.1/SUSE-Linux10.1-Beta3-Extra/suse/x86_64/km_fritzacpi.&lt;br /&gt;
&lt;br /&gt;
== Hardware offload ==&lt;br /&gt;
&lt;br /&gt;
Howler Screamer G.729 encode/decode offload card. http://www.howlertech.com/static/downloads/hfs-1.3.2.tar.gz&lt;br /&gt;
&lt;br /&gt;
== Non-Driver modules outside of the kernel tree ==&lt;br /&gt;
&lt;br /&gt;
== Filesystems ==&lt;br /&gt;
* Lustre [http://www.lustre.org]&lt;br /&gt;
* Read-only compressed loop blockdevice [http://debian-knoppix.alioth.debian.org/sources/ cloop]&lt;br /&gt;
* Reiser4 http://kernelnewbies.org/WhyReiser4IsNotIn &amp;amp; http://lkml.org/lkml/2006/7/28/180 &amp;amp; http://www.gossamer-threads.com/lists/engine?do=post_view_flat;post=668645;page=1;sb=post_latest_reply;so=ASC;mh=25;list=linux&lt;br /&gt;
* unionfs http://www.filesystems.org/project-unionfs.html in andrew morton`s -mm tree.&lt;br /&gt;
* NAND flash filesystem [http://www.yaffs.net/ YAFFS] ([http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/ cvs])&lt;br /&gt;
* novfs - Novell Filesystem (inside OpenSuSE kernel??)&lt;br /&gt;
* aufs http://aufs.sf.net/&lt;br /&gt;
* fusion proc filesystem - http://directfb.org/wiki/index.php/Fusion_Proc_Filesystem&lt;br /&gt;
* openafs - OpenAFS distributed filesystem http://www.openafs.org/&lt;br /&gt;
* shfs - Secure Shell File System http://shfs.sf.net/&lt;br /&gt;
* Redundant Array of Independent Filesystems - [ftp://ftp.fsl.cs.sunysb.edu/pub/raif/ source] see also the [http://www.filesystems.org/ papers]&lt;br /&gt;
** (This may not be the right category for the following) &lt;br /&gt;
* uloop - kernel driver for implementing loopdevice in userspace. http://aufs.cvs.sf.net/aufs/aufs/sample/uloop/00readme.txt?view=log&lt;br /&gt;
* dm-userspace - similar to uloop, but different, device-mapper-style implementation. http://wiki.xensource.com/xenwiki/DmUserspace&lt;br /&gt;
* cowloop - copy-on-write loop driver to be used on top of any other block driver. http://www.atcomputing.nl/Tools/cowloop/&lt;br /&gt;
* dm-bbr - Bad Block relocation target (gentoo kernel)&lt;br /&gt;
* cdemu - mount bin/cue cd images http://cdemu.sourceforge.net/&lt;br /&gt;
&lt;br /&gt;
== Network Block Devices ==&lt;br /&gt;
* [http://www.drbd.org/ DRBD]&lt;br /&gt;
* [http://www.it.uc3m.es/~ptb/nbd/ Enhanced Network Block Device (enbd)]&lt;br /&gt;
* [http://sourceware.org/cluster/gnbd/ GNBD]&lt;br /&gt;
* [http://lpk.com.price.ru/~lelik/AoE/ vblade-kernel] for exporting blockdevices via AoE (ATA Over Ethernet)&lt;br /&gt;
* [http://freshmeat.net/projects/kvblade/ kvblade] ditto, but different implementation&lt;br /&gt;
&lt;br /&gt;
== LSM (Linux Security Modules) ==&lt;br /&gt;
* Dazuko http://www.dazuko.org/&lt;br /&gt;
* LIDS http://www.lids.org/&lt;br /&gt;
* MultiADM http://jengelh.medozas.de/projects/multiadm/&lt;br /&gt;
* TALPA http://sf.net/projects/talpa/ Intercepts file accesses and allows userspace daemons to vet them. Part of Sophos security products. Please mind discussion thread at http://marc.info/?l=linux-kernel&amp;amp;m=119625408226843&amp;amp;w=2&lt;br /&gt;
** (This may not be the right category for the following) &lt;br /&gt;
* grsecurity, gadmin and PAX http://grsecurity.org/&lt;br /&gt;
* McAfee LinuxShield&lt;br /&gt;
* Sophos AntiVirus&lt;br /&gt;
* Exec Shield http://en.wikipedia.org/wiki/Exec_Shield , (included in Fedora kernel)&lt;br /&gt;
&lt;br /&gt;
== Virtualization ==&lt;br /&gt;
* [http://en.wikipedia.org/wiki/QEMU#KQEMU kqemu] http://www.nongnu.org/qemu/download.html&lt;br /&gt;
* VirtualBox virtualization drivers http://www.virtualbox.org/wiki/Downloads&lt;br /&gt;
* various VMware drivers as part of the open-vm-tools package http://open-vm-tools.sf.net/&lt;br /&gt;
* Mac On Linux - http://mac-on-linux.sf.net/&lt;br /&gt;
&lt;br /&gt;
== Architectures ==&lt;br /&gt;
* Linux/98 for PC-98 NEC arch http://linux98.sourceforge.jp/ - deleted by [http://lkml.org/lkml/2003/1/19/1 1], [http://lkml.org/lkml/2006/2/10/71 2]&lt;br /&gt;
* [http://www.linuxdevices.com/products/PD6574796610.html NEC Osprey board] (vr4181) [http://lkml.org/lkml/2005/8/7/57 1]&lt;br /&gt;
* [http://elinux.org/Linux_Tiny Linux Tiny] patchset to minimize memory footprint and enable booting on embedded and old i386 devices (maintained by Sony)&lt;br /&gt;
* VAX port http://linux-vax.sf.net/ http://git.kernel.org/gitweb.cgi?p=linux/kernel/git/jbglaw/vax-linux.git;a=summary git tree&lt;br /&gt;
* DENX tree for various embedded architectures: http://www.denx.de/en/Software/GIT&lt;br /&gt;
* Tom Tom kernel ARM port and drivers http://www.tomtom.com/gpl&lt;br /&gt;
&lt;br /&gt;
== Uncategorised ==&lt;br /&gt;
* Catweasel Advanced Floppy Controller driver http://www.soundtracker.org/raw/cwfloppy/&lt;br /&gt;
* Catweasel i/o device drivers... driver for the joystick/mice/keyboard parts (sid part is covered by compatible hardsid, see Audio section), see above for the floppy controller part http://llg.cubic.org/cw/&lt;br /&gt;
* parallel port hardware http://www-stud.ims.uni-stuttgart.de/~voegelas/pcf.html&lt;br /&gt;
* speakup http://www.linux-speakup.org/&lt;br /&gt;
* Texas Instruments UltraMedia Firmware Loader http://penguin-breeder.org/kernel&lt;br /&gt;
* PJB100 mp3 player http://openpjb.sf.net/ with patches for recent kernels appearing at http://tech.groups.yahoo.com/group/PJB100-mp3/&lt;br /&gt;
* ATOP process counters http://www.atcomputing.nl/Tools/atop/kernpatch.html&lt;br /&gt;
* LTTng http://ltt.polymtl.ca/&lt;br /&gt;
* http://rick.vanrein.org/linux/badram/ provides support for damaged RAM&lt;br /&gt;
* oms&lt;br /&gt;
* heci (ubuntu kernel)&lt;br /&gt;
* gc-usb (ubuntu kernel)&lt;br /&gt;
* rfkill (ubuntu kernel) -- already in mainline? See Documentation/rfkill.txt in the current kernel tree&lt;br /&gt;
* tlsup (ubuntu kernel)&lt;br /&gt;
* via_chrome9 (ubuntu kernel)&lt;br /&gt;
* fasm7400 - rf kill switch for Fujitsu Siemens Amilo M7400 laptop (ubuntu kernel)&lt;br /&gt;
* thinkpad_ec - thinkpad embedded controller lpc3 functions, will not be accepted upstream due to authorship issues (written by an anonymous developer). (ubuntu kernel)&lt;br /&gt;
* tp_smapi - thinkpad SMAPI support, will not be accepted upstream due to authorship issues (written by an anonymous developer). (ubuntu kernel)&lt;br /&gt;
* SGI &amp;quot;ProPack&amp;quot;&lt;br /&gt;
* fbcondor - framebuffer console decoration (gentoo kernel)&lt;br /&gt;
* airt - advanced incident response assistant tools - http://159.226.5.93/projects/airt.htm&lt;br /&gt;
* omnibook - HP laptop support http://sf.net/projects/omnibook&lt;br /&gt;
* tpctl - thinkpad system control kernel modules http://tpctl.sf.net&lt;br /&gt;
* usbirboy - homemade ir USB receiver http://usbirboy.sf.net/&lt;br /&gt;
* parapin - parallel port pin kernel module http://parapin.sf.net/&lt;br /&gt;
* legousb - lego mindstorms usb tower kernel driver http://legousb.sf.net/&lt;br /&gt;
* sysprof - system-wide profiler http://www.daimi.au.dk/~sandmann/sysprof/&lt;br /&gt;
* svgalib - svga graphics on the console http://www.svgalib.org/&lt;br /&gt;
* line6usb - usb driver for line6 PODs and the Variax workbench http://www.tanzband-scream.at/line6/&lt;br /&gt;
* packetcommand - driver for the em84xx dvd disc access http://www.htpc-forum.de&lt;br /&gt;
* em8300 - RealMagic Hollywood+/Creative DXR3 video decoder driver http://dxr3.sf.net&lt;br /&gt;
* em84xx - em4xx based mpeg-decoder card driver http://sf.net/projects/em84xx/&lt;br /&gt;
* fsam7400 - software killswitch for F-S Amilo laptops and compatibles http://zwobbl.homelinux.net&lt;br /&gt;
* pcfclock - driver for the parallel port radio clock sold by Conrad Electronic http://www-stud.ims.uni-stuttgart.de/~voegelas/pcf.html&lt;br /&gt;
* rlocate - locate implementation that is always up-to-date http://rlocate.sf.net/&lt;br /&gt;
* Crash Utility memory driver http://people.redhat.com/anderson/ (included in Fedora kernel)&lt;br /&gt;
* utrace Infrastructure for tracing and debugging user processes: http://people.redhat.com/roland/utrace/ (included in Fedora kernel)&lt;br /&gt;
* asus_eee - interface for access to eeepc internals (e.g. fan speed): http://code.google.com/p/eeepc-linux/&lt;br /&gt;
* sony - (old) kernels for Sony televisions, set top boxes and similar http://products.sel.sony.com/opensource/&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ012</id>
		<title>PRJ012</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ012"/>
				<updated>2012-05-07T03:19:18Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Altera FPGA PCI Express core with Chaining DMA ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Field programmable gate arrays (FPGA) more and more often come with a PCI Express implementation, either a soft core (i.e. as programmable logic) or as a hard core (i.e. as silicon on-chip). Altera's PCI Express Megacore can be used to instantiate such a core for most FPGA's such as Cyclone II, III, Arria I, II, Stratix II, III or IV. It uses either the on-board transceivers or an external PCIe PHY chip.&lt;br /&gt;
&lt;br /&gt;
The Megacore will instantiate an example end point reference design called &amp;quot;Chaining DMA&amp;quot; which includes a small on-chip memory, as well as a chaining DMA controller that fetches a descriptor table from Root Complex memory and performs the DMA copies in the table.&lt;br /&gt;
&lt;br /&gt;
=== Driver ===&lt;br /&gt;
&lt;br /&gt;
This Linux device driver controls the Chaining DMA application and acts as a working reference design.&lt;br /&gt;
* The driver has appeared in the drivers/staging area of the linux-next GIT tree.&lt;br /&gt;
&lt;br /&gt;
=== Progress ===&lt;br /&gt;
&lt;br /&gt;
==== To Do ====&lt;br /&gt;
&lt;br /&gt;
* Implement the character device file operations, have read and write map to synchronous DMA transfers&lt;br /&gt;
* Implement asynchronous building of descriptor tables while the DMA engine is running.&lt;br /&gt;
&lt;br /&gt;
==== Finished ====&lt;br /&gt;
&lt;br /&gt;
* Very basic character device interface.&lt;br /&gt;
&lt;br /&gt;
=== Boards ===&lt;br /&gt;
&lt;br /&gt;
* Altera Cyclone II PCI Express &amp;quot;Sendero&amp;quot; development board called, with a Philips/NXP PX1011A x1 PHY.&lt;br /&gt;
* Altera's Arria GX PCIe development board, http://www.altera.com/products/devkits/altera/kit-arriagx.html&lt;br /&gt;
* Numerous other boards&lt;br /&gt;
&lt;br /&gt;
=== PCI Express core configuration ===&lt;br /&gt;
&lt;br /&gt;
* The current driver-in-development is targetting cores generated with the PCI Express Compiler version 8.1. Goal is to detect and support newer versions.&lt;br /&gt;
* The core can be configured as &amp;quot;Legacy&amp;quot; or &amp;quot;Native&amp;quot; PCI Express End Point. Goal is to support both options.&lt;br /&gt;
* BAR[0] size must be configured for 32kiB or more.&lt;br /&gt;
* BAR[2] size must be configured for 256 bytes or more. This is where the Root Complex (i.e. CPU) memory address of the DMA descriptor tables is written and where the DMA is initialized.&lt;br /&gt;
* BAR address sizes can be 32-bit or 64-bit. Goal is to properly detect and support both.&lt;br /&gt;
* The Device ID and Vendor ID must be unchanged, i.e. 0x???? and 0x????. You may change the Sub system vendor and device ID to your liking.&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* PCI Express Compiler User Guide 8.0, especially chapter 7 applies. http://www.altera.com/literature/ug/ug_pci_express.pdf&lt;br /&gt;
* AlteraForum postings, especially this thread: http://www.alteraforum.org/forum/showthread.php?t=2987&amp;amp;page=1&lt;br /&gt;
* http://www.altera.com/products/devkits/altera/kit-arriagx.html&lt;br /&gt;
&lt;br /&gt;
=== DMA Header (in End Point memory BAR[2]) ===&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!address&lt;br /&gt;
!field&lt;br /&gt;
!DMA Read or Write&lt;br /&gt;
!comment&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|Global Control &amp;amp; Number of Descriptors&lt;br /&gt;
|W&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|Bus Address (upper) of Descriptor Table&lt;br /&gt;
|W&lt;br /&gt;
|Points to a table in Root Complex memory&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|Bus Address (lower) of Descriptor Table&lt;br /&gt;
|W&lt;br /&gt;
|-&lt;br /&gt;
|0x0c&lt;br /&gt;
|Reserved &amp;amp; Last Descriptor Available (RCLAST)&lt;br /&gt;
|W&lt;br /&gt;
|RCLAST = 0 means descriptor #0 is ready for processing by the End Point&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|Global Control &amp;amp; Number of Descriptors&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|Bus Address (upper) of Descriptor Table&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|Bus Address (lower) of Descriptor Table&lt;br /&gt;
|R&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|0x1c&lt;br /&gt;
|Reserved &amp;amp; Last Descriptor Available (RCLAST)&lt;br /&gt;
|R&lt;br /&gt;
|RCLAST = 0 means descriptor #0 is ready to be acted-upon by the End Point&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* The fields must be written by DWORD writes, i.e. in Linux use iowrite32().&lt;br /&gt;
* The fields only have write access. Reading from these address will return a PCIe error (this can hang your system!).&lt;br /&gt;
* Writing to the 0x0c or 0x1c location starts the corresponding DMA operation.&lt;br /&gt;
* Does the design support DMA read and write operation concurrently?&lt;br /&gt;
* The Root Complex may increment RCLAST during the DMA transfer (this is not tested yet).&lt;br /&gt;
&lt;br /&gt;
=== DMA Table (in Root Complex memory) ===&lt;br /&gt;
Each Table starts with four 32-bits words (16 bytes) in which the DMA controller will write its progress, followed by an array of descriptors, each four 32-bits words (16 bytes) in size.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!address&lt;br /&gt;
!field&lt;br /&gt;
!Access&lt;br /&gt;
!comment&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|Reserved&lt;br /&gt;
|R/W&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|Reserved&lt;br /&gt;
|R/W&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|Reserved&lt;br /&gt;
|R/W&lt;br /&gt;
|-&lt;br /&gt;
|0x0c&lt;br /&gt;
|Reserved &amp;amp; Last Descriptor Completed (EPLAST)&lt;br /&gt;
|R/W&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|Control &amp;amp; Transfer Length (DWORDS)&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|End Point address&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|Bus Address (msb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x1c&lt;br /&gt;
|Bus Address (lsb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x20&lt;br /&gt;
|Control &amp;amp; Transfer Length (DWORDS)&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|0x24&lt;br /&gt;
|End Point address&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|0x28&lt;br /&gt;
|Bus Address (msb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|0x2c&lt;br /&gt;
|Bus Address (lsb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* The total table may not exceed 4096 bytes or cross 4096 boundaries. pci_alloc_consistent(..., 4096, ...) will do that for us.&lt;br /&gt;
* 4096 bytes gives 255 descriptors. Suppose that each descriptor describes a 4096 byte copy, this gives 255 * 4096 is just a little less of 1 MiB per DMA operation.&lt;br /&gt;
&lt;br /&gt;
== Linux Kernel API's ==&lt;br /&gt;
&lt;br /&gt;
Scatterlists&lt;br /&gt;
* http://lwn.net/Articles/234617/&lt;br /&gt;
* http://lwn.net/Articles/256368/&lt;br /&gt;
* http://lwn.net/Articles/263343/&lt;br /&gt;
&lt;br /&gt;
== Kernel configuration (Kconfig) entry ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config ALTPCIECHDMA&lt;br /&gt;
        tristate &amp;quot;Altera PCI Express Chaining DMA Test Driver&amp;quot;&lt;br /&gt;
        ---help---&lt;br /&gt;
          The Altera PCIe Chaining DMA test driver will perform tests against   &lt;br /&gt;
          FPGA/ASIC devices that have Altera's PCI Express core with the&lt;br /&gt;
          Chaining DMA application generated by the Megacore.&lt;br /&gt;
&lt;br /&gt;
          Devices range from Cyclone II FPGA with soft PCIe IP core up to a&lt;br /&gt;
          Stratix IV with a silicon PCIe core.&lt;br /&gt;
&lt;br /&gt;
          This driver controls the DMA engine by performing DMA transfers     &lt;br /&gt;
          in loop-back fashion and doing memory compares to verify the loop-&lt;br /&gt;
          back was succesfull.      &lt;br /&gt;
&lt;br /&gt;
          The driver acts as a test driver to verify your PCIe core. It may&lt;br /&gt;
          be used as a basis for your custom logic. &lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Kernel Makefile entry ==&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
obj-$(ALTPCIECHDMA)             += altpciechdma.c&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ012</id>
		<title>PRJ012</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ012"/>
				<updated>2012-05-07T03:18:54Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;== Altera FPGA PCI Express core with Chaining DMA ==  === Introduction ===  Field programmable gate arrays (FPGA) more and more often come with a PCI Express implementation, e...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Altera FPGA PCI Express core with Chaining DMA ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Field programmable gate arrays (FPGA) more and more often come with a PCI Express implementation, either a soft core (i.e. as programmable logic) or as a hard core (i.e. as silicon on-chip). Altera's PCI Express Megacore can be used to instantiate such a core for most FPGA's such as Cyclone II, III, Arria I, II, Stratix II, III or IV. It uses either the on-board transceivers or an external PCIe PHY chip.&lt;br /&gt;
&lt;br /&gt;
The Megacore will instantiate an example end point reference design called &amp;quot;Chaining DMA&amp;quot; which includes a small on-chip memory, as well as a chaining DMA controller that fetches a descriptor table from Root Complex memory and performs the DMA copies in the table.&lt;br /&gt;
&lt;br /&gt;
=== Driver ===&lt;br /&gt;
&lt;br /&gt;
This Linux device driver controls the Chaining DMA application and acts as a working reference design.&lt;br /&gt;
* The driver has appeared in the drivers/staging area of the linux-next GIT tree.&lt;br /&gt;
&lt;br /&gt;
=== Progress ===&lt;br /&gt;
&lt;br /&gt;
==== To Do ====&lt;br /&gt;
&lt;br /&gt;
* Implement the character device file operations, have read and write map to synchronous DMA transfers&lt;br /&gt;
* Implement asynchronous building of descriptor tables while the DMA engine is running.&lt;br /&gt;
&lt;br /&gt;
==== Finished ====&lt;br /&gt;
&lt;br /&gt;
* Very basic character device interface.&lt;br /&gt;
&lt;br /&gt;
=== Boards ===&lt;br /&gt;
&lt;br /&gt;
* Altera Cyclone II PCI Express &amp;quot;Sendero&amp;quot; development board called, with a Philips/NXP PX1011A x1 PHY.&lt;br /&gt;
* Altera's Arria GX PCIe development board, http://www.altera.com/products/devkits/altera/kit-arriagx.html&lt;br /&gt;
* Numerous other boards&lt;br /&gt;
&lt;br /&gt;
=== PCI Express core configuration ===&lt;br /&gt;
&lt;br /&gt;
* The current driver-in-development is targetting cores generated with the PCI Express Compiler version 8.1. Goal is to detect and support newer versions.&lt;br /&gt;
* The core can be configured as &amp;quot;Legacy&amp;quot; or &amp;quot;Native&amp;quot; PCI Express End Point. Goal is to support both options.&lt;br /&gt;
* BAR[0] size must be configured for 32kiB or more.&lt;br /&gt;
* BAR[2] size must be configured for 256 bytes or more. This is where the Root Complex (i.e. CPU) memory address of the DMA descriptor tables is written and where the DMA is initialized.&lt;br /&gt;
* BAR address sizes can be 32-bit or 64-bit. Goal is to properly detect and support both.&lt;br /&gt;
* The Device ID and Vendor ID must be unchanged, i.e. 0x???? and 0x????. You may change the Sub system vendor and device ID to your liking.&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
&lt;br /&gt;
* PCI Express Compiler User Guide 8.0, especially chapter 7 applies. http://www.altera.com/literature/ug/ug_pci_express.pdf&lt;br /&gt;
* AlteraForum postings, especially this thread: http://www.alteraforum.org/forum/showthread.php?t=2987&amp;amp;page=1&lt;br /&gt;
* http://www.altera.com/products/devkits/altera/kit-arriagx.html&lt;br /&gt;
&lt;br /&gt;
=== DMA Header (in End Point memory BAR[2]) ===&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!address&lt;br /&gt;
!field&lt;br /&gt;
!DMA Read or Write&lt;br /&gt;
!comment&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|Global Control &amp;amp; Number of Descriptors&lt;br /&gt;
|W&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|Bus Address (upper) of Descriptor Table&lt;br /&gt;
|W&lt;br /&gt;
|Points to a table in Root Complex memory&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|Bus Address (lower) of Descriptor Table&lt;br /&gt;
|W&lt;br /&gt;
|-&lt;br /&gt;
|0x0c&lt;br /&gt;
|Reserved &amp;amp; Last Descriptor Available (RCLAST)&lt;br /&gt;
|W&lt;br /&gt;
|RCLAST = 0 means descriptor #0 is ready for processing by the End Point&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|Global Control &amp;amp; Number of Descriptors&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|Bus Address (upper) of Descriptor Table&lt;br /&gt;
|R&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|Bus Address (lower) of Descriptor Table&lt;br /&gt;
|R&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|0x1c&lt;br /&gt;
|Reserved &amp;amp; Last Descriptor Available (RCLAST)&lt;br /&gt;
|R&lt;br /&gt;
|RCLAST = 0 means descriptor #0 is ready to be acted-upon by the End Point&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* The fields must be written by DWORD writes, i.e. in Linux use iowrite32().&lt;br /&gt;
* The fields only have write access. Reading from these address will return a PCIe error (this can hang your system!).&lt;br /&gt;
* Writing to the 0x0c or 0x1c location starts the corresponding DMA operation.&lt;br /&gt;
* Does the design support DMA read and write operation concurrently?&lt;br /&gt;
* The Root Complex may increment RCLAST during the DMA transfer (this is not tested yet).&lt;br /&gt;
&lt;br /&gt;
=== DMA Table (in Root Complex memory) ===&lt;br /&gt;
Each Table starts with four 32-bits words (16 bytes) in which the DMA controller will write its progress, followed by an array of descriptors, each four 32-bits words (16 bytes) in size.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
!address&lt;br /&gt;
!field&lt;br /&gt;
!Access&lt;br /&gt;
!comment&lt;br /&gt;
|-&lt;br /&gt;
|0x00&lt;br /&gt;
|Reserved&lt;br /&gt;
|R/W&lt;br /&gt;
|-&lt;br /&gt;
|0x04&lt;br /&gt;
|Reserved&lt;br /&gt;
|R/W&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|0x08&lt;br /&gt;
|Reserved&lt;br /&gt;
|R/W&lt;br /&gt;
|-&lt;br /&gt;
|0x0c&lt;br /&gt;
|Reserved &amp;amp; Last Descriptor Completed (EPLAST)&lt;br /&gt;
|R/W&lt;br /&gt;
|-&lt;br /&gt;
|0x10&lt;br /&gt;
|Control &amp;amp; Transfer Length (DWORDS)&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x14&lt;br /&gt;
|End Point address&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x18&lt;br /&gt;
|Bus Address (msb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x1c&lt;br /&gt;
|Bus Address (lsb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #0&lt;br /&gt;
|-&lt;br /&gt;
|0x20&lt;br /&gt;
|Control &amp;amp; Transfer Length (DWORDS)&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|0x24&lt;br /&gt;
|End Point address&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|0x28&lt;br /&gt;
|Bus Address (msb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|0x2c&lt;br /&gt;
|Bus Address (lsb) for Root Complex memory&lt;br /&gt;
|R/W&lt;br /&gt;
|Descriptor #1&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* The total table may not exceed 4096 bytes or cross 4096 boundaries. pci_alloc_consistent(..., 4096, ...) will do that for us.&lt;br /&gt;
* 4096 bytes gives 255 descriptors. Suppose that each descriptor describes a 4096 byte copy, this gives 255 * 4096 is just a little less of 1 MiB per DMA operation.&lt;br /&gt;
&lt;br /&gt;
== Linux Kernel API's ===&lt;br /&gt;
&lt;br /&gt;
Scatterlists&lt;br /&gt;
* http://lwn.net/Articles/234617/&lt;br /&gt;
* http://lwn.net/Articles/256368/&lt;br /&gt;
* http://lwn.net/Articles/263343/&lt;br /&gt;
&lt;br /&gt;
== Kernel configuration (Kconfig) entry ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
config ALTPCIECHDMA&lt;br /&gt;
        tristate &amp;quot;Altera PCI Express Chaining DMA Test Driver&amp;quot;&lt;br /&gt;
        ---help---&lt;br /&gt;
          The Altera PCIe Chaining DMA test driver will perform tests against   &lt;br /&gt;
          FPGA/ASIC devices that have Altera's PCI Express core with the&lt;br /&gt;
          Chaining DMA application generated by the Megacore.&lt;br /&gt;
&lt;br /&gt;
          Devices range from Cyclone II FPGA with soft PCIe IP core up to a&lt;br /&gt;
          Stratix IV with a silicon PCIe core.&lt;br /&gt;
&lt;br /&gt;
          This driver controls the DMA engine by performing DMA transfers     &lt;br /&gt;
          in loop-back fashion and doing memory compares to verify the loop-&lt;br /&gt;
          back was succesfull.      &lt;br /&gt;
&lt;br /&gt;
          The driver acts as a test driver to verify your PCIe core. It may&lt;br /&gt;
          be used as a basis for your custom logic. &lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Kernel Makefile entry&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
obj-$(ALTPCIECHDMA)             += altpciechdma.c&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ008</id>
		<title>PRJ008</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ008"/>
				<updated>2012-05-07T02:54:01Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;Patch for original driver can be found at: * http://www.madingley.org/macmini/ * http://www.madingley.org/macmini/kernel/ir.patch&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Patch for original driver can be found at:&lt;br /&gt;
* http://www.madingley.org/macmini/&lt;br /&gt;
* http://www.madingley.org/macmini/kernel/ir.patch&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ002</id>
		<title>PRJ002</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ002"/>
				<updated>2012-05-07T02:53:33Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;== Summary == VOIP gateway solution needs a driver.  The company needs a sound type driver like the Au600 device: * http://alsa.opensrc.org/Au600 for their reference platform.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
VOIP gateway solution needs a driver.&lt;br /&gt;
&lt;br /&gt;
The company needs a sound type driver like the Au600 device:&lt;br /&gt;
* http://alsa.opensrc.org/Au600&lt;br /&gt;
for their reference platform.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ001</id>
		<title>PRJ001</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ001"/>
				<updated>2012-05-07T02:52:51Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;== Summary == Create drivers for TI TMP401, Analog Devices AD9833, and Philips PCA9552. Some information has been received from requesting company and just putting things toge...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
Create drivers for TI TMP401, Analog Devices AD9833, and Philips PCA9552. Some information has been received from requesting company and just putting things together now. They are using these ICs with an AT91SAM9261 which is an ARM926EJ-S-based 32-bit RISC microcontroller. The company is currently using a 2.6.19 kernel but will likely move to the 2.6.21 (or newer) kernel soon.&lt;br /&gt;
&lt;br /&gt;
Hardware monitoring IC will follow Documentation/hwmon/sysfs-interface.&lt;br /&gt;
&lt;br /&gt;
LED driver IC will follow Documentation/leds-class.txt.&lt;br /&gt;
&lt;br /&gt;
== Data Sheets ==&lt;br /&gt;
{|&lt;br /&gt;
|http://focus.ti.com/docs/prod/folders/print/tmp401.html&lt;br /&gt;
|TI TMP401 Data Sheet&lt;br /&gt;
|Temperature Sensor&lt;br /&gt;
|-&lt;br /&gt;
|http://www.analog.com/UploadedFiles/Data_Sheets/AD9833.pdf&lt;br /&gt;
|AD9833 Data Sheet&lt;br /&gt;
|Programmable Waveform Generator&lt;br /&gt;
|-&lt;br /&gt;
|http://www.nxp.com/acrobat_download/datasheets/PCA9552_5.pdf&lt;br /&gt;
|PCA9552 Data Sheet&lt;br /&gt;
|16 bit LED driver&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ013</id>
		<title>PRJ013</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ013"/>
				<updated>2012-05-07T02:49:47Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;== Summary ==  Developing a driver for the Zarlink Ethernet Switch(ZL50408)  Functonalities required: # read/write switch configuration registers # send /receive control comma...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
&lt;br /&gt;
Developing a driver for the Zarlink Ethernet Switch(ZL50408)&lt;br /&gt;
&lt;br /&gt;
Functonalities required:&lt;br /&gt;
# read/write switch configuration registers&lt;br /&gt;
# send /receive control command frames - for statistics collection, MAC address learning, aging etc.&lt;br /&gt;
# send/ receive Ethernet data frames&lt;br /&gt;
&lt;br /&gt;
Hardware Interface:&lt;br /&gt;
16 bit CPU interface connected to the local bus of Host Processor&lt;br /&gt;
&lt;br /&gt;
== Design ==&lt;br /&gt;
* Operations 1 &amp;amp; 2 exported using a char interfaces. say /dev/zlctrl.&lt;br /&gt;
&lt;br /&gt;
Userspace applications can make use of ioctls for configuration register access and read/write system calls to send/receive control frames.&lt;br /&gt;
* Operation 3 exported using network driver interface. say eth1&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
http://agata.pd.infn.it/LLP_Carrier/New_ATCA_Carrier_web/Appnotes_And_Reference_Designs/Zarlink_Application_Notes/ZLAN_026_AppNote_Jun06.pdf&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/PRJ003</id>
		<title>PRJ003</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/PRJ003"/>
				<updated>2012-05-07T02:47:55Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;== Summary ==  Developing a simple driver interface for time code reader/generator PCI card and USB devices. The products have 256 byte memory footprint (I/O space similar to ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
&lt;br /&gt;
Developing a simple driver interface for time code reader/generator PCI card and USB devices. The products have 256 byte memory footprint (I/O space similar to a PC COM port).&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
# Read/write into the hardware registers via API or IOCTL calls&lt;br /&gt;
# Handle hardware interrupt callback to pass the &amp;quot;time&amp;quot; data so it can be handled with a low latency&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Project_Status</id>
		<title>Project Status</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Project_Status"/>
				<updated>2012-05-07T02:46:51Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;== Projects currently under development == {| !align=&amp;quot;left&amp;quot; | Project ID  !Project description !Developer(s) !Project Manager !Status  |- |PRJ003 |USB/PCI driver for video...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Projects currently under development ==&lt;br /&gt;
{|&lt;br /&gt;
!align=&amp;quot;left&amp;quot; | Project ID &lt;br /&gt;
!Project description&lt;br /&gt;
!Developer(s)&lt;br /&gt;
!Project Manager&lt;br /&gt;
!Status &lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ003]]&lt;br /&gt;
|USB/PCI driver for video timestamp device&lt;br /&gt;
|BrandonPhilips&lt;br /&gt;
|GregKH&lt;br /&gt;
|[http://lkml.org/lkml/2009/1/27/314 patch] signed off and in GregKH's tree - should be in 2.6.29&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ004]]&lt;br /&gt;
|Highspeed datacapture device&lt;br /&gt;
|unknown&lt;br /&gt;
|Jaya Kumar&lt;br /&gt;
|under development&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ005]]&lt;br /&gt;
|cleanup existing USB driver&lt;br /&gt;
|Steve&lt;br /&gt;
|GregKH&lt;br /&gt;
|under development&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ006]]&lt;br /&gt;
|video digital demodulator driver&lt;br /&gt;
|unknown&lt;br /&gt;
|Max&lt;br /&gt;
|awaiting hardware completion&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ007]]&lt;br /&gt;
|tty over TCP driver&lt;br /&gt;
|None&lt;br /&gt;
|Saravana Krishnamurthy&lt;br /&gt;
| Failed dues to absence of time. New developers needed.&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ009]]&lt;br /&gt;
|firewire DVB driver&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|under development&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ010]]&lt;br /&gt;
|1Gb network driver&lt;br /&gt;
|GregKH&lt;br /&gt;
|GregKH&lt;br /&gt;
|cleanups needed, basic functionality finished&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ011]]&lt;br /&gt;
|10Gb network driver&lt;br /&gt;
|GregKH&lt;br /&gt;
|GregKH&lt;br /&gt;
|cleanups needed, basic functionality finished&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ013]]&lt;br /&gt;
|Ethernet Switch Device Driver&lt;br /&gt;
|Linu Cherian, AustinMarton&lt;br /&gt;
|Caleb Gordon&lt;br /&gt;
|under development&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Projects completed ==&lt;br /&gt;
{|&lt;br /&gt;
!align=&amp;quot;left&amp;quot; | Project ID&lt;br /&gt;
!Project description&lt;br /&gt;
!Developer(s)&lt;br /&gt;
!Project Manager&lt;br /&gt;
!Status&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ001]]&lt;br /&gt;
|3 i2c devices&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ002]]&lt;br /&gt;
|VOIP gateway driver&lt;br /&gt;
|unknown&lt;br /&gt;
|Jaya Kumar&lt;br /&gt;
|company changed hardware and no driver is needed&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ008]]&lt;br /&gt;
|macMini IR driver&lt;br /&gt;
|GregKH&lt;br /&gt;
|GregKH&lt;br /&gt;
|completed&lt;br /&gt;
|-&lt;br /&gt;
|[[PRJ012]]&lt;br /&gt;
|Altera FPGA PCIe core&lt;br /&gt;
|LeonWoestenberg&lt;br /&gt;
|LeonWoestenberg&lt;br /&gt;
|completed&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[User:GregKH]] can assign you a new project id, just ask him for one if you really want to create a new project or add an [http://www.proessay.com  essay paper].&lt;br /&gt;
&lt;br /&gt;
Please use wiki syntax to provide as much information as possible (links to device descriptions, vendor sites, etc.)&lt;br /&gt;
&lt;br /&gt;
Status is color coded between &amp;lt;span style=&amp;quot;color:#00ff00&amp;quot;&amp;gt;green&amp;lt;/span&amp;gt; and &amp;lt;span style=&amp;quot;color:#ff0000&amp;quot;&amp;gt;red&amp;lt;/span&amp;gt;. Use red only for when there are blocking issues in the project of a magnitude warranting you flagging peoples' attention.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Developers</id>
		<title>Developers</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Developers"/>
				<updated>2012-05-07T02:28:06Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;Developers are essential for the success of the Linux Driver project.  Their tasks are: * working with the companies to determine the proper type of driver that is needed for ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Developers are essential for the success of the Linux Driver project.&lt;br /&gt;
&lt;br /&gt;
Their tasks are:&lt;br /&gt;
* working with the companies to determine the proper type of driver that is needed for the device.&lt;br /&gt;
* design and develop the Linux kernel driver according to the Linux Kernel coding style.&lt;br /&gt;
* work with the project manager to help answer any questions that the company might have.&lt;br /&gt;
* submit the created driver to the Linux kernel mailing lists for inclusion in the main kernel source tree.&lt;br /&gt;
* If possible, maintain the driver over time, answering user emails that report bugs and other problems when the driver is used.&lt;br /&gt;
&lt;br /&gt;
If you wish to become a developer on this project (we can always use more), please sign up on the developer mailing list at http://driverdev.linuxdriverproject.org/mailman/listinfo/devel&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Mailing_Lists</id>
		<title>Mailing Lists</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Mailing_Lists"/>
				<updated>2012-05-07T02:27:28Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;There is just one mailing list for the Linux Driver Project:  == Developers == The developer mailing list is where the new projects are announced and asked for volunteers from...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There is just one mailing list for the Linux Driver Project:&lt;br /&gt;
&lt;br /&gt;
== Developers ==&lt;br /&gt;
The developer mailing list is where the new projects are announced and asked for volunteers from, discussions about the project either technical or procedural, and is the general location for anyone wishing to help out with the Linux Driver Project.&lt;br /&gt;
&lt;br /&gt;
The list is open to non-members, but HTML is not allowed on the list to cut down on spam. Anyone is allowed to join the list if you wish to help out or ask questions.&lt;br /&gt;
&lt;br /&gt;
More information on how to join the list, and to see the archives of it, can be found at: http://driverdev.linuxdriverproject.org/mailman/listinfo/devel&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Frequently_Asked_Questions</id>
		<title>Frequently Asked Questions</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Frequently_Asked_Questions"/>
				<updated>2012-05-07T02:26:03Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;Q: You forgot to mention the most obvious benefit to the company, &amp;quot;They might sell more of their devices!&amp;quot; How can they turn down an offer like that?  A: Good point :)  Q: How...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Q: You forgot to mention the most obvious benefit to the company, &amp;quot;They might sell more of their devices!&amp;quot; How can they turn down an offer like that?&lt;br /&gt;
&lt;br /&gt;
A: Good point :)&lt;br /&gt;
&lt;br /&gt;
Q: How are you going to write a GPL driver by signing an NDA? Is it going to require a binary blob or some other way of obfuscating the code?&lt;br /&gt;
&lt;br /&gt;
A: No, not at all. I have written many drivers after signing NDAs with companies. They are usually signed either to keep information about the device private until it is announced at a specific date, or to just keep the actual specification documents from being released to the public directly. All code created by this NDA program is to be released under the GPL for inclusion in the main kernel tree, nothing will be obfuscated at all.&lt;br /&gt;
&lt;br /&gt;
Q: This is a lame publicity stunt, Linux development has always been done this way.&lt;br /&gt;
&lt;br /&gt;
A: Well, the NDA program that we have set up with The Linux Foundation is new. But yes, other than that, this is exactly how Linux kernel development has been done. But it is good to point out exactly how it all works for those who are not familiar with how it works.&lt;br /&gt;
&lt;br /&gt;
Q: You are putting the people who do this kind of development for a living out of a job, stop that!&lt;br /&gt;
&lt;br /&gt;
A: This is just not true at all. In fact a number of people who are consultants doing this kind of development have contacted me thanking me for bringing the issue more publicity. They know that some companies really want to pay people to do development and support in order to achieve contractual issues and have some one on the hook for providing support in ways that the community can not guarantee.&lt;br /&gt;
&lt;br /&gt;
Q: Are companies really going to do this?&lt;br /&gt;
&lt;br /&gt;
A: Yes, already we have received a number of serious queries from companies about producing Linux drivers for their devices. More information will be available later when details are firmed up.&lt;br /&gt;
&lt;br /&gt;
Q: Can you write a driver for my [insert device name here] to get it to work? It isn't made anymore and no one has the specs for it.&lt;br /&gt;
&lt;br /&gt;
A: Sorry, but this project is for devices in which we have the specification and hopefully the manufacturer's support. We don't have the time or effort that is needed to reverse engineer the device on our own, sorry.&lt;br /&gt;
&lt;br /&gt;
Q: Do you need developer help for this project?&lt;br /&gt;
&lt;br /&gt;
A: Yes, just drop me an email and I'll add you to the list of people who have volunteered to help out. We are always glad to accept help.&lt;br /&gt;
&lt;br /&gt;
Q: Are companies actually taking you up on this offer?&lt;br /&gt;
&lt;br /&gt;
A: Yes, the initial response to this was amazing, a measurable number of new Linux drivers will be created thanks to this program.&lt;br /&gt;
&lt;br /&gt;
Q: What about helping to get out-of-the-tree GPL drivers into the main kernel tree?&lt;br /&gt;
&lt;br /&gt;
A: A number of people have offered to help out with this in the past, and all code is welcome to Linux. But we aren't going to be pulling in code to the main kernel tree without the permission of the authors.&lt;br /&gt;
&lt;br /&gt;
Q: What about Printer drivers?&lt;br /&gt;
&lt;br /&gt;
A: Printer drivers live in userspace, not in the kernel. Please contact the [http://linuxprinting.org Linux Printing Project] about Linux printer drivers for specific printers and for all Linux printer issues.&lt;br /&gt;
&lt;br /&gt;
Q: What about the BSDs?&lt;br /&gt;
&lt;br /&gt;
A: What about them? They are free to do whatever they wish, I have no input into their development at all, sorry.&lt;br /&gt;
&lt;br /&gt;
Q: What about drivers for video cards?&lt;br /&gt;
&lt;br /&gt;
A: Yes, we will be glad to work on the kernel side of video drivers for Linux&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-07T02:23:52Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Linux Driver Project is focused on creating and maintaining [[Open Source]] Linux kernel drivers for all types of devices.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the [[Company Process]] page.&lt;br /&gt;
&lt;br /&gt;
== Frequently Asked Questions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of [[Frequently Asked Questions]] that you might wish to peruse before asking them to the developers or on the [[Mailing Lists]].&lt;br /&gt;
&lt;br /&gt;
== Mailing Lists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the [[Mailing Lists]] page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the [[Project Status]] page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of [[Out Of Tree Drivers]], that could be cleaned up and added to the main Linux kernel tree, and one list of [[Drivers Needed]] for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by GregKH, and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact GregKH.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Company_Process</id>
		<title>Company Process</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Company_Process"/>
				<updated>2012-05-07T02:22:55Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;If you wish to have Linux drivers written for your device, just follow the simple steps here:  Post to the Project Managers mailing list the following information * What t...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you wish to have Linux drivers written for your device, just follow the simple steps here:&lt;br /&gt;
&lt;br /&gt;
Post to the [[Project Managers]] mailing list the following information&lt;br /&gt;
* What type of device you wish to have supported.&lt;br /&gt;
* Summary of technical specs that you have for your device.&lt;br /&gt;
* If your company requires an [[wikipedia:Non-disclosure_agreement|NDA]] to be signed to get access to the specifications for this device.&lt;br /&gt;
* Anything else you think that the project managers will find helpful in trying to determine the amount of effort that will be needed to support this device.&lt;br /&gt;
&lt;br /&gt;
The project managers will then respond with some followup questions based on your initial query and will work to assign some developers to your project.&lt;br /&gt;
&lt;br /&gt;
Once the proper developers are found, you will probably be required to provide at least one sample of the device to the developer so that they can develop and test the Linux kernel driver. If you wish to pair the developers up with some of your own technical people, that has been found to be the quickest way to answer questions that come up in the normal process of development.&lt;br /&gt;
&lt;br /&gt;
After the driver is developed and you verify that it works properly for you, it will be submitted to the main Linux kernel tree for inclusion in the main Linux kernel source tree that all Linux distributions base their releases on.&lt;br /&gt;
&lt;br /&gt;
If you have further questions about this process, please feel free to contact [[User:GregKH|GregKH]] directly.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Open_Source</id>
		<title>Open Source</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Open_Source"/>
				<updated>2012-05-07T02:16:16Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: Created page with &amp;quot;Linux kernel drivers are created under the GPL license, but dual (BSD, MIT or MPL) + GPL licenses are also accepted.  If your company wishes to also have additional licenses a...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Linux kernel drivers are created under the GPL license, but dual (BSD, MIT or MPL) + GPL licenses are also accepted.&lt;br /&gt;
&lt;br /&gt;
If your company wishes to also have additional licenses applied to the code produced by this group, please contact the developers at the initial start of the project to find out if that is going to be possible.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-04T04:55:02Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Linux Driver Project is focused on creating and maintaining [[Open Source]] Linux kernel drivers for all types of devices.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the [[Company Process]] page.&lt;br /&gt;
&lt;br /&gt;
== FrequentlyAskedQuestions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of [[FrequentlyAskedQuestions]] that you might wish to peruse before asking them to the developers or on the MailingLists.&lt;br /&gt;
&lt;br /&gt;
== MailingLists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the [[Mailing Lists]] page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the [[Project Status]] page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of [[Out Of Tree Drivers]], that could be cleaned up and added to the main Linux kernel tree, and one list of [[Drivers Needed]] for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by GregKH, and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact GregKH.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	<entry>
		<id>http://linuxdriverproject.org/mediawiki/index.php/Main_Page</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="http://linuxdriverproject.org/mediawiki/index.php/Main_Page"/>
				<updated>2012-05-04T04:51:47Z</updated>
		
		<summary type="html">&lt;p&gt;Tomasz Grzegurzko: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Linux Driver Project is focused on creating and maintaining OpenSource Linux kernel drivers for all types of devices.&lt;br /&gt;
&lt;br /&gt;
== About us ==&lt;br /&gt;
&lt;br /&gt;
We are a group of Linux kernel developers (over 400 strong) that develop and maintain Linux kernel drivers. We work with the manufacturers of the specific device to specify, develop, submit to the main kernel, and maintain the kernel drivers. We are willing and able to sign NDAs with companies if they wish to keep their specifications closed, as long as we are able to create a proper GPLv2 compliant Linux kernel driver as an end result.&lt;br /&gt;
&lt;br /&gt;
== Joining ==&lt;br /&gt;
&lt;br /&gt;
If you are a company that wishes to have a Linux kernel driver written and maintained by this group, please go to the CompanyProcess page.&lt;br /&gt;
&lt;br /&gt;
== FrequentlyAskedQuestions ==&lt;br /&gt;
&lt;br /&gt;
We have quite a long list of FrequentlyAskedQuestions that you might wish to peruse before asking them to the developers or on the MailingLists.&lt;br /&gt;
&lt;br /&gt;
== MailingLists ==&lt;br /&gt;
&lt;br /&gt;
We currently have one mailing list, for all [[Developers]]. Please see the MailingLists page for more details.&lt;br /&gt;
&lt;br /&gt;
== Current Projects ==&lt;br /&gt;
&lt;br /&gt;
We have a list of currently running projects, along with some information about past projects on the ProjectStatus page.&lt;br /&gt;
&lt;br /&gt;
As it seems that there are not enough companies asking us to do development for them to keep all of the developers busy, we have started to collect two lists, one list of OutOfTreeDrivers, that could be cleaned up and added to the main Linux kernel tree, and one list of DriversNeeded for hardware that does not currently work on Linux. Please contribute to these lists if you can.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
&lt;br /&gt;
This project was started with an announcement to the Linux Kernel mailing list by GregKH, and has enabled many different manufacturers to achieve full Linux support for their devices.&lt;br /&gt;
&lt;br /&gt;
== Questions? ==&lt;br /&gt;
&lt;br /&gt;
If you still have questions, or do not see the answer for what you are looking for, please feel free to contact GregKH.&lt;/div&gt;</summary>
		<author><name>Tomasz Grzegurzko</name></author>	</entry>

	</feed>