From nobody Mon Apr 6 09:20:32 2026 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11013000.outbound.protection.outlook.com [40.107.159.0]) (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 6C285326D51; Fri, 20 Mar 2026 06:40:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.0 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773988843; cv=fail; b=jjkng2YR3c2+UOOCxWE8n+7KCVx8YdVSofA1tEcRj0IG7fZVSrIRvAbY5E7b6PIOXl50P4BFB+x9u5oGDE+8tAnzoNuhrnWwsHR27C4J5/ykxVLiPSv7T4M/+0DUcFZHChzA7QN6caVq4+r55s6tijaK0yhl+BwiMu6FPteC/GY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773988843; c=relaxed/simple; bh=0kjrL/9OXBxKr7+Q4JdLKmUp6iS2al/lnMt2GXH6WIs=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=TByFdS7DFhZMNpctvxkWP/gjdaYVhI0eeqvn6y15PGi4eBBJBlCcW8AQm0WiYsH5P2zYA3v1OCjTAUgzctgoJW/qeN8PlMCrH4nOeIiEriVhnYmDFg1L1x1ab86H58CFLfG0XBxZyS3qggf2LWTArrcFaSds7xk1rfykZ6EN/C8= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=dPcXWmVw; arc=fail smtp.client-ip=40.107.159.0 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="dPcXWmVw" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gqs8WWtxluivlOTkumDU1hjMYesF+iUJUrRaWX6LWNe99fe3WG1FORf9/eRsWd+VEBf0mTVUjCpUI5AZPq6EXKq/J8qBHZw5Ox/vCJP4xcsr3WEcrP/FvFoecMd8WM6qXAGRbUm7HPtiDUjXECB2xEmzQ3TzRzSeHw/ihehthMc2Q/pW9Zw6RwPo3AGukPhGP2ZsJIAv8Eie3q4sTs2aci4yBlLrEUFDmr973N/hdWrYYUtGn73+JSmGARTr+64xj8ntfsDQ+U5Yez199EoWRsVxprn8bJyPtZuM9AfYHAajCM9YpA+RhJ3n/d753d5g0ZMxpcjU20Lel3pJGt/d4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=TROLToLzc8fMhOmIb1+tkvl2R2fwYVTIiUsJcgoRJxI=; b=yebphTNgt2fttpYD4f0TgJkPFAyv2vxr9zLbXP+aXAfd/jejNDWxe+SPcFaIfoZxX7qf4Irw81GfJXzkFXM6iSyJsfOwVk6XMzjik5VVADXnKJhuuuOuvaLW4xqoMUPypTP0ZLSkOpHYszoLTGJT7r8Le7hGI14L02/h2GZ5bVgDFosUpMNLIP28ArNvETCoZWIw8hovjg5KVJMFYjBlmgm0wlHa69wlJE/H9+P77vpWzhrvM1N2nCbotIeIYaAS4e5KDCeJmUjGtC8z1y7HsIA/IthabuBomCsoO1wCByOHLc4aqj7XqU98JXhDrrDad96HECk/zoAw+GMmbWicYw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TROLToLzc8fMhOmIb1+tkvl2R2fwYVTIiUsJcgoRJxI=; b=dPcXWmVwLI6ZiHM3j+O0YNBpefUyJat4+LvFiEBPr+yK7eQlr5YvbHyR/bg3CyW0nkuCP7tYiqhRrgk6EFe9TsmQW2s9a1lAorlMYTnXfRuYC7ed7pNH1HbmWmjbEj6qCqskFjRvuQe0jjYkCTdZAG+w9gMTgSyd+P9NioYg8UgXYwzx3Ltp0PZRJnO/4WVM22xATVdHnz7SFL5HClcefiaB2ge+HO5SGnjBgzoMLlOQ0hbvqYoAemMhvdMT/ywrwW9qDJtCbjLqdeAePOc5XjxD9djij2ysW3GKW/34Kzjhnw4I7VG4qIAvWzLOck8yc6f20FLn6C/d8PHq8J+n+Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by GVUPR04MB12196.eurprd04.prod.outlook.com (2603:10a6:150:33b::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.23; Fri, 20 Mar 2026 06:40:30 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.20.9723.018; Fri, 20 Mar 2026 06:40:38 +0000 From: Guoniu Zhou Date: Fri, 20 Mar 2026 14:42:01 +0800 Subject: [PATCH v3 1/2] media: nxp: imx8-isi: Reduce minimum queued buffers from 2 to 0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260320-isi_min_buffers-v3-1-66e0fabccca3@oss.nxp.com> References: <20260320-isi_min_buffers-v3-0-66e0fabccca3@oss.nxp.com> In-Reply-To: <20260320-isi_min_buffers-v3-0-66e0fabccca3@oss.nxp.com> To: Laurent Pinchart , Mauro Carvalho Chehab , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Stefan Riedmueller , Jacopo Mondi , Christian Hemp Cc: linux-media@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Alexi Birlinger , Dong Aisheng , Guoniu Zhou , stable@vger.kernel.org X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773988967; l=1816; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=zs6w3SBlfQzFIcT7ZNKa6hYJoWu8arqkIqMkknU8Ktg=; b=r6AVwAaJdtmfT5lqa2LV4I/AnlcPtbxTvhlXCLGzekUaL+hmumxkroVNtJ1FPvDdUqZLkzyOa crjV0rMsdEyCglkwyfuY53sKWmb0xtBxO+w83ddgJ+emLl+Ea5X/I6M X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: MA5P287CA0005.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:176::14) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|GVUPR04MB12196:EE_ X-MS-Office365-Filtering-Correlation-Id: 83049651-cec7-4a40-efc1-08de864b9902 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|7416014|52116014|19092799006|1800799024|38350700014|56012099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: w570USuNisLy4Lsmy1RlcSPbgC+w+bxE8+p/qNpvvjKm62wYPHVtYY5QkrATSdkUTTDG1VereOb8xx9SYsn/nXwboR0fM7dlRkq5HFNwszXqJ9yp0zRZ7BRur5wTZdS8hHXeBnhnUgvruf7viGbDdxi9rHZLZX6o4F/xcafDawmx6ygJ0/LSxJ4p9pDTQH8i9GDs7F2k45JOQHEtVd2K3mGFzayAGyS12PZh4NHZuPjSNo6pxAFhNKynSaxWzyQbR3/f3Z5Y5/5OV9NlTQfp1f6qDj86xUJrZM+d4BGmbSXfDFENCP4KcQ9Il5hj1fisnPBchmIYM0PYIrXXxzXHofkbElp+zu9dEls469XKYbnnZlMsG6xRKsKw2ccGL7Q5LEZUF5FfULgw+Qv9TmmQqPXY0xrvOPFcqHHDwQGafqVGGSGah0ReSQoc4iRTN+fM40Ocudw3MSAXWBjSt2k6vR6JNPCA2QraZFepP7djjeWBCWG23RvupYMKVcO9omLwL1eA2HHFfDonrOd4LOMj9uVHulh5c4KlWTcC++D4/gVlklDJHVz3d1g9S6ZY7IOAISmQIVqru7xJBR+IDhZRQi3HPS6Iza1KeKDJ4b4iB7rU1CoBRjdVpQWdQVQiLRP2J1EGS/fl5WpIKt6qupMCb/7J9QOOD7+yWDomUEmvTPwTvrXb6OF6LgBXqEfyVqQ/kxtwP8MEnocTRnxiUrQJJOmZ4fvyaWh+/bD7Tas7J+ZFYspWuWGTR7FoHbGwFX6O X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(7416014)(52116014)(19092799006)(1800799024)(38350700014)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?alJvbi9XNzdWMXFXNXNPb0hlNmg3SmJQcWs2YlFlcWVTMUJ4S3NsK1pzdnV5?= =?utf-8?B?eDZBRFE2K2FOdnk5b2hzMlhBeDZpNEpRanNmdmVYcG9UditQYmNqZGJDS3ZF?= =?utf-8?B?SWhseWI4L09RZGZMVEFERWZJV3RkR2Vrcjk0Sk52SmhNZVU0eVoyM2JjM1Uy?= =?utf-8?B?Uk9xbFBDaWxSd3pORGxTbEsyZ0NtRDlETktieVZzNTQwTENiM0oxclFydUZT?= =?utf-8?B?YmtlVDFQOS8vOG1VaWJWeTRzZUFyMWxXaXQzMnBQZTFpRjlnenVkcjZ3NHhp?= =?utf-8?B?ZTZ6aFltd3pabWtaSVQzcjhEVkJwWnVlV2loVmJ1K2M1Rm1sdUxaaVk4TUl1?= =?utf-8?B?aDFTR08rRnVsNE5YYW53bjMyQUpaODQ2SUNIalB4U2lsUDM1ZTM1MUlzemhw?= =?utf-8?B?TlBuSnBOcU93OUptWk5uanNRellKSTE5Uit3b3BEazF5UjMyUzlLc1FhdVRJ?= =?utf-8?B?ajhmNmJKNXBsTmxxYkJZUGtkMk90N1UxUUJVNkhpTVlHMXhsVlZFeEd1eklZ?= =?utf-8?B?VFFObzlWbDA1ZUNTOHRpWk5ITUJUZHkxT3NQb3ZxL2pjZnZPVU5reEp2a2I3?= =?utf-8?B?RnhXYmNJbjFVUHM3NHpNNGVRMWxHRUYxem9iTldHckFBOUlkY2xYOHBEZm12?= =?utf-8?B?aVh3czQ0cmFZaDlFWkhVTUQ4WVFFWXJpODV0em9WSWt1eW9HRGkwSWRFd1U1?= =?utf-8?B?L2ZOTTk2TGNVNzEzWHM5aVRIaFErN3h2NDVXbHpMRk04WG1pZU1PK2FjYjVF?= =?utf-8?B?UlZpbGZoZVY5RThQZmswbTFQcGMwL0FzYktkc05pK3hrZUcwdU81OG1WSlNa?= =?utf-8?B?dmpKNi85QThvMjV4c0wyY0ZRQkpMa2NmSzUrTEtWRi8yZWo5TCtRb3dEeDNR?= =?utf-8?B?eWRzSGZsT1k2SnBuOVB3UGNDTTlEWHRqVmN3TncyTmtxQ0o5bDl1dG1CVWJZ?= =?utf-8?B?cnhFRFc2Z0dPajFjV3JmMnZQY0VEV0tzUEtTajQ0OXdNbVVZTFhqaXl6bjV2?= =?utf-8?B?K2xIcDFEM2NSd3F5a0Rza0xLRmNCRVN2L3lhdEJpQktQWlJyN1ZZYVM4YUJH?= =?utf-8?B?NTdlVHkxSFlNZ1NGYXpoZU5yblZETkU1VkJUOGswcWFlNHcvZUtDN0MvcjJN?= =?utf-8?B?U29oak1GaTU3UE4rRkhabzhGNElUMGQveTBJSThseURJWU00VENXY1pYTVhk?= =?utf-8?B?TW1sUHR1N1pGdjZ3QnNCSjlWRGVnT0l1eEZWaklSQjlxZjRPSllmcVZOTDRw?= =?utf-8?B?dW1mcVJJYVdpdlZ3NldJTGhxUy9IckdpUnBtRHZjMWFQZTJZaEtURDFGM3hX?= =?utf-8?B?YzJYU1IrSi8zWEJQcVVaUkRwVFpFS1pJNHMwUzB3NWhFaG80YVJzSXcvand0?= =?utf-8?B?aVhzdUtUYkl2MGFqODRSUkdEY0RDcmhaK09MTzcrSmFVamd4cTlGZDRGMjNS?= =?utf-8?B?N3ZBM1krMURKVWlNcHVCNEluMmdId1JvYmhVWVJOV0cvZGJDYnYzeDBlRXB4?= =?utf-8?B?NG1tcStRMEpnTndjVHFibFhadzRBcTVoTkV3WmtnNXQvWTJERkthcVdkZkMv?= =?utf-8?B?NjduVXlBOTRvVU9xejR2UCtCVlRTRkhJU3BPbExFNTBpM3NUZUhwQ3hJRlc1?= =?utf-8?B?dWRjbVh4YlNkaXZCOFM3azJLVG5IWWVuOUhWMXQvbnlySlV6VStKWlArOWpX?= =?utf-8?B?UTI1RnFnYU03bEk5SnY5NzdOdDZZc3V0ZUlOd1pmWEMrOVNWMElPc2tlR28v?= =?utf-8?B?emRXdEN5VEFXK0dxUDZMbk4vL1BtcElxSHk5RzlpSHBUK1A1V2VVRGpkODZ2?= =?utf-8?B?RGlBZTEvb0N0S0lpc3I3OXF5aWRxKzUyeVpGTnB3emFrSFVOazVBWE5qWGQ4?= =?utf-8?B?NFY2K295Mkc2cVhHdGRpeVJ6cFVUWE9ZWEdCYzBUbVB2MDl3KzdLOW1BcnJP?= =?utf-8?B?UUE4SlhDM3BTR3g0Rlk4YmZDWmpOUWJQcHRoSzduV0xzdFdPa1h3Mno4ckxE?= =?utf-8?B?bEppWldJSG9oc2N2WTN3bGNWdmhOS1FORnovR1lqSjIyZXN5LzEwVjdvbWpp?= =?utf-8?B?QXJ5ZTd5NUh3aFBTTUNVdWt3Q1RYSldWL2JuL01CRUVDRlJOSzA2bzF1SnNw?= =?utf-8?B?SEg5ZEp2eWprWW9DcjVWbENlY25NYndsZlVLcjJKN1VsMHZCTlYvbWJkc0xU?= =?utf-8?B?SDk0TXlsRmduWDB0ZTVWZFg4eUJNUnNITTBVeVJIOFJMdjdXVEIvTC9BRGVq?= =?utf-8?B?QkhPdGxiMFNMVEk2aEpYREROYmVJZFF1b2g2TmlZUUwwbThvaVhEWG55cmJM?= =?utf-8?B?cG5lMXh1eFQ2NWlhWEExdHA4ODR1OThYbjR6Z0hvQVJVUHZZNnI4Zz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 83049651-cec7-4a40-efc1-08de864b9902 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Mar 2026 06:40:38.2215 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: BaFwK/aLmNagwgb0JXOKxv8ZqUrnkoPOBEBSt/lBCA4r2+YycG+efhKihxbTqjRiJRyhnsbhWRr9vicmTZk1bg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVUPR04MB12196 From: Guoniu Zhou Fix a hang issue when capturing a single frame with applications like cam in libcamera. It would hang waiting for the driver to complete the buffer, but streaming never starts because min_queued_buffers was set to 2. The ISI module uses a ping-pong buffer mechanism that requires two buffers to be programmed at all times. However, when fewer than 2 user buffers are available, the driver use internal discard buffers to fill the remaining slot(s). Reduce minimum queued buffers from 2 to 0 allows streaming to start without any queued buffers. Fixes: cf21f328fcaf ("media: nxp: Add i.MX8 ISI driver") Cc: stable@vger.kernel.org Signed-off-by: Guoniu Zhou Reviewed-by: Laurent Pinchart --- Changes in v3: - Add Rb tag from Laurent Pinchart Changes in v2: - Reduce min_queued_buffers from 2 to 0 suggested by Jacopo Mondi https://lore.kernel.org/linux-media/20260311-isi_min_buffers-v1-0-c9299d6= e8ae6@nxp.com/T/#mcd4b7dcc218a02e2f218ba2c83b947ccefd9308b - Add fix tag --- drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c b/drivers= /media/platform/nxp/imx8-isi/imx8-isi-video.c index 13682bf6e9f8..1be3a728f32f 100644 --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c @@ -1410,7 +1410,7 @@ int mxc_isi_video_register(struct mxc_isi_pipe *pipe, q->mem_ops =3D &vb2_dma_contig_memops; q->buf_struct_size =3D sizeof(struct mxc_isi_buffer); q->timestamp_flags =3D V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC; - q->min_queued_buffers =3D 2; + q->min_queued_buffers =3D 0; q->lock =3D &video->lock; q->dev =3D pipe->isi->dev; =20 --=20 2.34.1 From nobody Mon Apr 6 09:20:32 2026 Received: from GVXPR05CU001.outbound.protection.outlook.com (mail-swedencentralazon11013034.outbound.protection.outlook.com [52.101.83.34]) (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 9B6A7326D44; Fri, 20 Mar 2026 06:40:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.83.34 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773988849; cv=fail; b=aYwvmKbvgsVHz+IVH1mWdwE4A+l97LpO5jPh7nBULdeSnIMKnYbGz2zFwseQf7AaXzfwkOJ+K3rTsEFfvAIFtrWKj1spGo02goRR36PiII3cHUnby43oyhE6hiHpgb7M77i6d/dd0GqLo3kqogKy9zxCIbvm0r8f8LBrObL0OgA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773988849; c=relaxed/simple; bh=ZmV/Ats/swMNWHwGTWT/AeFqR4opJ2/dvliygOgvVVE=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=fGpwmv6YS6D8FgN8jWd9EPR/ku6m4ySzigygykdGMOt27ahca8kjbPCMxTgjhd1PzO7XhXYlenO8VMf59f8HUi7Pm6YfCZ+fiLfFyiW44ZLEq73MY4ODk6joIJE2qjq6Sj1kCvWuYEwaHHRCCZOhI/Xzkuxp0vb0euVQ739zKCU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com; spf=pass smtp.mailfrom=oss.nxp.com; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b=jhfsUa+T; arc=fail smtp.client-ip=52.101.83.34 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="jhfsUa+T" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XqMA/vO/eh37jQc6XdVAjVUXZxizLSoY+UBNQCR2a8ikO5eYkc1YtVu3NP579on6hiur1qVTEqRawWsgFq7nEpkcA/+Ir0/smxqJSoym2UYb32jbRVe48of6XRijslZlvIBPSH66l4EAshOSDD1JcO56EZIrNrAhaSIGQtyJw0Tn7e7JebWdljFcFBOjZz9pj718n0ZYXeedEoXyBI4J/aVdHYxqJPdJE5Y2WU+e17eeB3VjmHjLYOeiVCQVl3cSmtxZXL+Ktj7jCAMh5atqHj0AfrM8HMKbh3Z77LifnAHxjIojOx/cfQZaYTEp2pDdWkYh0WW9IYHWrl6o+hFd2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=wJ9UZNbsFleYPF8KHSEmsVwWium17u2ebLnNwWUMs5g=; b=EKlGw9WTvqsJd8KtF6q9x46ojlrKEpZnQAMDzqnImDTLjC1bXz5gmaPnF1UW1XxAQEyJkYGt0Vo/YyqX4ASthg7WmRYHH44Pz9CD7kfvShuYBPKF+JHRmdsYThTxsKDyCfKxU7WQBHBw1lzaNBkmBEwm2dD3KDya2t6OQcWhNdmJhkf3FsYpoX5h6dQHxDaStYCdcAPao+ZOOmLPre2XEU6OGd3pUanLQede/DptSX1+9jzx1rb2v+qBLCF+KkbdnX0jnnSLrI5DM5fYWT0ucxlSRhCzm9L0OlZsfpVfK+MBsyTAEcrvzTvHot3MGIK0OiJDHetbUjppun/CqZG3zQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector1-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wJ9UZNbsFleYPF8KHSEmsVwWium17u2ebLnNwWUMs5g=; b=jhfsUa+TOFT43KljME+9RX/B6RYWSTJQHZdB1mkxp3+WomVH4EZJ0uuLYq3hF4bsb6rmT8voPCmYJZseCYZxYKr9tZHDH2QSN+0Wail2sO1w3Fywnhln7UNWJuiBHp8An0gHw6LcneWEl7dAc3ByqIJ1CUboIyT0o935cVtZZ+Th8QcKddVrqAHlepVn3Haa7rGq4oJ7x8gNYmZRCBSiAB4wsezT6FfFYSbHshTcUJFPjrOBrara3eykQqqa9GLSEg7ZOoVbDa8PahSPi5sFGZMT0Glns4cHC9NLlT3fCTLpTQOREUMd/QjyCkd4xF5ZPwFuoGE/whnl4RU00K8TyQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) by GVUPR04MB12196.eurprd04.prod.outlook.com (2603:10a6:150:33b::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.23; Fri, 20 Mar 2026 06:40:35 +0000 Received: from AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb]) by AS8PR04MB9080.eurprd04.prod.outlook.com ([fe80::92c2:2e03:bf99:68eb%6]) with mapi id 15.20.9723.018; Fri, 20 Mar 2026 06:40:43 +0000 From: Guoniu Zhou Date: Fri, 20 Mar 2026 14:42:02 +0800 Subject: [PATCH v3 2/2] media: nxp: imx8-isi: Prioritize pending buffers over discard buffers Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260320-isi_min_buffers-v3-2-66e0fabccca3@oss.nxp.com> References: <20260320-isi_min_buffers-v3-0-66e0fabccca3@oss.nxp.com> In-Reply-To: <20260320-isi_min_buffers-v3-0-66e0fabccca3@oss.nxp.com> To: Laurent Pinchart , Mauro Carvalho Chehab , Frank Li , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , Stefan Riedmueller , Jacopo Mondi , Christian Hemp Cc: linux-media@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Alexi Birlinger , Dong Aisheng , Guoniu Zhou X-Mailer: b4 0.14.0 X-Developer-Signature: v=1; a=ed25519-sha256; t=1773988967; l=2569; i=guoniu.zhou@oss.nxp.com; s=20250815; h=from:subject:message-id; bh=B/3N0ziSABdGKP+asmczHUn2xDi/g2MG42Xv8i8MLlQ=; b=9YP+QK4aDnLQgOcat3mjyJu3jUqPGfi7eH2TEYFw6BWmTZ6m10yiZt6QS4mIpkTSOP6oLecFP NvU1vnEo4nEDsJGzK92WrA5bvKdQ71I+9mtUbjTtDxs1DJjOCGy2SSo X-Developer-Key: i=guoniu.zhou@oss.nxp.com; a=ed25519; pk=MM+/XICg5S78/gs+f9wtGP6yIvkyjTdZwfaxXeu5rlo= X-ClientProxiedBy: MA5P287CA0005.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:176::14) To AS8PR04MB9080.eurprd04.prod.outlook.com (2603:10a6:20b:447::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8PR04MB9080:EE_|GVUPR04MB12196:EE_ X-MS-Office365-Filtering-Correlation-Id: e29e184f-d5e6-40bc-1df4-08de864b9bf7 X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-LD-Processed: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|7416014|52116014|19092799006|1800799024|38350700014|56012099003|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: g93Ah+1ok9tuxYfEgSnCPlWOYbcwxXNpyW/2ODGkrVT9RLcI1R7TuOyCt7slLi89NidN13BCYdUBmuUNqKjMzpZ5UM9fJclysiK8RJyzmcwPKkVOionJe+v4FcWbWxn3uz5CXzFw0e7KNLawZYrcZ+NmxPEpjN9g0Qkt7WZ1qcoAfqJXNkjxhT4DLg7OswwRdHJnphO3Bl401+kWYSQJbds1VTgUKfDqgC++ZygdCZgjeDGKdxTUjA/Umizuf0ZkXnN147hrQco9Pep2SQyRCFJrzyAFtWvdA09EgoHHWfxcw9VGPt/71ETVs6JQjrxZKohVwivA9nKho6lwecuaWXwBs5xoliQ8qYAgo8aI1L0PBHTJ8TIn8w/XUE5EayHpvHi0yETjaqooUFLYonh+Rxq1vwAOeUMapiWB+AAlUFLbSA9DdAaVBNIMdca+BzCIpdVBrI1s2qImiPWWpzGWY5+EqBZx9YM4Yd5VIzFpXHefHS5XmF7+4BySOecnUj+uytluj710wK796fKmU9TjV3fHDIgaI+e4JXgaPY/ipRioF9ap74wF0O+ZdqSZyEwYa2NwIxJUof9yHBXMmRajhrifa185iiOy9WKXRcYk8PsCOZKjV42gZluPp+Wlz3AsLKahzb8hSt5T3Mxx+/jCUOBS6OONvB4T05Bh2h9bGBfTKtVAsI7piKJDesVmXclKS97k6clZocSOFRwzA3IrZuqJfJBGSt8pyBt10XpsEV440ChjR++pKFt2aFS8+qre X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB9080.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(7416014)(52116014)(19092799006)(1800799024)(38350700014)(56012099003)(18002099003)(22082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WFVpRmsyN01NeVN2SkFvNWFpOXhUVUhUV3Q5bzdRcjBmbnNxem5Rb3BPRzdF?= =?utf-8?B?ODdqNXdCL1JnMDhZTWE0bWhpTk9qL3Q5Z2c3Nis5RitYUUVsNTQ2TGZGOUZT?= =?utf-8?B?UllKLyt1dFlhVG5JVmRjNVZHMGRWcnlMZGplR3Y5YllRZkwwMDFFWUcwZTla?= =?utf-8?B?NnViODVaOGJtdzEySk1SZi9MVXdOTGtGaWtORjlSQTVQRzhQR09RUlpFVGZk?= =?utf-8?B?M3Vya09HRXo0Vm00RkViUGtCL3ozc0RrRUtZQkt6djNaVTlKeG96OTJ4S1gr?= =?utf-8?B?NHI0TmZmKzI2SU54OVR0RnRMOGE3MmtJUlVGMStPcWgzT0J5SnNucjRHb29Q?= =?utf-8?B?cnFHbXZydkxNMEVEZVZvc0lRUXJpSWlFUlBqVXNSQnZqR2xSR0p5TVhOSlpT?= =?utf-8?B?N0sxVmpSWmJzK212c1U2L1I4QmUrNVlWQVB5QlhNTXZVdFVESGU5WDVJMTJX?= =?utf-8?B?dy9aSEdZc2thQVFzSHVVUXU3N1dyRXRTQlU0ZlQxZEJMRWRhODcydWF4SzZz?= =?utf-8?B?b1d2OHJWVlEyL3JuR2RqeUwwWDhpME9TVHkwVmdrL3Q5U1hBMjF0dXU5Q0E4?= =?utf-8?B?RmRnVkFac01kYWtRRjhGc3ZMRlBoRkNJU2lFWGJ5SzFsV1RRRFlnZHU0S0pt?= =?utf-8?B?SjZyR3VkcGRhRmJkLzJQQ21GTjQ2bFhvU28xR2pCUm1WNExDRnplVkVNMUVB?= =?utf-8?B?d3A3TnRDWmN2bGJhajZyazRHSlJVTVNEeEovTkcyMzdVT0NQRHJqMVRwMUR2?= =?utf-8?B?WmJDNTljRmtxdTYxTStZTnllWXMreXNTaVRlQjNtVFNObnRiWmpqRVBIWWJO?= =?utf-8?B?bC9mY1U0Y1loL3N3TU5lYlU2OU40T0dTRHFuVjdKT2lGblI4OFZMVk1pcnZT?= =?utf-8?B?bHU2ZEJMZUFEck44YkRGZEl4aTlQMzlkZWpycGl0Y0hKVVVkaUNLZ1QxS0hu?= =?utf-8?B?Z1ZSQ2RpZnd2MFBvOWlFcEFIRDBsT2NBa083MlAyVXIyTkljdHZFcm9MNlgv?= =?utf-8?B?VEFmaDNlZ2FaY1AyNFlUSkpUR3VZRFh2bjBMbUhsK0NOMFp6ajZYSWwwc2dS?= =?utf-8?B?RzZRcG42cktaZmYrYXFIbWxLa3hvWFZpNW5TQkRKaDdJaExnT2o2cEJsVnJy?= =?utf-8?B?NUNUMzBYd3l6UGNKV3YwR0ZXbENkeHJwTVM2TGgxYmlrQk8xZEFyVzdMTTJK?= =?utf-8?B?YnhZZkpGbWp3MFU1eXpBaVVwOUpTRFduRjlnTDB4Qys2Qisza1BhVGtEbzUz?= =?utf-8?B?dXN6Y2E0TmgxTXl0WDdkbG03QjBkTll6WWdpcDdudWwrRys1M0xwcU5tT0hS?= =?utf-8?B?TnhSUlRSYTBrRGE0ek41UVBGQkgrYTc3dEZ5RWtYOElUR2wvVUNYbWVYaC9h?= =?utf-8?B?RTZhWk5WT1EvMEhVUmxvZW5rZlVYYUFzYVMvU1BVQ3dIREpleGFnbU0vemor?= =?utf-8?B?aUJhZGFBQWhYR1oxWExQdVNiWFJZYW11SnV4VDlxRnBPVVBGZ0tXdEp0a0h5?= =?utf-8?B?UHBnUVdFLy8rRDFCQzlTNFdwREpDM0N6NkI2MVBXaUdJM05Id0c5N0xlNE1p?= =?utf-8?B?Wm9KTGFnQ3VFZzFwOHpwY1kvemNDbkRTWGpNWEJNdHBVUlBDSnRlN2NBd0Ux?= =?utf-8?B?MHF3NHF5MWVWRTlQNGxOTFpNQ1FiclRIS1VKRnJHL1hzNFpSelBUTlBjMmlr?= =?utf-8?B?UnBHQjBQZGlUeW5iUXFVSEQ2YWdBTDk2QXhvTVZHUFo3cDBVZmY4RklheUMz?= =?utf-8?B?eCtLa3RVTDJOYWllbURZS0g3VlU0TEdWY3NRRnFHMlExNTJWdW1BMWJPbUZs?= =?utf-8?B?a1B4eFJIYVRLNi9TVmt3Y282dTNjTW9ucWhpZzdEcXl0TSsvTTZYV2w3SDky?= =?utf-8?B?WTNVQWdJSFNQaGlFWkRHb0R6UUFMd2phaXpPRnJhSG43SHNkeG44MUduS3Rt?= =?utf-8?B?Ny9qZkFZWHVGa29MZXpOU1VrblI5c1o1UExFankxVmkxeDE3b3g1eDVrVW9C?= =?utf-8?B?NWloZitGOG9oWXRTVjE4TTMxSmpMSjdsZC9YZXp5YnVUaTZMOURvTUFMaGZW?= =?utf-8?B?WkUvWmVPK05EdWZrU2Y2VXZoTUxBNExhMzZKNzRNUnVoWUNGWlBFdFJUL0or?= =?utf-8?B?YXdPdWNjWDdiWW1keGtvamRKMUw5YUtTT3E5N2pvOW1MR05PUWNTa0VQVXRo?= =?utf-8?B?bEJZYTNkSWxrbGI4cEgzbGd3VHpRNDFUQmhoRkVvcmhWc01vbnRVRDBmUHFp?= =?utf-8?B?NnRkbHpLUWUwei9uK0luTzBucUZFaFFNRWNpZXdtendSdGJiL3VKMTU2OXhT?= =?utf-8?B?YUxHRmpJMlJyeHR6cUhVSFdkRUk3eXIyMXFZWE1URndYQ2wrZTdJdz09?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: e29e184f-d5e6-40bc-1df4-08de864b9bf7 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB9080.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Mar 2026 06:40:43.1831 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 6PoKS+D3Sfc0im6BaWQEdxV8mfv+rXX1ffQsw4xP5DGIv/bt10M29Yv+dvRn5d3UrVSj+dFAYUrG8EWN/Addmg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVUPR04MB12196 From: Guoniu Zhou The number of times to use the discard buffer is determined by the out_pending list size: discard =3D list_empty(&video->out_pending) ? 2 : list_is_singular(&video->out_pending) ? 1 : 0; In the current buffer selection logic, when both discard and pending buffers are available, the driver fills hardware slots with discard buffers first which results in an unnecessary frame drop even though a user buffer was queued and ready. Change the buffer selection logic to use pending buffers first (up to the number available), and only use discard buffers to fill remaining slots when insufficient pending buffers are queued. This improves behavior by: - Reducing discarded frames at stream start when user buffers are ready - Decreasing latency in delivering captured frames to user-space - Ensuring user buffers are utilized as soon as they are queued - Improving overall buffer utilization efficiency Signed-off-by: Guoniu Zhou --- Changes in v3: - Expanded commit message to explain the problem in current driver and the benefits gained from this change - No code changes Changes in v2: - Replace "This ensures" with "ensure" - Put example from commit message to comment in driver suggested by Frank https://lore.kernel.org/linux-media/20260311-isi_min_buffers-v1-0-c9299d6= e8ae6@nxp.com/T/#m2774912ed31553ef1fdcc840bd6eae53a03ecccd --- drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c b/drivers= /media/platform/nxp/imx8-isi/imx8-isi-video.c index 1be3a728f32f..77ebff03323a 100644 --- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c +++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c @@ -792,7 +792,14 @@ static void mxc_isi_video_queue_first_buffers(struct m= xc_isi_video *video) struct mxc_isi_buffer *buf; struct list_head *list; =20 - list =3D i < discard ? &video->out_discard : &video->out_pending; + /* + * Queue buffers: prioritize pending buffers, then discard buffers + * For example: + * - 2 pending buffers: both slots use pending buffers + * - 1 pending buffer: first slot uses pending, second uses discard + * - 0 pending buffers: both slots use discard buffers + */ + list =3D (i < 2 - discard) ? &video->out_pending : &video->out_discard; buf =3D list_first_entry(list, struct mxc_isi_buffer, list); =20 mxc_isi_channel_set_outbuf(video->pipe, buf->dma_addrs, buf_id); --=20 2.34.1