From nobody Fri Sep 25 01:20:33 2026 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11013004.outbound.protection.outlook.com [40.107.159.4]) (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 AFF4A4EB871; Thu, 17 Sep 2026 20:09:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.4 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789675757; cv=fail; b=c/FRJcW8Uvyzfzsq5eeC1hKtFm4Mi0QiBq8v5Gvikp4pKvyBb1PJvK1RSLQQKVjEHCJsD/5jrTq9wiLHK5qBQo5CT1RwIYiMZhX6ceTjmSuE3mb7KWATJiGjE7RJ56GBZchgfRQdLRjk6SqaWPpsCvXKfTigPPT5KXvmHzEMLZM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789675757; c=relaxed/simple; bh=c3prGjqQNuCb/1WxNIaz/1UjBX7MCJur4Zo7s6bjxCg=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=OH9A9B7il6+4cQxnc7fdl9zsmZoIR+qlkUSL6BwnFbnD0u3VeaZcnGJ6Y0c3BtgxHbXOMh9YC5FKddXlW3yrsD6zETpo3uIEYE5XJ+l5XNJLPLPhW2xQvOTva4k7p+NbHlx32o11oeBVHrRnkEz90mu7Mjely1h28E131Bwf9mc= 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=Nlh10KZe; arc=fail smtp.client-ip=40.107.159.4 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="Nlh10KZe" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=M+0QdPuWm6WfktcYqcLNUvYkBwAnF3tTq0vj3K6oIHmVbE6y8EFJ7FkdvPNel4c7wr+wP6JLb/E8vfpTg7viGuWt8M6gnrQ8CsEsJYV+qARveDOlYZx/VOHrA/O6NvqjKa6QHXthnW5SHgWsxU71m1Hc7Z7/EM6XE/BEDJl23ljkx4thSYDlStHlIiVySbWzks9NKLlEu2Wd1ujHPs7R5eBBuNcmmCwCRIau0e/W9VYeFniDxB0wWqYfw8RPd+d6cSN560nzWqAiKihUKZjpaj8+YJuMdQIGlZQ4ETex2DE9fSqdGJDDvKw5BExZp/JMhiP30wgeCbuglDBBdIxGmA== 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=PZq8e2eNHOxt5T//o5SZZmn+53Kxm0TAfObkV5rMVEQ=; b=pQQ8+zDA+fW7F7M3mev0mJLn28HmdQGf2p7BQNSUegtUXgidkyNwb/+cyE37vW0aIbg7BzyDuX7uG4zyOPf+4grx06459TXokeDqbOi03yd6/b91nWo92jSr2ZfJB9RpB9cF3FTjFLkWofJDKFaDi/p0noHai1FzBEdApvMIyZOXhCne6QTUBtGKLS8VXHqThVikVFs432hEs31CSlvd76GgUQM4KE4LsL/LhActfyUZ3pjv5xoTNq9BcbK4ze6R6H464J+6LxywWB6mlIbsS0MWM3RYJHRq+VnrerzmiLlExsJb7eEOM6+rPvVQMK1vfnqkUWEthLWWdJhZiq0wHQ== 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=PZq8e2eNHOxt5T//o5SZZmn+53Kxm0TAfObkV5rMVEQ=; b=Nlh10KZegbVYNiqWZKAOvMcyR/4r3qrlOw0cnr1XHsc4pTK00NBgjjcpkjVawQvLwLktd+vS+RAITNifOseZ2wxXfuHRdMspqBetp3QdPz4KdnVZinarEQXtU/D7Dk5C4f2us0KmaRML1Hk8yhOlq8AeaasyIrIQ41vPOkW7bNd1FM3ib2iJKn7XCUu0G2DUDc/Jc9CGiSNIO1KOSMhpBuuUlYJLfFaNDHbxV1YSWdn+yu3lgTcdTdOReqK4S1gKlhwS33pnA7FciVe5ssC1XWTLLuj0bvI2XAiDUXuc6Jr2zJdowtQZoa2gtEbYD87mrC5Iy/9BaeVtybO5Hmh2zg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DU4PR04MB11791.eurprd04.prod.outlook.com (2603:10a6:10:623::11) by PA4PR04MB9709.eurprd04.prod.outlook.com (2603:10a6:102:26b::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.12; Thu, 17 Sep 2026 20:09:12 +0000 Received: from DU4PR04MB11791.eurprd04.prod.outlook.com ([fe80::11ca:6b74:3234:d7de]) by DU4PR04MB11791.eurprd04.prod.outlook.com ([fe80::11ca:6b74:3234:d7de%5]) with mapi id 15.21.0428.011; Thu, 17 Sep 2026 20:09:12 +0000 From: Frank.Li@oss.nxp.com Date: Thu, 17 Sep 2026 16:08:43 -0400 Subject: [PATCH 1/2] dmaengine: add dmaengine_prep_slave_sg_context() to wrap prep_slave_sg Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260917-b4-dmaengine-prep-slave-sg-v1-1-239c12864143@nxp.com> References: <20260917-b4-dmaengine-prep-slave-sg-v1-0-239c12864143@nxp.com> In-Reply-To: <20260917-b4-dmaengine-prep-slave-sg-v1-0-239c12864143@nxp.com> To: Vinod Koul , Frank Li , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Orson Zhai , Baolin Wang , Chunyan Zhang Cc: dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sound@vger.kernel.org, imx@lists.linux.dev, Frank Li X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1789675741; l=2006; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=SM+gzVvKuiuPi2Tx1a5Uiy55g4sDIZVRLk9S0eTPuqo=; b=nqahrnLPO5pX75Qu71NTzfV0y1SHpFwjskHyhsfDk+Eh8a+626HWInAJEM5QLs9aP1xJGzKjB PU5Xv/zK5+TC+FEbcT6w5PkQZq1kBUGO3AI6WCuHQnUapuj0hPysiMa X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: PH8PR07CA0036.namprd07.prod.outlook.com (2603:10b6:510:2cf::9) To DU4PR04MB11791.eurprd04.prod.outlook.com (2603:10a6:10:623::11) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU4PR04MB11791:EE_|PA4PR04MB9709:EE_ X-MS-Office365-Filtering-Correlation-Id: ada7e03d-3c87-4006-e4bb-08df14f78a03 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|19092799006|23010399003|366016|1800799024|6133799003|10067099003|56012099006|11063799006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: jERC4vsAK+/pKT+b7lq9Uiwgk0WM3YLfqAdeS/QtWTuocmyBUd0AZzkvSZk7SGnYtJ+O2UIUWIkVjpeIQkXxHItbLiBvrHZmRYqb4C5M+uXmSs4vRdSHZ7GuWlHW1y8NtR+sznzWnBayo5von2VisFlg+eEd6krrvwBNvvYgE5k/gSgBUVbJUcWguaf4zLJmAmvsAtAPasMG91p7pC0iMgWSbWhfhuGa6Xc1UCQAZ/NwyqTZPLaoJV0/R9MkFW/W5JQFOIvzECFzmTSqPqe3aWYj/xkuXkko2A1sFjt0waUmSmWdLTADJzmflKuz7D6/QxVIla/08oIzJnuDxBdzx7uxOk6ChmLNi+OoGKnVisG8+hPPCwafdg6C1Ty/OK08IwXoQX0NO4UcDgGUCSlsgYG8MEGz/yCnA2t5X+UvH0KGR7u/eZcUjv33dfRTmKs6t49X7omRr9yUMg76q1z+gxFLCqxfhGAEQaeN2FZ0PCVS54zz2CmbWnt99ZOiBlZMOoQCI3F3dA80+FfJSuRACMLyrIAtDo7HdA4VCg9tIqx64rE2W1tTF+mC8WtA+wa0Q0PAaqORbDWmNZfaDCEPRbqnfge+KF03A0n06+y5+8c/xaSup/cODehidaWG15D7BrjMJaaJ1rn9/tGEaorJmoyge+qj07P87kWOUnol8HY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU4PR04MB11791.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(19092799006)(23010399003)(366016)(1800799024)(6133799003)(10067099003)(56012099006)(11063799006)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QU1udW93YkdFNXl3RUpNRXJvbzg1N3NZUWJaSXJUSWNvZDE4VklsTXE0UnFa?= =?utf-8?B?d0FiZlJGbXMyTmpCalc0dDZWMlBQSkpFREpHZ1Q1K2toNG9TdXdOZHJ3ZVkr?= =?utf-8?B?Q3k0bVRNTVZFNjBKRTdaR2l6ZlBFbm13em14MjFFQkxtbnI1bnFLc2pWL3ht?= =?utf-8?B?QmZvODRIUUxXbzNFbThxOTVtZ2FJN1YzdVRQbWZOZnBPOWZKdXZmZy9GKzMy?= =?utf-8?B?RHhseDNmQ0JrZUZTcHhjSWlRSlZLQjhYZUFET1RsQytSVUlyOGh5LzlLSlVK?= =?utf-8?B?WmFmRnFrOVpDZk12bVR4eU9oaDh3ak5oSUFydWxHcjAxUGk1UlNwTjRXUGN5?= =?utf-8?B?V1pKZ29va2t4UklPVmgrQ2FmR2xxVVVSUFk0aGhsK1Y3Zi9ETmVtVnduSmFV?= =?utf-8?B?dmsyOTJieGxMK2xFVGNadHh2MXRvMC9zeW9obUFOQit5RW1oNGo5SFA5SGJC?= =?utf-8?B?NGpFWUVvdU5YK0RKM0tSdThEZzVIYzZtL1NGeW5xeml0M2xYSzNPNFVRTElo?= =?utf-8?B?cXNvZWlZR0JxQTgzVW9qKzlzUEZHcUU4RC9VOEFuQmVNL3pENW5MZ0VibSt3?= =?utf-8?B?OW01enlVd2JyeWZVYkhPc2JVSVdLaGRZV29PZlJKOEhGWUVXME5nSkE1cVd6?= =?utf-8?B?MkdzWnRhUXQvRjUxZVF0aGVVbFBjL1FMSkNHSnI0WHY2bU1rb1pFalZSdzlU?= =?utf-8?B?aWx1OWdSSDF6akZvYWVpTFpJR3RwckdIb1Fibk4yc0NNRDZJUm1LK2ZpcXMx?= =?utf-8?B?SThVTzNzYU1IWVJZc252RFZ4V3JTSkQyaGM2VW0vMHdMMkpOUXVRRlpIbGJH?= =?utf-8?B?WkxhdWtCV3g5QXNQNGZVWVNrT1RWaHN2emtvem5VTklZUGt4bE5HSmlmNnhJ?= =?utf-8?B?TkEyL3l1NEJ1TGZBOUdRUGVOazQ0cWVjVys2ck1rZkxlRjduWUovRURqSFVV?= =?utf-8?B?UDI2T1k3ci9SSHVNUzBEcThWU2VsY3IzYmh3YmRBOXpGeS9KQ0VBTGd0bG5p?= =?utf-8?B?ck44WUo5NmtlcThYSDF5Q3VvUlIvWkVZMGVSeExwNVAwZElpdG5Ca21YNkFy?= =?utf-8?B?MGVjK1MrNEczSDFnZ3ZBRG1RUTRpeEx5SWFiKzlUdllMRmlsWFBDM2JNRkp2?= =?utf-8?B?KzZxT09RQzZ6bEV0UkFoeGdDblFlTjVUT1BnbDZHNnc1ZWh0SHpZV28rbEFO?= =?utf-8?B?a0dIaVhaSnBkdkZ2b09MemNJa2w1ak1HL1lwQzR5bzdnQTdQMmltQmlOUlBY?= =?utf-8?B?ekMrbEdMK2ZIQlU4UEJ6NFpiTU5nVVd1S1FWSzYwR0dsak51Zy83ak5FT2ZR?= =?utf-8?B?RVozbGtyVmhsU3pQU3l4SllDVzRPT1BMdWlSVUthQ3VPcVVxMndDNVZqZmU4?= =?utf-8?B?NDZ2cnhGT1N0dlNJbzN1ZlZqK2dacjdhZlhmSGFpTjZ2V2tNY3NKRjAraGMx?= =?utf-8?B?OXFQdHJiZHI0UEIyUmxjSXdsRnhLbFpDQ1JQVitBMjM1M096TlB3bEdIRTJ6?= =?utf-8?B?K3dKcXhGNlM4ZEVhWGZiQnZIcUo0QmZEUzVwUnpBVlROY3ZtY2FXREJOeHI2?= =?utf-8?B?d1d1QVB1cGU4dFdjMFVWV3htbjFGMTNuclVVMUV0L3ZrSE1yZWE1SWM4RnNm?= =?utf-8?B?bkdRWFVrekU5cUxDZjk3MnJRcUpRcDdwNUpyUFE1b3N4YVEydng3dkUzK05K?= =?utf-8?B?UTRwVG9LU0doMnVPejNNUkRJOU4yU21Xcnlxa0o2cWt2aVd5dkQ2M0QzckVt?= =?utf-8?B?RStCcHJjL1lpKzRIMXVkOWhSa1Z6T1NYaDQrSWloVzNsTnh6emczT0dXNzd0?= =?utf-8?B?TkZ0eHFIOUEyN1llTlFlTmNDdDRmYUhncG1HUnJUcnJIRE05MWZTV3B3cXdI?= =?utf-8?B?Vk9RYzdnYi9vcXcyOEhVU0ZtSUJJZ2Q5RHlKYVlTbDZuKzY3MHBtUk82Ulhz?= =?utf-8?B?U1dpdWE5MkVBalFkUU81djFsVkJaT1g0aHF3NHI3NWlqUXZFbWJRT29Eb0lx?= =?utf-8?B?SzNNL2VKcTdvbFNRQ1BkcTRpQVlBK3d4NGNRQ2NLdHpDNkFMOUlXdi9SRUZu?= =?utf-8?B?VXE2N2lLVjZ5azlWdmRYeGkvL0gxUHdNZzBVK3BNdVpTZU5hZEtkMDlVUGty?= =?utf-8?B?U1QwQmQyNzhvSmRveHY0QkRmM2Z4WTNZbHFMejkvZnlXRFRmV3pQVXB1TGFP?= =?utf-8?B?aDFPRkRKVWhDVWhVaWF0Nks1eHBEdlROa0VVcEt4eUlIV3hveUxhVVFxdTZ3?= =?utf-8?B?dGxZMjAyZ1N1V0MxaUtmOEpzRHdERGZnYXFpV0NLYUlHOU9kWUk2QjRrMXBm?= =?utf-8?B?QUR3RGZIWlUvQk0wYUUxRUlIOFQ4bSs0RFdTVjBTdUZvQ29MKzZRYTI2Z1hJ?= =?utf-8?Q?rJ/zjzcp0PouM2vnNOVM33fAnmwfJJnCYHTBO?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: ada7e03d-3c87-4006-e4bb-08df14f78a03 X-MS-Exchange-CrossTenant-AuthSource: DU4PR04MB11791.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Sep 2026 20:09:12.5280 (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: GrrTbAQdVpuIsaoOLUcgH2gLjFxz3vESfzYy32Z2MUu+hBPBqxoSfghU1TMk46WPnEM/cUT1Yzcn2hc7sHYZVX5Elz/Rzkgr3DDt9dNmbRRqaTZ4iscECjrVuCDlVrO+ X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9709 From: Frank Li Most DMA engine providers and consumers do not use the context argument of prep_slave_sg(). A few do, however: Consumers: sound/soc/sprd/sprd-pcm-compress.c Providers: drivers/dma/sprd-dma.c - sprd_dma_prep_slave_sg() casts context to struct sprd_dma_linklist * to set up a linked list descriptor chain. drivers/dma/ti/k3-udma.c - udma_prep_slave_sg() passes context down to internal sub-functions for normal, PKTDMA, and BCDMA variants. drivers/dma/xilinx/xilinx_dma.c - xilinx_dma_prep_slave_sg() and xilinx_mcdma_prep_slave_sg() both cast context to u32 *app_w to write APP words into DMA descriptors. Add dmaengine_prep_slave_sg_context() as a wrapper so consumers do not need to access the DMA engine callback pointer directly. This is a preparatory step toward making DMA engine provider internals private. Make it as deprecated. Signed-off-by: Frank Li --- include/linux/dmaengine.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h index c3a49a33307c6..b4589cad6d742 100644 --- a/include/linux/dmaengine.h +++ b/include/linux/dmaengine.h @@ -1084,6 +1084,19 @@ dmaengine_prep_slave_sg(struct dma_chan *chan, struc= t scatterlist *sgl, return dmaengine_prep_config_sg(chan, sgl, sg_len, dir, flags, NULL); } =20 +/* Depercated, don't use it except sound/soc/sprd/ */ +static inline struct dma_async_tx_descriptor * +dmaengine_prep_slave_sg_context(struct dma_chan *chan, struct scatterlist = *sgl, + unsigned int sg_len, enum dma_transfer_direction dir, + unsigned long flags, void *context) +{ + if (!chan->device->device_prep_slave_sg) + return NULL; + + return chan->device->device_prep_slave_sg(chan, sgl, sg_len, dir, + flags, context); +} + /** * dmaengine_prep_config_sg_safe - prepare a scatter-gather DMA transfer * with atomic slave configuration update --=20 2.43.0 From nobody Fri Sep 25 01:20:33 2026 Received: from MRWPR03CU001.outbound.protection.outlook.com (mail-francesouthazon11011005.outbound.protection.outlook.com [40.107.130.5]) (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 E58173E0082; Thu, 17 Sep 2026 20:09:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.130.5 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789675772; cv=fail; b=VVQlmOMELXJQq0NvWLUZU+MTqhiUTqqUTHpIODyrLtuZiLdgWp1+pcAm+tluUWlu8f3E0Q6NmsTpgKfMDC2tWJUD9zsVI6Qgqd/qZDOR9eT6+0+VW9gILzYABw00xo7B8M+5wM+2VpKUSomDUnqOXwGE8pI1iU7Kyh8SRjzawH0= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789675772; c=relaxed/simple; bh=7+1jGNcnjElR6VCV61IcmmJuJZz6/9KuJolfmyOrbsc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=A5a9DYpM4KuW0AztCym953gCID0LQGHUov9htTZdEMCWSX1XKuUOTokNhKLn7KABwYs6aE9L4QFLqOkSt4DNHbCjKDCF5SfTvIVx/ZwnoAViWZ7Np4h2xgvGIAru2ECRsDSocdnzo7m3vWBEWX2++QIUOxYGrVYYzShXU9dr8jo= 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=KZFx4Czp; arc=fail smtp.client-ip=40.107.130.5 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="KZFx4Czp" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ZATmNoKz2DI1+aijT0D1b8o66nYcI0pPmHiI2JOajkDdkEcas+PRqp9HJ173yIQl5UOLlJPvkbwjj9pXwJWDU5SEMYJn97QqOymg+DurrsklRH/2LHlFkDH8k0GJORuOR/j4FqQhGFYer2VVadOOJTzfxXpusirLkYOzA0DDTwbobXgiGAQGrqJ6XjjNbAt44BeD/eIpgrlB+PJUZ7F6xF/juSf0VN9U+ZzkfICL5JSmig74BGdb6yem9t7UWFenZExnLxF6ibtl+qLlaJeikmE+aL1b+CATKS5LqaxX7sqlMEYKCR/iSVCzVOCU7i6Slb+c7B61AyHpixzGdGnbOg== 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=2g2BLNjZLS2tUh0mBpZfziTCB444M8Vw+dJ8cpShoe4=; b=xv8us3tpLDsGJZb6ECJreV35h8Ky3i4PG1c+7NsFar2y+68w5DwDTTEsFWGgbvsW2/v+gGg6HXMPpxHrwjthE5QqO9XcXfFGz9TWpV56kbCwFLszjxznUebyBZMcCDRx2LT649p4hrivAQ4s8RU+arxjNXAvsf2YEZbkADXUfofrcr/zJ47hwLEfYodAXBzgP3sdw6UpKGh7kD8GYOaB6bWuhKh0bBzdNGK2joo0ail853z4N5SsGbjuLSv2B26lwcGe5kxQG53/8H2Csuznp41tUvGNnIng/lCgwzhvO4xl81QxlIjeI8n9eXDk3P099s+yIy97K8fT9GVaMsMP0g== 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=2g2BLNjZLS2tUh0mBpZfziTCB444M8Vw+dJ8cpShoe4=; b=KZFx4CzpvhInZMN64Vg5gzvqUsZuEasN13n3Cb1/JL4QiUtmztLsEBzsoK2S7Fe4AiXnPJjywxSHu4nmZj4OEj6Cp9w9GFoHOdb8Aq2FYOZAOSt0cx9Gh1AjkDbX7Khszd9mqGMMfA/sRNnK4y7WcDHdS0Ah4pSWi1jKB9US4KWLqtX6ajqD17Bg/R4d+vtBIuz9tTBBS1iJdaku9KZx5olAGSwHR82l0cYV3BEu8dJwTr+Uhuhdk8pItj3RC29rpr6IiaNAnlqvHEFCP674eLv5uasTloKUgvESaLURn8E8R3Saak1cZvAK/e8JMr2UjfR6+9TiHPdFwzRmjSp1fA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DU4PR04MB11791.eurprd04.prod.outlook.com (2603:10a6:10:623::11) by PA4PR04MB9709.eurprd04.prod.outlook.com (2603:10a6:102:26b::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.406.12; Thu, 17 Sep 2026 20:09:18 +0000 Received: from DU4PR04MB11791.eurprd04.prod.outlook.com ([fe80::11ca:6b74:3234:d7de]) by DU4PR04MB11791.eurprd04.prod.outlook.com ([fe80::11ca:6b74:3234:d7de%5]) with mapi id 15.21.0428.011; Thu, 17 Sep 2026 20:09:18 +0000 From: Frank.Li@oss.nxp.com Date: Thu, 17 Sep 2026 16:08:44 -0400 Subject: [PATCH 2/2] ASoC: sprd: replace direct ->device_prep*() calls with standard DMA engine API Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260917-b4-dmaengine-prep-slave-sg-v1-2-239c12864143@nxp.com> References: <20260917-b4-dmaengine-prep-slave-sg-v1-0-239c12864143@nxp.com> In-Reply-To: <20260917-b4-dmaengine-prep-slave-sg-v1-0-239c12864143@nxp.com> To: Vinod Koul , Frank Li , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Orson Zhai , Baolin Wang , Chunyan Zhang Cc: dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, linux-sound@vger.kernel.org, imx@lists.linux.dev, Frank Li X-Mailer: b4 0.15.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1789675741; l=1862; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=bxzgGLe5soMgQpm1K/XpJNUpsViHqXjVJqz6EyRo5l0=; b=jkw5eEioIVlKn3x67FnTxzvjAxxdwT+ciJIHLg47rwfRsfFYaGY+jSLccCJHcUEJubNM2onZK dBGe7XVvm8RC4mEGzRUB7sC3rG13B3Lno640jdYgiEz2iC1yOyBUXDR X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: PH8PR22CA0004.namprd22.prod.outlook.com (2603:10b6:510:2d1::19) To GV2PR04MB11799.eurprd04.prod.outlook.com (2603:10a6:150:2cf::9) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU4PR04MB11791:EE_|PA4PR04MB9709:EE_ X-MS-Office365-Filtering-Correlation-Id: c0435cb7-6596-402b-2596-08df14f78dc9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|19092799006|23010399003|366016|1800799024|6133799003|10067099003|56012099006|11063799006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 5pqQIqRgctwzkVhQGKgMlOIelPmeQn6PvXcUMnt4pZP0XrWkcIFK+GQ3vnV+UPtuCzA1M/O419jbMSgJG2addc6L10PvGaQ3jq2LJneEvZlPAzz8jYMpaiur8Jr+FzGlv2YhoVBQYe5hXMt0GJDOen9Sxze16Ts3rDoRuU+voQ78W9IxPs/6+SRdVkEYe6+/zY2NOkR+IIcXbfYpOypfniiIcG42hV3TlVMGxffw6rdaFe0e+c/6O5QMWcI9pFS7MqFe6692xdqYwBNSL003obWu40ujIPLkPkkG/yP1WZjaJi3yp0Y7ZbVTQF0O1KhKKdcnAHbXzw4M3RtOR6g8GV6umUYbPtanGG1vYpm5U/KPASWV9whykI6lsWcX7lQnHaHXdlv8irj+RP7MNcWcrE7dtsXbyJGztCDc8pLL3ybmM6Oef5HvPIhSG/MvSigmy/McjHGn0utba3/OPRQ59zww0OjRjpMBknjHuxH3JNrsyKNFHn0zGnpbJGcUjBIOMiFrqZYYPftk7Ss1VlS/pxPGiz2nRulkIinO9K+G2mhvO545a1LrZOyWPQiCwGN2fsEcXkag+Przdw6cYhHSWvUGNNO26n1bTfP+r1Eih7BfDRaiq0l/ulxwEoTZlZH6nVmdJGkmDA2hNs9eqzCaMuf50CHCEUp5exMj0GUw9xQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU4PR04MB11791.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(19092799006)(23010399003)(366016)(1800799024)(6133799003)(10067099003)(56012099006)(11063799006)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TGpDaG15VFZkRFp1RU5ZbFExaGtOK0p3U3VkZllZMGM3OEtYbXZRQ3EzS2F5?= =?utf-8?B?Zk12UXR4ZzYvNEFtZnhvb3h2a3VWS2FwbTRTRHBqTHh4TVQ3R3VyZU1NRTB4?= =?utf-8?B?TG5KV3kwc01BVkNNZzVvY29XSG5JSHJUeXltTWdmNkw1SWtVNUhDOSt3d3hi?= =?utf-8?B?NkZGdDBLeDB4UmI0TjlEQlNacTZNaEdPOEN3aVhXanIxblNjQjRpZVpiMHow?= =?utf-8?B?WjIwNnYxMkV5b1FkTkFsZVhDZHd4VUJHbmE2QzV3TWEyY1ROOU9jbHZjUzFl?= =?utf-8?B?V0s3RmlBb1NzbVlmTWsyQTdTL1R5OWlqTW5GUDJ2cXZwbDZJNUcxWTJMUGQx?= =?utf-8?B?ZmI3Rys1VS8wVElmY2loYTZKWmVGdGlmM3NzVjdjVFFNYVJrK0JpT0VSTjdz?= =?utf-8?B?VFRsVHpiM2ZiTXFoazJWWjkwMVVhNWl5azNBUUJ6WC81dTREZ2s3MkhxWFBo?= =?utf-8?B?NVIxL09UUndLWnFndnU4WW1yc1dVV3hJVWhFNFB0dGNySGdLQ0RyS3ZvdTVl?= =?utf-8?B?cFlxK1o5R1RMYWtyK2RNV1d2OCsvM3NqWFFVelB3R2ZXUjRNdEhmTVhpZVNE?= =?utf-8?B?RFpzbzlydEp6UW1uTE9TYWJYUWlQMHhTRUgrbUxSWjJzNnI3UnpEemo1RlBh?= =?utf-8?B?SDk0WmtxVWVIY0oyNFBFWUkxNHpIU092K0YrYmdCVmlZQ1VuYWRjMHY0d0xD?= =?utf-8?B?dzdURUlJOXJsSCszaHY0ZDg2RVgvNVNyY3JyQ3AySHp6cytweVFCUXo0Yjg0?= =?utf-8?B?Y0plSFRCT1ZTSDJ1MnRuVDZOZTRYWnNMU1VJSytGVE5VQ1duV3ZRTEpNQnVk?= =?utf-8?B?dVFRanpNUkFwM1p5NUxRd200TzF1dHZLZnYreXYxR3NGRTIzUEVwMm9XWXlj?= =?utf-8?B?Zk1UbG04RlAyTVRTeUJNRFVPK0lzYjVBRkF0ZFJmZTF5aWlnS25HTEIyWldC?= =?utf-8?B?WHJialJFSklRaWtRVVMycnVQVWE1YjZ4YlFSM2pqdGh1TnF1OG80S2tTZUpo?= =?utf-8?B?MDJ6d0xua2l6RVRWQkU0MXc0WHFhaTVDajEzZUhrTDhuUENNa1ppKzFzNDJD?= =?utf-8?B?Y3lDWjBqcWI0d205VlRVMFkrbEordHAvT3VaWWZPWjliTUVzZS8wZ0ZJd1lS?= =?utf-8?B?dmpzK1g4VmtKR3hvT21pSjJydmFzcFNrRlBIMWlYTmwrb2JpTC9CWUFSRHYw?= =?utf-8?B?VDdUR2hqY3pva0RtSERqZUkrdnF5b0lYRUVHSDFacnFjTHErM1Q2d2FEN0Rm?= =?utf-8?B?MXFmdkpiK2NRZ2NHbWE2MVF3ODh5NlZxbFdkeHovUC9ZVXVUUUxSRjhjRVZC?= =?utf-8?B?OGZPOHRLOUVtYzZ3TFNKSnkzYi81QllyQXQwR2tNemN5M2thaUo1ejRhdWxk?= =?utf-8?B?bkNWRldjOXpQYnJJV1VDbGE3dkNlK1grMXlyUVVxVnVzSi9neXFXQnExQVFZ?= =?utf-8?B?Q0JnWS9LU1IzdWljbGZ0ZDYrOGN4UnFZRHMxa1hDWlY4MGFOWm9nUCtkWlFM?= =?utf-8?B?aGFRRDlYTVJoYUg1YVA3L2RRUnU3VFJGenBuOExyekxGeHZYNnRUVitmbUZE?= =?utf-8?B?MlNMdUhPVVF6d28zZFJPcm8wWEtnRlBmUC8rY3JiZyswME52MFVzdUd3VWhM?= =?utf-8?B?U3lqQ3hhd01GYWlKQkh1bnRQMlJaYkFad203MHd5eWJac2JkQjlqUkxKZDZi?= =?utf-8?B?ZGE1d0lFNXVlc2QwVUlFa3hBRE1vWHlqRlJsZDB1RVJPWEtGc3hRQ2h1OGQw?= =?utf-8?B?eXFIYXJlZ1lCSmJCK0FCdEpNRHc4Q2M2Yk1tU3pxbkR2bUs2UTdhdUpkQTRw?= =?utf-8?B?MktEcTZ4ZTJDN0lmMnNzZUt5QmdHQ3hHMXFkOWthZnBPV0tTTVc4N3c4cE5Z?= =?utf-8?B?ODR0Q3dzN0Ftc29PaVIxZE1DQTUyUmdJMEdHYjFyVnJBdVd3R1ZjRXBrUFZj?= =?utf-8?B?SDVpZWsxY2hBMTRPWWM0ZWsrbVpvZmdkNi9xcjFuTXR1M3hERG40RWFMZzNG?= =?utf-8?B?MGwwUXhpcWFDYjJKcDc0SzE5NklxRDRNRDlJRm9NL0pjUEZmTHE4YlR3UWFL?= =?utf-8?B?bVBXd0h5UWZwa3cxRy9aT2FNWGFTTkpMeDhRbXRrZDZzVXBNaVhOVWlXNmoy?= =?utf-8?B?ZjhuUWUzeHBWdGljWTFLLythRWFGdVdEK0FseU5lWHlHd1hDMFQzL1EwZE0z?= =?utf-8?B?ZVZlUHhwSVVneG5DSDhadDRaNmFNYk5YaGRBR2JBeEFORXlZdGM0eDRRZ21U?= =?utf-8?B?OE1NdDQ1SHU0MC9TeHBiNG9KRFpqMjIxOXFCVTJyM3N6OW5SSVY4eklXamdv?= =?utf-8?B?QXlHVnhQTHJTdmM5R2RhQkQvUjlnOXoxV2FOdFhpaThiREpiaXhOTk95Mjh3?= =?utf-8?Q?wkj6pawEoR+VNLFsaKWFzQ9oxCAEKzRO1vPk9?= X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: c0435cb7-6596-402b-2596-08df14f78dc9 X-MS-Exchange-CrossTenant-AuthSource: GV2PR04MB11799.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Sep 2026 20:09:18.4049 (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: QMGyGDocXp+rQbwyVpzCv43HEa074yCX7v4XfiB3e8z0hwzegisATQwzppHK0hgRdD5p/8+ssI9JBRegGMz/O0W1eITZ30aZGPxLlsoeZUscP4GSajFXSyFLU1clazW2 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA4PR04MB9709 From: Frank Li DMA engine consumers must not call the channel's device_prep_*() function pointers directly. Use the standard dmaengine wrapper APIs instead. Signed-off-by: Frank Li --- sound/soc/sprd/sprd-pcm-compress.c | 6 +++--- sound/soc/sprd/sprd-pcm-dma.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sound/soc/sprd/sprd-pcm-compress.c b/sound/soc/sprd/sprd-pcm-c= ompress.c index e5249924b54d9..649e59462935d 100644 --- a/sound/soc/sprd/sprd-pcm-compress.c +++ b/sound/soc/sprd/sprd-pcm-compress.c @@ -235,9 +235,9 @@ static int sprd_platform_compr_dma_config(struct snd_so= c_component *component, * We configure the DMA request mode, interrupt mode, channel * mode and channel trigger mode by the flags. */ - dma->desc =3D dma->chan->device->device_prep_slave_sg(dma->chan, sg, - sg_num, dir, - flags, &link); + dma->desc =3D dmaengine_prep_slave_sg_context(dma->chan, sg, + sg_num, dir, + flags, &link); if (!dma->desc) { dev_err(dev, "failed to prepare slave sg\n"); ret =3D -ENOMEM; diff --git a/sound/soc/sprd/sprd-pcm-dma.c b/sound/soc/sprd/sprd-pcm-dma.c index 2d5ffbe17e814..d31afbebfbd0e 100644 --- a/sound/soc/sprd/sprd-pcm-dma.c +++ b/sound/soc/sprd/sprd-pcm-dma.c @@ -276,9 +276,9 @@ static int sprd_pcm_hw_params(struct snd_soc_component = *component, */ flags =3D SPRD_DMA_FLAGS(SPRD_DMA_CHN_MODE_NONE, SPRD_DMA_NO_TRG, SPRD_DMA_FRAG_REQ, SPRD_DMA_TRANS_INT); - data->desc =3D chan->device->device_prep_slave_sg(chan, sg, - sg_num, dir, - flags, &link); + data->desc =3D dmaengine_prep_slave_sg_context(chan, sg, + sg_num, dir, + flags, &link); if (!data->desc) { dev_err(component->dev, "failed to prepare slave sg\n"); ret =3D -ENOMEM; --=20 2.43.0