[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1470247430-11168-2-git-send-email-steve_longerbeam@mentor.com>
Date: Wed, 3 Aug 2016 11:03:43 -0700
From: Steve Longerbeam <slongerbeam@...il.com>
To: lars@...afoo.de
Cc: mchehab@...nel.org, linux-media@...r.kernel.org,
linux-kernel@...r.kernel.org,
Steve Longerbeam <slongerbeam@...il.com>,
Steve Longerbeam <steve_longerbeam@...tor.com>,
Niklas Söderlund
<niklas.soderlund+renesas@...natech.se>
Subject: [PATCH v4 1/8] media: adv7180: fix field type
From: Steve Longerbeam <slongerbeam@...il.com>
The ADV7180 and ADV7182 transmit whole fields, bottom field followed
by top (or vice-versa, depending on detected video standard). So
for chips that do not have support for explicitly setting the field
mode via I2P, set the field mode to V4L2_FIELD_ALTERNATE.
Signed-off-by: Steve Longerbeam <steve_longerbeam@...tor.com>
Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@...natech.se>
---
v4:
- switch V4L2_FIELD_SEQ_TB/V4L2_FIELD_SEQ_BT to V4L2_FIELD_ALTERNATE.
This is from Niklas Söderlund.
- remove checks for ADV7180_FLAG_I2P when setting field mode, since I2P
support is planned to be removed.
- move init of state->curr_norm back to its original location, since
state->field init is no longer dependent on state->curr_norm.
v3: no changes
v2:
- the init of state->curr_norm in probe needs to be moved up, ahead
of the init of state->field.
---
drivers/media/i2c/adv7180.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/media/i2c/adv7180.c b/drivers/media/i2c/adv7180.c
index 95cbc85..192eeae 100644
--- a/drivers/media/i2c/adv7180.c
+++ b/drivers/media/i2c/adv7180.c
@@ -679,10 +679,10 @@ static int adv7180_set_pad_format(struct v4l2_subdev *sd,
switch (format->format.field) {
case V4L2_FIELD_NONE:
if (!(state->chip_info->flags & ADV7180_FLAG_I2P))
- format->format.field = V4L2_FIELD_INTERLACED;
+ format->format.field = V4L2_FIELD_ALTERNATE;
break;
default:
- format->format.field = V4L2_FIELD_INTERLACED;
+ format->format.field = V4L2_FIELD_ALTERNATE;
break;
}
@@ -1251,7 +1251,7 @@ static int adv7180_probe(struct i2c_client *client,
return -ENOMEM;
state->client = client;
- state->field = V4L2_FIELD_INTERLACED;
+ state->field = V4L2_FIELD_ALTERNATE;
state->chip_info = (struct adv7180_chip_info *)id->driver_data;
if (state->chip_info->flags & ADV7180_FLAG_MIPI_CSI2) {
--
1.9.1
Powered by blists - more mailing lists