aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.4/950-0157-media-adv7180-Default-to-the-first-valid-input.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.4/950-0157-media-adv7180-Default-to-the-first-valid-input.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.4/950-0157-media-adv7180-Default-to-the-first-valid-input.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.4/950-0157-media-adv7180-Default-to-the-first-valid-input.patch b/target/linux/bcm27xx/patches-5.4/950-0157-media-adv7180-Default-to-the-first-valid-input.patch
new file mode 100644
index 0000000000..7e2066b211
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.4/950-0157-media-adv7180-Default-to-the-first-valid-input.patch
@@ -0,0 +1,45 @@
+From b1d3f1c74057db79c45a11ed9ce0fc1e24d67401 Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.org>
+Date: Wed, 31 Oct 2018 14:57:46 +0000
+Subject: [PATCH] media: adv7180: Default to the first valid input
+
+The hardware default is differential CVBS on AIN1 & 2, which
+isn't very useful.
+
+Select the first input that is defined as valid for the
+chip variant (typically CVBS_AIN1).
+
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
+---
+ drivers/media/i2c/adv7180.c | 13 +++++++++++++
+ 1 file changed, 13 insertions(+)
+
+--- a/drivers/media/i2c/adv7180.c
++++ b/drivers/media/i2c/adv7180.c
+@@ -1246,6 +1246,7 @@ static const struct adv7180_chip_info ad
+ static int init_device(struct adv7180_state *state)
+ {
+ int ret;
++ int i;
+
+ mutex_lock(&state->mutex);
+
+@@ -1292,6 +1293,18 @@ static int init_device(struct adv7180_st
+ goto out_unlock;
+ }
+
++ /* Select first valid input */
++ for (i = 0; i < 32; i++) {
++ if (BIT(i) & state->chip_info->valid_input_mask) {
++ ret = state->chip_info->select_input(state, i);
++
++ if (ret == 0) {
++ state->input = i;
++ break;
++ }
++ }
++ }
++
+ out_unlock:
+ mutex_unlock(&state->mutex);
+