RE: [PATCH v4 00/12] [dt-bindings] [media] Add document file and driver for Sony CXD2880 DVB-T2/T tuner + demodulator

2017-12-14 Thread Bird, Timothy


> -Original Message-
> From: Philippe on Thursday, December 14, 2017 6:25 AM
> Dear Mauro,
> 
> On Thu, Dec 14, 2017 at 11:55 AM, Mauro Carvalho Chehab
>  wrote:
> 
> > SPDX is a new requirement that started late on Kernel 4.14 development
> > cycle (and whose initial changes were merged directly at Linus tree).
> > Not all existing files have it yet, as identifying the right license
> > on existing files is a complex task, but if you do a:
> >
> > $ git grep SPDX $(find . -name Makefile) $(find . -name Kconfig)
> >
> > You'll see that lot of such files have it already.
> 
> FWIW, short of having SPDX tags, identifying the right license on
> existing files is not a super complex task: if boils down to running
> many diffs.
> 
> Take the ~60K files in kernel, and about 6K license and notices
> reference texts. Then compute a pairwise diff of each of the 60K file
> against the 6K reference texts. Repeat the pairwise diff a few more
> times, say 10 times, as multiple licenses may appear in any given
> kernel file. And keep the diffs that have the fewest
> difference/highest similarity with the reference texts as the detected
> license. Done!

You can't do license detection and assignment in this automated fashion - 
at least not generally.

Even a single word of difference between the notice in the source
code and the reference license notice or text may have legal implications
that are not conveyed by the simplified SPDX tag.  When differences are
found, we're going to have to kick the discrepancies to a human for review.
This is especially true for files with multiple licenses.

For a work of original authorship, or a single copyright holder, the author
or copyright holder may be able to change the notice or text, or gloss
over any difference from the reference text, and make the SPDX  assignment
(or even change the license, if they want).  This would apply to something
new like this Sony driver.  However, for code that is already in the kernel
tree, with likely multiple contributors, the legal situation gets a little
more murky.

I suspect the vast majority of the ~60k files will probably fall neatly into an
SPDX category, but I'm guessing a fair number (maybe hundreds) will require
some review and discussion.

 -- Tim




Sony tuner chip driver questions

2016-07-28 Thread Bird, Timothy
Hello Linux-media people... :-)

A group at Sony would like to develop a proper kernel driver
for a TV/tuner chip that Sony produces, and we'd like to ask some questions
before we get started.

FYI - I'm kicking off the conversation thread, but I'm not a TV or media-driver
person, so please excuse anything that sounds strangely worded or is just
a really dumb question.  I have experts CC:ed who can clarify anything I
misstate. :-)

First some background:
The chip is in the same family as other chips for which there
are currently some kernel drivers in mainline, produced by
3rd parties (not Sony). The drivers already in the tree are
linux/media/dvb-frontend/cxd2820.c, cxd2841er.c, and ascot2e.c.

Currently Sony provides a user-space driver to its customers, but
we'd like to switch to an in-kernel driver.

The chip has a tuner and demodulator included.

First, we will be delivering the actual video data over SPI.  Currently,
we only see examples of doing this over PCI and USB busses.  Are
there any examples of the appropriate method to transfer video
data (or other high-volume data) over SPI?  If not, are there any
recommendations or tips for going about this?

Second, the current drivers for the cxd2820 and cxd2841 seem to
use a lot of hard-coded register values (and don't appear to use
device tree).  We're not sure if these drivers are the best examples
to follow in creating a new dvb driver for Linux.  Is there a 
recommended driver or example that shows the most recent or
preferred good structure for such drivers, that we should use
in starting ours?  

Is DVB is the correct kernel subsystem to use for this driver, or
is V4L more appropriate?

If we have multiple files in our driver, should we put them all in
the dvb-frontend directory, or should they be sprinkled around
in different directories based on function?  Or should we create
a 'sony' directory somewhere to hold them?

What debugging tools, if any, are available for testing dvb drivers
in the kernel?

Do any current tuner drivers support dual-tuner configurations?

Thanks for any assistance or information you can provide to help us
get started.
 -- Tim Bird
Senior Staff Software Engineer, Sony North America

P.S.  We are ramping up the project now, but will likely get to 
major development effort in a month or two.




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