|
@@ -384,9 +384,6 @@ static int csid_set_stream(struct v4l2_subdev *sd, int enable)
|
|
|
!media_entity_remote_pad(&csid->pads[MSM_CSID_PAD_SINK]))
|
|
|
return -ENOLINK;
|
|
|
|
|
|
- dt = csid_get_fmt_entry(csid->fmt[MSM_CSID_PAD_SRC].code)->
|
|
|
- data_type;
|
|
|
-
|
|
|
if (tg->enabled) {
|
|
|
/* Config Test Generator */
|
|
|
struct v4l2_mbus_framefmt *f =
|
|
@@ -408,6 +405,9 @@ static int csid_set_stream(struct v4l2_subdev *sd, int enable)
|
|
|
writel_relaxed(val, csid->base +
|
|
|
CAMSS_CSID_TG_DT_n_CGG_0(0));
|
|
|
|
|
|
+ dt = csid_get_fmt_entry(
|
|
|
+ csid->fmt[MSM_CSID_PAD_SRC].code)->data_type;
|
|
|
+
|
|
|
/* 5:0 data type */
|
|
|
val = dt;
|
|
|
writel_relaxed(val, csid->base +
|
|
@@ -417,6 +417,9 @@ static int csid_set_stream(struct v4l2_subdev *sd, int enable)
|
|
|
val = tg->payload_mode;
|
|
|
writel_relaxed(val, csid->base +
|
|
|
CAMSS_CSID_TG_DT_n_CGG_2(0));
|
|
|
+
|
|
|
+ df = csid_get_fmt_entry(
|
|
|
+ csid->fmt[MSM_CSID_PAD_SRC].code)->decode_format;
|
|
|
} else {
|
|
|
struct csid_phy_config *phy = &csid->phy;
|
|
|
|
|
@@ -431,13 +434,16 @@ static int csid_set_stream(struct v4l2_subdev *sd, int enable)
|
|
|
|
|
|
writel_relaxed(val,
|
|
|
csid->base + CAMSS_CSID_CORE_CTRL_1);
|
|
|
+
|
|
|
+ dt = csid_get_fmt_entry(
|
|
|
+ csid->fmt[MSM_CSID_PAD_SINK].code)->data_type;
|
|
|
+ df = csid_get_fmt_entry(
|
|
|
+ csid->fmt[MSM_CSID_PAD_SINK].code)->decode_format;
|
|
|
}
|
|
|
|
|
|
/* Config LUT */
|
|
|
|
|
|
dt_shift = (cid % 4) * 8;
|
|
|
- df = csid_get_fmt_entry(csid->fmt[MSM_CSID_PAD_SINK].code)->
|
|
|
- decode_format;
|
|
|
|
|
|
val = readl_relaxed(csid->base + CAMSS_CSID_CID_LUT_VC_n(vc));
|
|
|
val &= ~(0xff << dt_shift);
|