From: Guoniu Zhou Date: Fri, 5 Dec 2025 09:07:45 +0000 (+0800) Subject: media: imx8mq-mipi-csi2: Explicitly release reset X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6d79bb8fd2aa25afccbd6aeec2821722fa0b5db5;p=thirdparty%2Fkernel%2Fstable.git media: imx8mq-mipi-csi2: Explicitly release reset Call reset_control_deassert() to explicitly release reset to make sure reset bits are cleared since platform like i.MX8ULP can't clear reset bits automatically. Reviewed-by: Frank Li Reviewed-by: Laurent Pinchart Signed-off-by: Guoniu Zhou Link: https://patch.msgid.link/20251205-csi2_imx8ulp-v10-3-190cdadb20a3@nxp.com Signed-off-by: Laurent Pinchart Signed-off-by: Hans Verkuil --- diff --git a/drivers/media/platform/nxp/imx8mq-mipi-csi2.c b/drivers/media/platform/nxp/imx8mq-mipi-csi2.c index be945da9bb5e..e4fe7e3bd769 100644 --- a/drivers/media/platform/nxp/imx8mq-mipi-csi2.c +++ b/drivers/media/platform/nxp/imx8mq-mipi-csi2.c @@ -339,18 +339,14 @@ static int imx8mq_mipi_csi_sw_reset(struct csi_state *state) { int ret; - /* - * these are most likely self-clearing reset bits. to make it - * more clear, the reset-imx7 driver should implement the - * .reset() operation. - */ ret = reset_control_assert(state->rst); if (ret < 0) { dev_err(state->dev, "Failed to assert resets: %d\n", ret); return ret; } - return 0; + /* Explicitly release reset to make sure reset bits are cleared. */ + return reset_control_deassert(state->rst); } static void imx8mq_mipi_csi_set_params(struct csi_state *state)