Re: [RFC PATCH v6 09/10] media: tegra-video: Add CSI MIPI pads calibration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 7/31/20 9:14 AM, Dmitry Osipenko wrote:
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".

VI is the main video input (video device) and on streaming it starts stream of CSI subdev prior to stream of Sensor.

HW path, sensor stream (CSI TX) -> CSI stream (RX)

During CSI stream on, CSI PHY receiver is enabled to start receiving the data but internally capture assembled to active state will happen only when Tegra VI single shot is issues where VI thru pixel parser gets captures data into the memory






[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux