Hi Prabhakar, On Tue, Jul 28, 2020 at 06:50:21PM +0100, Lad, Prabhakar wrote: > Hi, > > I am currently investigating adding support for the BT656 format which > is currently missing in the driver. > > The platform which I am currently testing can support both 8-bit DVP > and BT656 modes. > * Testing DVP mode capturing 320x240, 640x480 worked OK with random > green lines in-between > > Following is the chunk of code which enables BT656 support, (for > BT656 mode ov5640_set_dvp_pclk() is used), with the below changes I > can get 640x480 working > > #define OV5640_REG_CCIR656_CTRL00 0x4730 > > static int ov5640_set_stream_bt656(struct ov5640_dev *sensor, bool on) > { > int ret; > > ret = ov5640_write_reg(sensor, > OV5640_REG_IO_MIPI_CTRL00, on ? 0x18: 0); > if (ret) > return ret; > > ret = ov5640_write_reg(sensor, > OV5640_REG_PAD_OUTPUT_ENABLE01, 0x7f); > if (ret) > return ret; > > ret = ov5640_write_reg(sensor, > OV5640_REG_PAD_OUTPUT_ENABLE02, 0xfc); > if (ret) > return ret; > > return ov5640_write_reg(sensor, > OV5640_REG_CCIR656_CTRL00, on ? 0x1: 0x0); > } > > As soon as I change the code to below to disable the data pads on > stream OFF as below it stops working! > > static int ov5640_set_stream_bt656(struct ov5640_dev *sensor, bool on) > { > int ret; > > ret = ov5640_write_reg(sensor, > OV5640_REG_IO_MIPI_CTRL00, on ? 0x18: 0); > if (ret) > return ret; > > ret = ov5640_write_reg(sensor, > OV5640_REG_PAD_OUTPUT_ENABLE01, on ? 0x7f, 0); s/,/:/ ? Is that a typo in your e-mail, or also in the code you've tested ? I assume the former as the latter shouldn't compile. > if (ret) > return ret; > > ret = ov5640_write_reg(sensor, > OV5640_REG_PAD_OUTPUT_ENABLE02, on ? 0xfc, 0); > if (ret) > return ret; > > return ov5640_write_reg(sensor, > OV5640_REG_CCIR656_CTRL00, on ? 0x1: 0x0); > } > > Looking at the datasheet [1] I don't find it wrong or is there any > information missing in this freely available datasheet. > > Ideally BT656 mode should just work in DVP mode by setting 0x1 in > 0x4730, but doesn work. > > Is there anything I'm missing here, any thoughts ? > > [1] https://cdn.sparkfun.com/datasheets/Sensors/LightImaging/OV5640_datasheet.pdf -- Regards, Laurent Pinchart