From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 695BF3FF1CD; Fri, 15 May 2026 15:52:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778860322; cv=none; b=dRC8OkZpYYtxoHQ+TUMovJDWPTnlVm0+oHHd0Q04JzeYsG2HiCpcfEBnntJfE5JrENbLtdaFuM8evDixOawJ9e6Mv+A+saH1M3ytmBDZOg0e8fdEPaBMnwB2o/fVKaRXes8w+PbUbiWAF3UF7+0sFeaRLHMk+agIsbCWbzcs3fg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778860322; c=relaxed/simple; bh=4dVT5JYZYjJqWR4XrJ0vb/MV4sWr2EJJxRgEoy6YKcU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nzP8Nt2+E4MpEidqQQckpHNNdurlKV0Uw+adnH+9gXXGNQEAdXcSG5Pb0x1OrgRTulUjN4XiELGHfrBTagu5iKDLMod0Nb/1wUAk+ezttFMBE6oSD5FbDD5VzfHGo9B0v5QbSBYSbMbM7oEYg6H279FQDwB4+aO1p8PbyHFiCO0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=KeSuo4B9; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="KeSuo4B9" Received: by smtp.kernel.org (Postfix) with ESMTPSA id EABBAC2BCB0; Fri, 15 May 2026 15:52:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1778860322; bh=4dVT5JYZYjJqWR4XrJ0vb/MV4sWr2EJJxRgEoy6YKcU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KeSuo4B97YOkgQv9Y4PvlU0WK9qc2fec+n3g2gClyo9ptwILpIoOh9KeKe9ibmeHJ k/R4sDf9QNpLMBb4IFVBKKrQmjfZdjuC/RpVbBflOnggY8aqttIWrM/MRUtAhATb8r WkpWe/ZckOVG1ZB1TQHDte/HEK4LzG//x3u02O/M= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Jai Luthra , Kieran Bingham , Sakari Ailus , Mauro Carvalho Chehab Subject: [PATCH 6.12 017/144] media: i2c: imx283: Enter full standby when stopping streaming Date: Fri, 15 May 2026 17:47:23 +0200 Message-ID: <20260515154653.893741546@linuxfoundation.org> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260515154653.469907118@linuxfoundation.org> References: <20260515154653.469907118@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.12-stable review patch. If anyone has any objections, please let me know. ------------------ From: Jai Luthra commit bce1349dbf6348ddee47308e2ed08878356de317 upstream. Use IMX283_STANDBY (bit 0) instead of IMX283_STBLOGIC (bit 1) when stopping streaming. STBLOGIC only puts the sensor logic into standby but leaves the MIPI interface (along with other components) in an indeterminate state. This (presumably) causes the CSI receiver (e.g. Raspberry Pi's CFE) to miss the LP-11 to HS transition when streaming restarts, resulting in a hang of 10+ seconds. The issue is most visible when immediately restarting a full-resolution stream after stopping a 3x3 binned one, so that runtime suspend hasn't yet been triggered. Writing IMX283_STANDBY puts the entire sensor into standby. The imx283_standby_cancel() sequence already handles the full wakeup from this suspended state. Cc: stable@vger.kernel.org Link: https://github.com/raspberrypi/linux/issues/7153 Link: https://github.com/will127534/OneInchEye/issues/12 Fixes: ccb4eb4496fa ("media: i2c: Add imx283 camera sensor driver") Signed-off-by: Jai Luthra Tested-by: Kieran Bingham Reviewed-by: Kieran Bingham Signed-off-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Greg Kroah-Hartman --- drivers/media/i2c/imx283.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/media/i2c/imx283.c +++ b/drivers/media/i2c/imx283.c @@ -1160,7 +1160,7 @@ static int imx283_disable_streams(struct if (pad != IMAGE_PAD) return -EINVAL; - ret = cci_write(imx283->cci, IMX283_REG_STANDBY, IMX283_STBLOGIC, NULL); + ret = cci_write(imx283->cci, IMX283_REG_STANDBY, IMX283_STANDBY, NULL); if (ret) dev_err(imx283->dev, "Failed to stop stream\n");