From alsa-devel-owner@alsa.jcu.cz  Mon Mar  8 05:25:27 1999
Received: from neutrino.kek.jp (root@neutrino.kek.jp [130.87.218.139])
	by marvin.jcu.cz (8.9.1a/8.9.1) with ESMTP id FAA13397
	for <alsa-devel@alsa.jcu.cz>; Mon, 8 Mar 1999 05:25:00 +0100
Received: from lbscissors.kek.jp (root@lbscissors.kek.jp [130.87.218.173]) by neutrino.kek.jp (8.8.8+2.7Wbeta7/3.4W3) with ESMTP id NAA21059; Mon, 8 Mar 1999 13:24:51 +0900
Received: from lbscissors.kek.jp (really [127.0.0.1]) by neutrino.kek.jp
	via in.smtpd with esmtp (ident sharkey using rfc1413)
	id <m10Jrb0-000sLNC@lbscissors.kek.jp> (Debian Smail3.2.0.102)
	for <alsa-devel@alsa.jcu.cz>; Mon, 8 Mar 1999 13:24:50 +0900 (JST) 
Message-Id: <m10Jrb0-000sLNC@lbscissors.kek.jp>
To: alsa-devel@alsa.jcu.cz
cc: rms@gnu.org
From: sharkey@ale.physics.sunysb.edu
Subject: Re: ALSA Soundcard Vendor Information 
In-reply-to: Your message of "Sun, 07 Mar 1999 22:44:19 +0100."
             <19990307224419.B24079@ruhr-uni-bochum.de> 
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Date: Mon, 08 Mar 1999 13:24:50 +0900
Reply-To: alsa-devel@alsa.jcu.cz
Sender: alsa-devel-owner@alsa.jcu.cz
Precedence: list

> Before we continue, we should probably note two things. First, the GPL does
> not make any difference between the type and purpose of the software. It
> speaks in general terms of "derived work", and "software as a whole".

That's true.  However, if the firmware is patched to resolve some
incompatibility, does that make it a derived work?

I mean, if Creative Balls shipped Sound Bleater 2000's last year with buggy
firmware, and ALSA only works with this year's Sound Bleater, or older
Sound Bleaters that have been flashed with new firmware, I don't think
you could call the new firmware a derived work.  Nor would ALSA be a derived
work of the firmware if it refused to work with the buggy version.

> If an
> Alsa driver does not work at all without the Firmware, isn't it reasonable
> to call both together a work as a whole? Maybe, maybe not. I am no lawyer.

ALSA drivers also don't work without hardware.  Is the hardware also included
in the work? :)  Seriously, the designs for nearly all hardware are closed, at
the most detailed levels.  You can't just etch a new batch of chips for a card
yourself even if you had the facilities because chip masks are generally not
published.  If the code is is set in PROM or ROM, then it's not really all
that different from any of the other chips on the card necessary for its
function.  If the code is on EEPROM, then it is modifiable, but the basic
function of the component is the same whether it's on ROM or EEPROM.  The
legality should change by changing the chip type.

Most cards have binary firmware installed on EEPROM  or ROM chips, whether or
not ALSA ships with it.  The code on these chips allow the cards to function
and at that level ALSA must interact with them, but declaring ALSA non-free
because can use non-free firmware is like saying Mozilla is non-free because
you can use it with a IIs web server. 

> But if the driver calls parts of the firmware directly, I think this is
> similar to linking.

I don't think ALSA can "call" the firmware.  It can pass data to the card,
and tell the card to execute some function on that data (e.g. "mix audio
streams") and the firmware could take care of the details of how this card
does this mixing, but I don't think that could be called a "call".

I think, for practical reasons, the interaction of ALSA with non-free firmware
must be allowed, because prohibiting that would make nearly all hardware
incompatible.  If we accept that ALSA can interact with non-free firmware,
then the only question is if ALSA can also distribute non-free firmware.


> Maybe I don't know enough about hardware and firmware. If you have a
> general firmware loader, and the firmware as a seperate data file, I agree
> that the firmware loader itself is free software. I would still not bundle
> the firmware data together with Alsa, but your mileage may vary.
> It gives me a headache to think about it if the driver and the firmware are
> completely independent works. :)

I'm reminded of the recent discussion of Postillon graphics.

Here's a message from RMS:

http://lwn.net/1999/0211/a/postilion-rms.html

He goes off on a tangent which is not really relevant to this discussion,
but his basic point is that the GPL does not prohibit the distribution of
non-GPL'd data along with GPL'd source.

Whether ALSA would want to bulk up its distribution with this kind of data
or not is another question.  I'm not advocating that point one way or the
other, but I'm pretty sure that it would be legal to do so if it were desired.

Eric


