[alsa-devel] User space drivers
Hi,
I've been trying to sort thru the ALSA docs and am starting to get the impression that all of the existing drivers are written as Kernel Modules. Doesn't this mean that they are running in Kernel space and infact are not User Space drivers? Shouldn't there be an ALSA Drivers API document that covers an API that User Space Drivers can use? I must be mssing something here...
I'm looking into ALSA because my company wants to use this standard for writing User Space drivers for our product running on various linux kernels. The reasoning for this is strictly proprietary licensing - our leagl department is not comfortable with the GPL and the possiblitiy that something written for Kernel space could at some time be considered as required to be GPL - not my decision...
-Brooke
On 08/02/2007 11:39 PM, Wallace, Brooke wrote:
I've been trying to sort thru the ALSA docs and am starting to get the impression that all of the existing drivers are written as Kernel Modules.
Yes. Some stuff like mixing happens in userspace but the lowlevel drivers are in kernel space.
Doesn't this mean that they are running in Kernel space and infact are not User Space drivers?
Yes.
Shouldn't there be an ALSA Drivers API document that covers an API that User Space Drivers can use? I must be mssing something here...
I believe you are. Who told you that ALSA drivers ran in userspace?
I'm looking into ALSA because my company wants to use this standard for writing User Space drivers for our product running on various linux kernels. The reasoning for this is strictly proprietary licensing - our leagl department is not comfortable with the GPL and the possiblitiy that something written for Kernel space could at some time be considered as required to be GPL - not my decision...
You have a sensible legal department. Many hold that distributing Linux kernelspace code under a non GPL compatible license is illegal, period.
Your job, should you chose to accept it, is convince them that releasing the code you will be writing under a GPL compatible license is not actually all that scary. Pointing them to all the other companies that do so can help.
The other option you have is make do without _any_ help from _anyone_ on this list at least. Good luck.
Rene.
Wallace, Brooke wrote:
Hi,
I've been trying to sort thru the ALSA docs and am starting to get the impression that all of the existing drivers are written as Kernel Modules. Doesn't this mean that they are running in Kernel space and infact are not User Space drivers? Shouldn't there be an ALSA Drivers API document that covers an API that User Space Drivers can use? I must be mssing something here...
I'm looking into ALSA because my company wants to use this standard for writing User Space drivers for our product running on various linux kernels. The reasoning for this is strictly proprietary licensing - our leagl department is not comfortable with the GPL and the possiblitiy that something written for Kernel space could at some time be considered as required to be GPL - not my decision...
-Brooke
Brooke,
What is the problem? Just license your driver as GPL. Result, no more legal problems. The advantage of this approach is that you then get to use your device with Linux. Alternatives along the lines of what you are considering are not worth the effort by yourselves, and certainly not worth our effort helping you.
Kind Regards
James
James Courtier-Dutton wrote:
Wallace, Brooke wrote:
Hi,
I've been trying to sort thru the ALSA docs and am starting to get the impression that all of the existing drivers are written as Kernel Modules. Doesn't this mean that they are running in Kernel space and infact are not User Space drivers? Shouldn't there be an ALSA Drivers API document that covers an API that User Space Drivers can use? I must be mssing something here...
What you may be looking for is the plugins API. Take a look at the alsa-plugins source, there are some examples of things that talk to other userspace things (E.g. jack or pulseaudio plugin) or other non alsa drivers (E.g. oss or freebob)
http://hg-mirror.alsa-project.org/alsa-plugins/
But remember not to put any GPL code in your non-gpl driver ;)
As others have mentioned you may not be able to get much help for this kind of endeavour if you are not prepared to "show us the source".
-- Eliot
participants (4)
-
Eliot Blennerhassett
-
James Courtier-Dutton
-
Rene Herman
-
Wallace, Brooke