Re: [PATCH] USB: mark USB drivers as being GPL only

Marcel Holtmann
2008-02-04T21:37:56Z

Hi Christer,

> > In the cited example it's illegal to go outside certain parameters
> > SOMEWHERE (if it was illegal everywhere, the the hardware shouldn't
> > allow it and the sw could do nothing... not considering hw mods).
> > Another example is WiFi: USA, Europe and Japan allows a different number
> > of channels. But every AP I have had simply asks which country the user
> > is in, then allows only a limited choice for the channel to use.
> > If I'm in Europe but tell my AP that I'm in Japan, it lets me choose
> > channel 13 (Europe allows up to ch 11). If the "cops" find it out, they
> > prosecute ME, not my AP! It's not a TECHNICAL limit, it's a LEGAL one.
> > So there's no point in keeping a driver closed *just* because else
> > someone could hack it to make it work outside the allowed parameters:
> > even a closed driver is hackable (just reverse engineer it...).
> >
> > Think about this scenario: a closed source driver contains:
> > if(power<100)
> > setpower(power);
> > else
> > setpower(100);
> > to limit tx power and make it legal. Then the user finds this 100 and
> > replaces it with 255 (inside the binary-only module), actually allowing
> > for more than twice (if power is in mW) the legally permitted power.
> > Is it legal?
>
> > I don't think so (and I doubt you can find any lawyer that does). But
> > it's not THE DRIVER that's doing something illegal. It's THE USER.
> > It would be equally illegal if the driver was open source. Simpler to
> > do, but equally illegal.
>
> It isn't that easy. The "Tamper-Proof Torx" screws on a vacuum cleaner
> or a toaster won't stop anybody from opening up the thing, I mean every
> little hardware store stocks those Torx bits. But by using a slightly
> odd screw, the company can say "look, we'we done all we can to stop
> them, but the user bypassed our security device, and it's not our
> fault". Apparently Intel and Atheros are trying to protect themselves
> in a similar way, they Open Source everything except for the regulatory
> daemon (Intel) or HAL object file (Atheros). Why? Because they belive
> that if they give away the sources to those parts they do the software
> equivalent of putting a normal Phillips screw in a home appliance.
> (Personally I think what they are doing is ridiculous, but apparently
> those companies' lawyers dont' agree).

while the HAL case of Atheros might be still true despite the fact that
an OpenHAL has been around for a long time now. The Intel argument is
out of the picture since quite some time. The regulatory daemon was an
interim solution and has been replaced by a proper firmware solution. So
please get your examples up-to-date.

You might wanna now point to hiding something in firmware, but the
hardware, firmware, driver separation (with being hardware and firmware
closed source) is an accepted solution. It is a clean separation.
Interface wise and license wise. Remember that nobody inside the
community ever asked for any kind of IP or trade secrets. We only want
specifications so we can write the drivers under an appropriate open
source license. If the specification describes an API exposed via
firmware then that is perfectly fine.

Regards

Marcel