Mauro Carvalho Chehab writes: > Em Thu, 22 Jun 2017 23:35:27 +0200 > Ralph Metzler <r...@metzlerbros.de> escreveu: > > > Daniel Scheller writes: > > > Am Tue, 20 Jun 2017 16:10:43 -0300 > > > schrieb Mauro Carvalho Chehab <mche...@s-opensource.com>: > > > ... > > > > > - Maybe for 4.14: Support for the CineS2 V7 and FlexV4 line of > > > > > cards/modules. This mainly involves a new demod driver (stv0910) > > and > > > > > a new tuner driver (stv6111). Permissions for this are cleared > > with > > > > > Ralph already. The glue code needed in ddbridge is rather easy, > > and > > > > > as some ground work (mostly the MachXO2 support from the 2841 > > series) > > > > > is now in, the changes are quite small. Patches are ready so far > > but > > > > > need more cleanup (checkpatch fixes, camel case and such things). > > > > > > > > > > Please try to sync it with Ralph, in a way that his code won't > > > > diverge from the upstream one, as this will make easier for both > > > > sides to keep the Kernel in track with driver improvements. > > > > > > This is not going to work. DD (Ralph and Manfred Voelkel) sort of > > maintain a shared code base between their Windows driver and the Linux > > kernel driver sources. While they didn't explicitely stated this, this can > > be noticed by the remarks and commented code in their OSS code, and the > > commit messages in their dddvb GIT (e.g. "sync with windows driver"). I've > > already cleaned up a lot of this (I believe no one wants to see such stuff > > in the linux kernel tree). If we're additionally going to replace all > > things camel case, with some more cleaning and maybe code shuffling after > > like a V4 patch series, those two sources are out of sync in a way that no > > automatic sync by applying patches will be possible anymore. So, pushing > > from vendor's upstream to the kernel seems to be the only option, and in > > fact, if the whole driver/package stack completely lives in the kernel > > sources, maybe DD even decide to directly commit upstream (kernel) again. > > Ralph, do you share Linux code with Windows, or are you just getting > drivers from the manufacturer and converting them to Linux at dddvb > tree?
It differs from case to case. Digital Devices gets drivers and/or documetation from the manufacturer. Sometimes from this a Windows driver is written which we convert to Linux or a Linux driver is written directly. > Would it be possible to change things at the dddvb tree to make > it to use our coding style (for example, replacing CamelCase by the > kernel_style), in order to minimize the amount of work to sync from > your tree? Yes > > I also already told Daniel about our concerns regarding the CXD drivers in > > private mail. > > Sony did not want us to use their code directly and we had to get our code > > approved > > before publishing it. I do not know how the arrangement is regarding the > > in-kernel driver. > > DVB-C2 support also seems to be missing in this. > > Sony recently started submitting CXD drivers to us directly (for cxd2880). > > The upstream verson for cx2841 came from NetUP. I guess they develop > the drivers themselves, but not really sure. > > Perhaps we can ask Sony's help to make easier add the features that are > missing at the existing driver in a way that DDbridge could also use > the upstream driver, or to do some other sort of agreement that would > make possible for us to use the same driver as you at the upstream Kernel. > > (c/c Takiguchi-san and Tim Bird from Sony) All I know is that they were strict with Digital Devices. We could not use their code directly. That's why I am surprised the Netup code contains Sony code. > > > > - you'll still need to patch DD tree, as I'm pretty sure there are > > > > changes on the upstream driver that will need to be ported there; > > > > > > The same as for the stv0910 code applies here, in addition that it's > > not sure if DD even wants this. DD even has KERNEL_VERSION_CODE ifdefs in > > some places. And - most importantly - they carry around an old version of > > the DVB core API (from what it looks, around linux-3.10, not exactly sure) > > which even was modified by some IOCTLs, vars, defines and the netstream > > and modulator support. I managed to remove all core API change deps from > > everything tuner related (and thats the reason things work in harmony with > > and in current kernels), but getting all this over to DD or even merge > > things from DD into the media subsystem will get "interesting". > > > > We certainly will want to keep supporting older kernels via KERNEL_VERSION. > > In the past, we used a script that "solves" KERNEL_VERSION on our Mercurial > tree (https://linuxtv.org/hg/v4l-dvb) and gets rid of other ifdefs: > > https://linuxtv.org/hg/v4l-dvb/file/3724e93f7af5/v4l/scripts/gentree.pl > > I don't use it for ages, but I guess it shouldn't be hard to modify it to > get rid of KERNEL_VERSION when submitting stuff from DD tree upstream. I'll see if that works. > > e.g.: > > > > - adding SYS_DVBC2 to fe_delivery_system > > OK, we can do that, when adding a driver needing such feature. > > > > > - DTV_INPUT > > > > to select an input on cards were demods can choose from several inputs > > We're actually wanting to use the media controller to change the > pipeline (selecting inputs and outputs, directing output to a MPEG > decoding pipeline and descrambler, etc). I this also for selecting frontend inputs? It sounds more like switching transport stream data paths after the demod. > The needed bits are there already at the DVB core upstream (although > we don't have, currently, any DVB driver allowing changes at the > pipeline). My original intention were to upstream some embedded > drivers with such usage, but, unfortunately, the MC changes took > too many time to be applied. by the time it got merged, it was too > late, due to some internal changes that happened about the same time. > > > > > - DTV_PLS > > > > to set the gold code used for DVB-S2 physical layer scrambling. > > (btw. the sometimes used root and combo codes are redundant) > > Some driver mods misuse the upper bits of DTV_STREAM_ID (which is for > > MIS in DVB-S2) for this, but > > PLS and MIS are independent. > > In principle, sounds ok, but we need to take some care to avoid > regressions here. I also support this old method in the stv0900 and stv0910 drivers. > > I know that the netstream and modulator support are proprietary but we > > will of course also need to keep > > them dddvb package. > > Btw., are there any standard APIs for modulator cards in the kernel now? > > Right now, we don't have. Feel free to propose what you're using at the > dddvb package as standard, if you think it is generic enough to support > other modulators in the future. OK Reagards, Ralph