mach-bcm2708: account for FIQ latency in timer interrupt setup

If all of the following happen in a perfect storm:
- A FIQ is taken between readl(stc) and writel(stc + cycles,stc3)
- The timer compare increment is of the order of min_delta_ns
- The FIQ takes longer than the current min_delta_ns value for the timer
  (with contended L1 and L2 caches, 1 in 1000 cases)

Then a stale value will be written to STC3, which will only trigger an
interrupt when STC wraps - in about 71 minutes.

Check after writing the value that STC hasn't run ahead.
bcm2708: Ensure 1-wire pullup is disabled by default, and expose as module parameter

Signed-off-by: Alex J Lennon <ajlennon@dynamicdevices.co.uk>
w1-gpio: Add gpiopin module parameter and correctly free up gpio pull-up pin, if set

Signed-off-by: Alex J Lennon <ajlennon@dynamicdevices.co.uk>
i2c: Make combined transactions optional and disabled by default
V4L2: Fix incorrect pool sizing

Signed-off-by: Dave Stevenson <dsteve@broadcom.com>
V4L2: Add option to disable enum_framesizes.

Gstreamer's handling of a driver that advertises
V4L2_FRMSIZE_TYPE_STEPWISE to define the supported
resolutions is broken. See bug
https://bugzilla.gnome.org/show_bug.cgi?id=726521

Optional parameter of gst_v4l2src_is_broken added.
If non-zero, the driver claims not to support that
ioctl, and gstreamer should be happy again (it
guesses a set of defaults for itself).

Signed-off-by: Dave Stevenson <dsteve@broadcom.com>