diff options
-rw-r--r-- | drivers/media/i2c/adv7604.c | 5 | ||||
-rw-r--r-- | include/media/adv7604.h | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/media/i2c/adv7604.c b/drivers/media/i2c/adv7604.c index 0bc9e1a8c07e..be9699e28738 100644 --- a/drivers/media/i2c/adv7604.c +++ b/drivers/media/i2c/adv7604.c @@ -2126,9 +2126,10 @@ static int adv7604_core_init(struct v4l2_subdev *sd) pdata->replicate_av_codes << 1 | pdata->invert_cbcr << 0); - /* TODO from platform data */ cp_write(sd, 0x69, 0x30); /* Enable CP CSC */ - io_write(sd, 0x06, 0xa6); /* positive VS and HS */ + + /* VS, HS polarities */ + io_write(sd, 0x06, 0xa0 | pdata->inv_vs_pol << 2 | pdata->inv_hs_pol << 1); /* Adjust drive strength */ io_write(sd, 0x14, 0x40 | pdata->dr_str_data << 4 | diff --git a/include/media/adv7604.h b/include/media/adv7604.h index baf7250ee8a1..d262a3a922bd 100644 --- a/include/media/adv7604.h +++ b/include/media/adv7604.h @@ -113,6 +113,10 @@ struct adv7604_platform_data { unsigned replicate_av_codes:1; unsigned invert_cbcr:1; + /* IO register 0x06 */ + unsigned inv_vs_pol:1; + unsigned inv_hs_pol:1; + /* IO register 0x14 */ enum adv7604_drive_strength dr_str_data; enum adv7604_drive_strength dr_str_clk; |