[pvrusb2] New driver snapshot: pvrusb2-mci-20090315
xavier.gnata at gmail.com
Sun Mar 15 19:23:43 CDT 2009
Would you say that this new intermediate layer is a good thing?
What is the purpose of this?
Does it really avoid a lot a code duplication?
Anyhow thanks for this release :)
> A new pvrusqy thqt this method sb2 driver snapshot is available. The driver changes are:
> (+) Various miscellaneous tweaks to preserve reasonably correct
> compilation for older kernels (test compiled back to 126.96.36.199).
> (+) Implement and enable composite and s-video inputs for OnAir
> (+) Remove ancient IVTV_IOC_G_CODEC and IVTV_IOC_S_CODEC ioctl
> functions. These are very very old, were non-standard, and were
> only present to keep MythTV happy (their implementation did
> nothing except to report success). That was long ago; no recent
> versions of MythTV should require this anymore.
> (+) MAJOR: Implement a new client modules layer, based upon the
> v4l2-subdev framework. Note that this is only active in the
> standalone driver when building against v4l-dvb or in a kernel
> that is 2.6.29 or later. The v4l-dvb core has a new mechanism
> known as "v4l2-subdev". This is a whole new method for finding,
> attaching to, and communicating with all the various chip-level
> drivers. This is the "official" way of controlling all the
> "sub-drivers" now. This is also expected to be required
> starting with kernel 2.6.30 (i.e. support for the old i2c
> specific mechanism will be removed). The pvrusb2 standalone
> driver for now still has the old method implemented alongside
> the new one - compile time options select which method to build
> depending on the environment (i.e. kernel version). So
> backwards compatibility for now is not affected and the driver
> should _in theory_ continue to work all the way back to 2.6.12
> (conditioned of course on the other various things mentioned in
> the setup documentation). But at some point in the future, I
> expect it will become too cumbersome to keep both methods
> working, at which point I will remove the old method and the
> standalone driver will then no longer directly support kernels
> older than approximately 2.6.29 (the point when the v4l2-subdev
> mechanism first became workable and resident in the mainline
> (+) Fix build so that V4LDIR trick works again for building against
> (+) Use usb_make_path (where possible) to report device bus
> location. This produces a more stable result than what had been
> done before.
> In addition to those driver changes, I've combed through the online
> documentation and fixed various errors, updated various things. I've
> added new information about Gotview and OnAir support (the support in
> question isn't new but the documentation was wrong or misleading). I
> have also added notes and references to the OnAir firmware, both
> available now at isely.net and also at Autumnwave's site.
> Note that the "major" change above is in preparation for the 2.6.30
> kernel, where that logic will be required in order for the driver to
> continue working correctly. It's a complete replacement for the
> driver's control logic for handling all the "chip-level" drivers it
> must deal with. The required new v4l-dvb framework (a.k.a.
> "v4l2-subdev") for this appears in 2.6.29, so the driver build is
> configured to switch on the new implementation at that kernel version
> (and correspondingly disable the old implementation). The short
> summary of this is that you won't be affected by that "major" change
> at all until you try to build the driver in kernel 2.6.29 or later.
> The outward changes for this release are actually fairly small. But
> the new control framework itself involves a lot of new code (which is
> ifdef'ed out until you try 2.6.29 or later). It's a lot of stuff for
> (hopefully!) very little visible change.
> As usual, the pvrusb2 web site can be found at:
More information about the pvrusb2