31.07.2020 18:46, Sowjanya Komatineni пишет: > > On 7/31/20 4:39 AM, Dmitry Osipenko wrote: >> 31.07.2020 12:02, Sowjanya Komatineni пишет: >> ... >>> @@ -249,13 +249,47 @@ static int tegra_csi_enable_stream(struct >>> v4l2_subdev *subdev) >>> return ret; >>> } >>> + if (csi_chan->mipi) { >>> + ret = tegra_mipi_enable(csi_chan->mipi); >>> + if (ret < 0) { >>> + dev_err(csi->dev, >>> + "failed to enable MIPI pads: %d\n", ret); >>> + goto rpm_put; >>> + } >>> + >>> + /* >>> + * CSI MIPI pads PULLUP, PULLDN and TERM impedances need to >>> + * be calibrated after power on. >>> + * So, trigger the calibration start here and results will >>> + * be latched and applied to the pads when link is in LP11 >>> + * state during start of sensor streaming. >>> + */ >>> + ret = tegra_mipi_start_calibration(csi_chan->mipi); >>> + if (ret < 0) { >>> + dev_err(csi->dev, >>> + "failed to start MIPI calibration: %d\n", ret); >>> + goto disable_mipi; >>> + } >> What would happen if CSI stream is enabled and then immediately disabled >> without enabling camera sensor? > > Nothing will happen as during stream enable csi receiver is kept ready. > > But actual capture will not happen during that point. Could you please show how the full call chain looks like? It's not clear to me what keeps CSI stream "ready".