issues using proprietary drivers from open source

Sanford Rockowitz rockowitz at
Mon Nov 23 15:10:23 UTC 2015

This may not be the most appropriate list for my concerns, but googling 
has not been very productive. I'm hoping that someone here will at least 
recognize the issues I need to address and point me in the right direction.

I've written a program for querying and updating a monitor's settings 
using DDC.   (Think of it as a replacement for the no longer maintained 
ddccontrol.)   I'd like to publish it as an open source project, 
presumably GPLv2.  Most Linux video device drivers (radeon, nouveau, 
nvidia proprietary, intel, ...) expose an I2C interface (/dev/i2c), and 
if present I use that interface to communicate with the monitor.  No 
(legal) problems there. AMD's proprietary fglrx driver, however, does 
not expose an I2C interface.   Instead, its API has functions for 
accessing the needed services.   So what to do if the user is running 
AMD's driver?  At run time, my program dynamically tries to load the 
fglrx api library, and if found uses it to communicate with the 
monitor.   I don't think that poses any legal issues.  I don't, however, 
understand how to handle the source code.  Currently, copies of the 
fglrx api headers exist in my source tree.  Do I need to pull them 
out?   In that case the build would have to be changed to point to 
external copies of the header files, and only compile the AMD related 
portion of the program if the header files are present.   Are there 
other issues?

Thank you in advance for any hints, whether direct comments or pointers 
to other mailing lists, sites, people, or examples of source code that 
addresses similar issues.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Ubuntu-devel-discuss mailing list