On 9/14/07, Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxx> wrote: > > > - The hybrid tuner support, that where your requirement, when all those > > > discussions started, were already added to the subsystem. So now, an > > > hybrid tuner can be accessed by both DVB and V4L devices; > > > > > > > It's far more complex as the thing which is implemented there. > > The only thing that has been implemented is that one moduleformat > > can be loaded by the v4l and by the dvb framework nothing else at the > > moment. I told you at the kernel summit about that and I think you > > knew about that before. > > > > Just to quote some text: > > "Right now, a separate instance of the driver is used for analog / > > digital tuning. In order to use a single instance, we will have to > > store a pointer to the dvb_frontend structure on the bridge level, but > > there are various other prerequisites that must be dealt with before we > > get to that point. > > > > We _will_ get there though, eventually." > > Maybe it is still not perfect. Feel free to improve it. Several people > from the community, including me, already offered you help to add your > driver, reworking on the 5% of the stuff that aren't compatible with the > V4L/DVB core API design. For clarification, Markus is quoting me, above. The idea is to eventually store a pointer to the dvb_frontend structure on the bridge level to be used as a single entry point between the analog and digital subsystems. However, we are not yet ready for this, as the refactoring process has a lot more to be done beforehand. Phase 1 of the refactoring was to implement the core changes required for a single module to be used by both v4l and dvb, and to convert the existing tuner modules to the new internal API. Phase 2, a work in progress, involves the removal of duplicated code. For example, the current code in the master branch still has tda8275 / tda8275a analog code inside of tda8290.c, where the digital tuning code is in tda827x.c ... This was resolved in this changeset: Move all tda8275/8275a tuning code from tda8290 module into tda827x module http://linuxtv.org/hg/~mkrufky/philipsNXP/rev/09c2e16a8cdd This code is working fine, and I have it pushed to linuxtv.org for the sake of testing. I have not requested merge to master because I still have some cleanups to do, and I do not want this to go to 2.6.24. (side note: basic support for TDA8295 + TDA18271 has been added to my philipsNXP tree, as well) Tuner-simple and dvb-pll will have to undergo a similar treatment, and it's not going to happen overnight. But I *am* working on it. I've outlined a basic roadmap to the refactoring plans in my original RFC: http://linuxtv.org/pipermail/linux-dvb/2007-August/019950.html What I didn't mention in that RFC, however, is the method in which I plan to remove the multiple instantiations of the tuner code for a single piece of hardware, by moving the dvb_frontend pointer to the bridge level. Since this change depends on the other refactoring to be completed first, I found it unnecessary to explain this in detail at this point. When the time comes, a new RFC will be sent out to deal with that matter. There is no reason why the Xceive driver cannot be merged into the current development tree using the hybrid tuner framework as it stands today. Regards, Mike _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb