RE: [PATCH v4 00/12] [dt-bindings] [media] Add document file and driver for Sony CXD2880 DVB-T2/T tuner + demodulator
> -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
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