On Monday 22 February 2010 22:17:24 Devin Heitmueller wrote: > On Mon, Feb 22, 2010 at 8:58 AM, Mauro Carvalho Chehab > <mche...@redhat.com> wrote: > >> Ok then. I'll add the 15-20 lines of code which add the extended > >> controls mechanism to the 7115, which just operates as a passthrough > >> for the older control interface. > > > > The better is to do the opposite: extended being the control interface and > > the old calls as a passthrough, since the idea is to remove the old > > interface > > after having all drivers converted. > > I gave this a bit of thought, and I'm not sure what you are proposing > is actually possible. Because the extended controls provides a > superset of the functionality of the older user controls interface, it > is possible to create a extended control callback which just passes > through the request (since any user control can be converted into a > extended control). However, you cannot convert the extended control > results into the older user control format, since not all the > information could be provided. > > In fact, I would be in favor of taking the basic logic found in > cx18_g_ext_ctrls(), and making that generic to the videodev interface, > such that any driver which provides a user control interface but > doesn't provide an extended control function will work if the calling > application makes an extended control call. This will allow userland > applications to always use the extended controls API, even if the > driver didn't explicitly add support for it.
I am still planning to continue my work for a general control handling framework. I know how to do it and it's just time that I lack. Converting all drivers to support the extended control API is quite complicated since the API is fairly complex (esp. with regard to atomicity). In this case my advice would be to support extended controls only where needed and wait for this framework before converting all the other drivers. Regards, Hans -- Hans Verkuil - video4linux developer - sponsored by TANDBERG -- 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