Re: RFC: V4L2 driver for Qualcomm MSM camera.

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

 



Hi Jeff,

On Tuesday 04 January 2011 07:14:00 Haibo Zhong wrote:
> On 1/3/2011 6:37 PM, Shuzhen Wang wrote:
> > On Tuesday, December 28, 2010 12:24 PM Laurent Pinchart wrote:
> >> 
> >> I will strongly NAK any implementation that requires a daemon.
> > 
> > We understand the motivation behind making the daemon optional.
> > However there are restrictions from legal perspective, which we
> > don't know how to get around.
> > 
> > A simplest video streaming data flow with MSM ISP is like this:
> > 
> > Sensor ->  ISP Hardware pipeline ->  videobuf
> > 
> > The procedure to set up ISP pipeline is proprietary and cannot
> > be open sourced. Without proper pipeline configuration, streaming
> > won't work. And That's why we require the daemon.
> 
> Laurent/Hans/Mauro,
> 
> We are working on and will provide more design information on Qualcomm
> MSM ISP design and explain the legal concern of the daemon implementation.
> 
> The underlined idea is to comply to V4L2 architecture with MSM solution.

That's a good first step, but I'm afraid it's not enough. If you want your 
driver to be included in the mainline Linux kernel (and its derivative 
distribution kernels such as the MeeGo kernel for instance) all the code 
needed to access and use the hardware must be open-source.

This of course doesn't preclude you from providing a closed-source userspace 
implementation of proprietary hardware-assisted image processing algorithms 
for instance (as a library or as a daemon).

> In the meantime, Laurent, can you share with your major concern about the
> Daemon?

I have two concerns.

- The daemon makes code required to use the hardware closed-source, making the 
driver closed-source (whether the kernel-side code is licensed under the GPL 
or not is irrelevant). I would have the exact same opinion if the required 
userspace proprietary code was provided as a library, so this concern is not 
specific to the implementation being in the form of a daemon.

- The daemon makes the kernel-side driver architecture more complex for no 
reason. Assuming you can make all the driver open-source in the future and 
want to keep proprietary userspace image processing code closed-source, the 
driver architecture must not be designed solely to support that use case. The 
driver should be clean and lean, and the proprietary code must then come as a 
user of the driver, not the other way around.

As a summary, having part of the driver closed-source is a no-go, and having 
part of the kernel driver API designed and used to support closed-source 
components only is a no-go as well.

-- 
Regards,

Laurent Pinchart
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux