Have a try this attached on J4.6 can’t tell if working with J4.5 or not.
camera-rtcpu-rce.img (261.6 KB)
Also add the patch in csi5_fops.c
drivers/media/platform/tegra/camera/nvcsi/csi5_fops.c | 10 +++++++++-
drivers/video/tegra/camera/tegra_camera_platform.c | 1 -
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/drivers/media/platform/tegra/camera/nvcsi/csi5_fops.c b/drivers/media/platform/tegra/camera/nvcsi/csi5_fops.c
index d23994d..7a47015 100644
--- a/drivers/media/platform/tegra/camera/nvcsi/csi5_fops.c
+++ b/drivers/media/platform/tegra/camera/nvcsi/csi5_fops.c
@@ -139,6 +139,8 @@ static int csi5_stream_set_config(struct tegra_csi_channel *chan, u32 stream_id,
struct CAPTURE_CONTROL_MSG msg;
struct nvcsi_brick_config brick_config;
struct nvcsi_cil_config cil_config;
+ struct nvcsi_error_config error_config;
+
bool is_cphy = (csi_lanes == 3);
dev_dbg(csi->dev, "%s: stream_id=%u, csi_port=%u\n",
@@ -166,6 +168,11 @@ static int csi5_stream_set_config(struct tegra_csi_channel *chan, u32 stream_id,
else
cil_config.mipi_clock_rate = csi->clk_freq / 1000;
+ /* error config */
+ memset(&error_config, 0, sizeof(error_config));
+ error_config.stream_intr_mask = 0xFF;
+ error_config.status2vi_notify_mask = 0xFFFF;
+
/* Set NVCSI stream config */
memset(&msg, 0, sizeof(msg));
msg.header.msg_id = CAPTURE_CSI_STREAM_SET_CONFIG_REQ;
@@ -175,7 +182,8 @@ static int csi5_stream_set_config(struct tegra_csi_channel *chan, u32 stream_id,
msg.csi_stream_set_config_req.csi_port = csi_port;
msg.csi_stream_set_config_req.brick_config = brick_config;
msg.csi_stream_set_config_req.cil_config = cil_config;
-
+ msg.csi_stream_set_config_req.error_config = error_config;
+ msg.csi_stream_set_config_req.config_flags = NVCSI_CONFIG_FLAG_BRICK | NVCSI_CONFIG_FLAG_CIL | NVCSI_CONFIG_FLAG_ERROR;
tegra_capture_ivc_control_submit(&msg, sizeof(msg));
return 0;
diff --git a/drivers/video/tegra/camera/tegra_camera_platform.c b/drivers/video/tegra/camera/tegra_camera_platform.c
index 9f036fc..ed465df 100644
--- a/drivers/video/tegra/camera/tegra_camera_platform.c
+++ b/drivers/video/tegra/camera/tegra_camera_platform.c
@@ -672,7 +672,6 @@ static void update_platform_data(struct tegra_camera_dev_info *cdev,
info->phy_pixel_rate = cdev->pixel_rate;
}
}
-
if (info->phy_pixel_rate < phy_pixel_rate_aggregated)
info->phy_pixel_rate = phy_pixel_rate_aggregated;
--
2.1.4