After a lengthy
discussion, mediabus API patches have finally been approved and pushed upstream for the 2.6.33 kernel, along with a number of other patches, including a new driver for the mt9t112 camera sensor, multiple fixes and improvements, with this pull request:
01/30: tw9910: The driver can also handle revision 1 of the chip
02/30: soc-camera: remove no longer needed struct members
03/30: v4l: add new v4l2-subdev sensor operations, use g_skip_top_lines in soc-camera
04/30: soc-camera: fix multi-line comment coding style
05/30: sh_mobile_ceu_camera: do not mark host occupied, when adding a client fails
06/30: v4l: Add a 10-bit monochrome and missing 8- and 10-bit Bayer fourcc codes
07/30: soc-camera: add a private field to struct soc_camera_link
08/30: Subject: kernel-sync for arch/sh/boards/mach-ap325rxa/setup.c
09/30: soc-camera: switch drivers and platforms to use .priv in struct soc_camera_link
10/30: sh_mobile_ceu_camera: document the scaling and cropping algorithm
11/30: tw9910: Add revision control
12/30: tw9910: simplify chip ID calculation
13/30: tw9910: Tri-state pins when idle
14/30: tw9910: Add power control
15/30: tw9910: tw9910_set_hsync clean up
16/30: tw9910: Add revision control to tw9910_set_hsync
17/30: v4l: add a media-bus API for configuring v4l2 subdev pixel and frame formats
18/30: soc-camera: convert to the new mediabus API
19/30: Subject: kernel-sync for arch/sh/boards/mach-kfr2r09/setup.c
20/30: rj54n1cb0c: Add cropping, auto white balance, restrict sizes, add platform data
21/30: mt9t031: make the use of the soc-camera client API optional
22/30: sh_mobile_ceu: Add V4L2_FIELD_INTERLACED_BT/TB support
23/30: tw9910: use V4L2_FIELD_INTERLACED_BT
24/30: sh_mobile_ceu_camera: Add support for sync polarity selection
25/30: tw9910: modify V/H outpit pin setting to use VALID
26/30: tw9910: modify output format
27/30: tw9910: remove cropping
28/30: tw9910: Add sync polarity support
29/30: soc-camera: Add mt9t112 camera driver
30/30: sh_mobile_ceu_camera: Remove frame size page alignment
To remind, the mediabus API provides one of the two missing functionalities for the V4L subsystem, necessary to make v4l2-subdev client drivers reusable between soc-camera and other v4l2-subdev compliant bridge driver implementations. It handles data format negotiation on the "media bus" between host (bridge) and client drivers. The API is similar to the VIDIOC_{ENUM,G,S,TRY}_FMT user-space V4L2 API. The second missing functionality is the (media) bus parameter negotiation API. But even without it soc-camera client drivers can now be made usable for other bridge drivers in a limited way.