[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: windows video capture card driver source contains LGPLv2 header file - can I port?



On Sat, Feb 25, 2012 at 12:52 PM, Chris Harshman <rch@packetlaw.com> wrote:
> On Feb 25, 2012, at 10:46 AM, erpo41@gmail.com wrote:
>
>> What are my options for creating a Linux driver for this hardware?
>
> What you've reported doesn't really provide enough information for us to
> opine (even with 'non-legal advice' opinions). You say the Windows
> application is distinct from the driver, but is that distinction maintained
> in the copyright notices? Etc.

By distinct, I mean that there are three separate components inside
the archive I downloaded. There is a Drv directory that contains the
.h and .cpp files necessary to build a WDM device driver that is
loaded into the Windows kernel. The only copyright notice found inside
this set of files is the LGPLv2 notice in Command.h. The file that
contains most of the code, main.cpp, does not have a copyright notice.
Additionally, there are some (Chinese?) comments I can't read.

There is also an App directory containing a Microsoft Visual C++
project that builds an exe file that runs in userspace. I haven't run
it yet, but I think it talks to the device driver to extract frames
from the video capture card and perhaps display or save them. None of
the files that are used to build this executable have any type of
copyright notice except for a resource script (.rc file). It does not
identify the copyright holder or the license under which it is
distributed--only that the copyright date is 2007.

Finally, there is a Bin directory, containing the compiled driver and
the compiled userspace executable. In the same directory there is an
inf file used to install the driver in Windows. It contains the
notice: Copyright (c) 1991-2004 VastVision Corporation.

Those are all of the copyright notices. Is that useful information?

> The Command.h file -- was it built/provided
> by the driver manufacturer, or did the author of the Windows driver/software
> use LGPL code? Etc.

I believe the Command.h file was originally written for the Windows
bt878 capture card driver, released under the LGPLv2 and then it was
"borrowed" for use in this driver. I suspect that the binary .sys WDM
kernel driver provided in the Bin directory was compiled using this
header by the driver manufacturer.

> But it may not matter. Recall that (at least in the U.S., where arguably the
> biggest threat of litigation exists), copyright does not extend to
> functional elements; Lotus v. Borland, 516 U.S. 233 (1996). To the extent
> code is required to interoperate with the hardware, you can reuse/derive
> from it safely. (You might also want to familiarize yourself with the
> "Abstraction / Filtration / Comparison" test from Computer Associates v.
> Altai  982 F.2d 693 (6th Cir.
> 2003): http://en.wikipedia.org/wiki/Abstraction-Filtration-Comparison_test ;).
>
> In short, I personally would not take a clean-room approach to that code.
> I'd look at it, learn from it, and write my own Linux driver, personally.
> Anything specific to the hardware I'd copy more or less verbatim. Anything
> else, if there's really only the one way of doing it, it's not copyright
> protected; if there's more than one way, I'd be creative. :)

I like this answer. :)

> This is not legal advice; if you want that, contact me directly (and pay me
> =)).

I really appreciate the portion of your Saturday that you put into
this free response to my question, but I don't think I need actual
legal advice right now. Based on my interactions with the company that
made the chip, I seriously doubt they would care even if I copied and
pasted all of their code into a Linux driver. They just don't seem to
care.

I'm more concerned about what the Linux kernel maintainers will think
and whether or not they will reject any driver I write for copyright
reasons.

Thanks,
Eric


Reply to: