[pvrusb2] New driver snapshot: pvrusb2-mci-20090315
Mike Isely
isely at isely.net
Sun Mar 15 16:24:37 CDT 2009
A new pvrusb2 driver snapshot is available. The driver changes are:
(+) Various miscellaneous tweaks to preserve reasonably correct
compilation for older kernels (test compiled back to 2.6.12.3).
(+) Implement and enable composite and s-video inputs for OnAir
devices.
(+) 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
kernel).
(+) Fix build so that V4LDIR trick works again for building against
v4l-dvb.
(+) 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:
http://www.isely.net/pvrusb2/pvrusb2.html
-Mike
--
Mike Isely
isely @ pobox (dot) com
PGP: 03 54 43 4D 75 E5 CC 92 71 16 01 E2 B5 F5 C1 E8
More information about the pvrusb2
mailing list