From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 616E0FA0C48 for ; Wed, 15 Apr 2026 08:20:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:MIME-Version:Content-Type: Content-Transfer-Encoding:References:In-Reply-To:Message-ID:Date:Subject:To: From:Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=+NiZXx5o09MZvlnA1QZ7+qeVByGgJPwITiV3THo2zG0=; b=vCkF4c79A1f558yiyHZi4LDg86 r66mTVSXUaRbE3WOkWM70V3qyR/WrnXJTUHc5ZIO1tpaRzUy3ltNKvcNGDMAzi0aQiIdjo/IQ4Tfd ptmbgxDwGeiYjFelIvB8Qeqwqy3KWsJHfdIPdUQzOgmPgOTNYpSIjoz04fTIlqEgK5UO9WmerWto3 y3bFiGCP80ni8b30FZy5+65bpIYONI5FIzvugoP8VTNqy+hipJmoO9UX/Giu7UgRDjK+SEYcL1+a4 JXmQu4gem3sREulA+4wdq/yAE8S/BL6EmemKwTfNvu/yArOMpa1T0BoX8oku97xnolVNKGdR2aH0W bncsUx6Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1wCvUJ-00000000nZJ-3Yk4; Wed, 15 Apr 2026 08:20:43 +0000 Received: from mail-northeuropeazon11010002.outbound.protection.outlook.com ([52.101.84.2] helo=DB3PR0202CU003.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1wCvUF-00000000nWh-2gkD for linux-arm-kernel@lists.infradead.org; Wed, 15 Apr 2026 08:20:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XzJlltzczC5sxPZ6JwRtUKjG1W3/nbtvdaEFphvgO+42wf0LDXK+gRVqXVMvH34qtFV2RS+1QuFsh4oK42eqZNWhTG1YVh+QdZMLNZfYTfK6JMzXN5hgMYh/66q89H47pmS0EjfupuUaaPs7FD2a/Yr0Btt7g8nwxi1hIKE46a2Rpsv8YeP9SyFRIyB/XsqGSNEo+XbdaXraDTg1GX9oe0Q1twFjFTkYGLvGkRlgDxM+RMMwvVa0NdvagdmfMn1Uj6ZaPqXCHWqNm+EJNWuQKZYpDxqwTkmueQO+qm4b6mhcGQG0itL1UbtoePZKYN7aXi5TYeTy79WUwgpj3IcBEA== 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=+NiZXx5o09MZvlnA1QZ7+qeVByGgJPwITiV3THo2zG0=; b=h+G4vtIEUIZ2Nn37AMtSZxqmB+uDd+rGOVLvr5Bf8eYmm3+bNo+rBCDXKdR8dxpkgUlSxRoaByQAVPH0QGkzyauTKqtf2fqIrtIbKhY3WuOGDWsCYtcC3ISI7bb/VfKGJbM+PReGFvVyctCH7lHOyo6+XoB8KVGMy+y08f9wWclFOv+y9fYVeFSraTSM1afkf3CbhQEmtJVZBWc+DjWfqEKQs89EGzUeqh4TQzx2Ni87PphAOUYmad8DYO9od8sXN+2BDW7IDgazryaE1fxNGR+PkqBdlsUO6XSdymf9KHnagZC+Ep9P2y8c6+UzAwhARCoCFVib8wMzslG7zTU+BQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+NiZXx5o09MZvlnA1QZ7+qeVByGgJPwITiV3THo2zG0=; b=NLltFKbWVdrdfxhUAdHmF9z6NIt7RQ1eaXfTKO9JNz+E4INDEDUgP980DwduAZmaqrWVUnGnl5MRcOpQjdGwM6TrrUsJmPiaLqxLJO5ITuVzWxSDjxWE6Be4j+gF+WhR6OuMPsnM7tFfkWRHGc/OX+tQRfRLNIO1AYqkV5gARBSdsNk9H32FKxCQzXKEkT3iuuRU3YMUXJQla00bJdVTN8gmrTOAdj1+jmGY68lBiOOqIczbYCvuj++IYzK5GWP7h/2hcKtUw5IcPnEGf7tXyLhco01UbPo/5Zar0P94pbjW+84AsuCwxsVH3lNAXk2mXnC1Rc2GHE4dM1F81Qfwbw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM9PR04MB8353.eurprd04.prod.outlook.com (2603:10a6:20b:3ef::22) by DU4PR04MB10530.eurprd04.prod.outlook.com (2603:10a6:10:55a::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.48; Wed, 15 Apr 2026 08:20:33 +0000 Received: from AM9PR04MB8353.eurprd04.prod.outlook.com ([fe80::46ae:f774:f04c:a1bc]) by AM9PR04MB8353.eurprd04.prod.outlook.com ([fe80::46ae:f774:f04c:a1bc%5]) with mapi id 15.20.9769.016; Wed, 15 Apr 2026 08:20:33 +0000 From: Chancel Liu To: lgirdwood@gmail.com, broonie@kernel.org, perex@perex.cz, tiwai@suse.com, shengjiu.wang@gmail.com, Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com, Frank.Li@nxp.com, s.hauer@pengutronix.de, kernel@pengutronix.de, shumingf@realtek.com, rander.wang@linux.intel.com, pierre-louis.bossart@linux.dev, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: [PATCH v2 1/3] ASoC: dapm: Fix widget lookup with prefixed names across DAPM contexts Date: Wed, 15 Apr 2026 17:19:40 +0900 Message-ID: <20260415081942.4183108-2-chancel.liu@nxp.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260415081942.4183108-1-chancel.liu@nxp.com> References: <20260415081942.4183108-1-chancel.liu@nxp.com> Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: SE2P216CA0029.KORP216.PROD.OUTLOOK.COM (2603:1096:101:114::6) To AM9PR04MB8353.eurprd04.prod.outlook.com (2603:10a6:20b:3ef::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM9PR04MB8353:EE_|DU4PR04MB10530:EE_ X-MS-Office365-Filtering-Correlation-Id: 947c025b-6a3d-4fb0-89c2-08de9ac7dd32 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|52116014|376014|19092799006|1800799024|366016|38350700014|921020|56012099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: pJf6eH1nvLs324Lkf8gkz57wsG+lZQBRGlen+rjdcujQSqZ8rS2tgLMGsXoj8Ry6zswr024lDf0FdmtCj3JXrhwa3Q/xJ5alvwX0XJqtwH0jC9j1tXyN2HSvME61aXSS7Y8LimCaAm/tkUwmPBp4RfpyO0lrcV8bpeF46dM4T7g0D+CwvswitT7dEE1tnD8YSWsNe70A90tiZC6rLFqOKZ8V9uYjvvwTavI57yGy1feGTfsER9p0dVBlU5UPPapjSiVQB/NtFbHILoS+H8/0XWpW7u6IW4WLhgrV2jGQycxqnqOfu72oVtJtZs1vT9Mg3zlJv93MPP5A4x1Zjv0qNz5/TnrpLhB5CDrwe5u8MDRJXuoqzilhMzTtf2T3QiPgucHkYJpro4ecSL2fPg9JNeAByuCKFTCB2Sz9S4jwVsMiQgrCJy1Qxvxiw0bp40uUWJ+gQJQ4H/zy/2chFm7iAGNdSxK90o4TapoYg9V+gnRp5IJLzzdL0FltCycfkPDGzt9uw/hdkXZQkj9JyftZ6eqnNXi24GXofeJL2efWdk5xZBsHnpNHA4qSvydIX0Pp7l0pWWmn62FnLpiPi+qMWzkzJAjMOuXHExUcALOYwB1xQWWqWdmg2HcCUrmPCmCCGE1P7BCo5stIUb768wReqnTAdk/y28z7xGh+SJ/DCCcl9O3+ABT8iGHGKBxnnFAd8WUjV/tIGiTUcZEBX07DhYRMr1ForrU1yV/nsyLKpI0asFK9/Uy76xT+Dzh7xjvWelXyeHSi6fn6pXdLvYhZFMW30qRzzNO+T6JDZuOfjMabUaKp1urdXcrlA57i6RgW X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR04MB8353.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(52116014)(376014)(19092799006)(1800799024)(366016)(38350700014)(921020)(56012099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?BbikMlXyj7itiSS7tjDL1mn8GxM9IH9m7wUzSKn2d+3uW8mXNdiVo75FDBax?= =?us-ascii?Q?ZIQ1SlJBIqwML5sX5ic55I0IiDixZEAM2XpVZ86AruNiCOwfOqRHEK+QGgvK?= =?us-ascii?Q?IKkBsMHWoiiPT/vfTDmUWrSriGl8NRSORXHpABboXjL9cGh3nBBGQFnxYlP7?= =?us-ascii?Q?bGVbPVRl3zdWikkqd2RTXSkAe4aF030L6ENyLMIjHJIvRHokXarpFdtzzOaY?= =?us-ascii?Q?c2nnP5QohesEXtIqG5qMv42PFoOTTBiJ3A+fby7DpxuSPKhbVgGXzRGJlwsT?= =?us-ascii?Q?DvTz4esLfivPoLWyLor2nWvNZENaYMfDeWC/hVXaWBSF3MIGVNJJq5Sfm+aR?= =?us-ascii?Q?9L9GryhHSrTEkXau8KLzRKSHUmRlbnf4c/W5eupt8S5XHQJzvr+kWQtdKj3x?= =?us-ascii?Q?t3Es7VmWHoVuEK0Haep/STD8Rq3dvEfsnBsIi5zj2O+TfwQnWpaLo+kKcfPG?= =?us-ascii?Q?xk4wAFgJ8dWNrrO98ckGWz30oDoEOvhG0krxIOv9mRxvp25ZXcTj21WUZiIN?= =?us-ascii?Q?iIBjVOni1KvlWZjujhJ+yDqpau49PCAryw/oaaJbn8AUU4XrT9nuqE/l230L?= =?us-ascii?Q?fRHJzat4LgRAnuYqzBjpUMMBzyu4CnzG7SjB1r0Uzhx5Ws7AJSTFqFQnIAgv?= =?us-ascii?Q?P4UqhSID448Kxp85wK5loiR+GpeZZVlhqbroLzlKkDQa8SxdaDKcQpdIESIi?= =?us-ascii?Q?L3w2Rpu36LT3XlGyZ/OCYqsliFybMmGHliSCb99vHklcqCN6AGzEPxnRBK7i?= =?us-ascii?Q?Q9+0Rw6/DSOcfNCO5IQEqMIjQiFkoUDNs66HS5vrZy4fICRWJLq11ZZ8OETx?= =?us-ascii?Q?se9XPA4byvbw5iilQTNV5Opx7g2BnT8iq7KvCw8walVOS2DC70VW8o3MAt0v?= =?us-ascii?Q?CB9xjJHb7RDfReVTnex9Cpg/njhqBfcPG8ZzUjz31tm5ImbEW325tiPiHKxM?= =?us-ascii?Q?w0l0aGi8jJyFinyU18HB/Koc/GNZVbBp6omNmXDKMzdaDHEgbrSD9FFwcBEW?= =?us-ascii?Q?C8/0PsgqWpsDMcQuUQMZfidhI4x5jFCTozhtlEMI9Qtbc1LVHdHKCf8lWNp7?= =?us-ascii?Q?lkdWpzMH1bfGobCq9VacAW8aQ/k8FcHBCXkFitTMW73SmwSknd2SI2Ev2IeW?= =?us-ascii?Q?pjg8Ht2Fo/I468ydTNGW4HLBIpUua9G+bFPV6f0VnPP557Uk1kt3xKZO6lJ2?= =?us-ascii?Q?vry3K56Aa/YmNoB1nkL/o7dgzeERQ1zYovu2om8NGY3um64smVgoChAO8smg?= =?us-ascii?Q?k303BjAK7SAr0xIbbgpAu6AH1f5Q4kqH6ssXNy1KAi+8e1IXi44o+tJ2+KED?= =?us-ascii?Q?oBxliHutO7AtmSAi23TBnIon6ovI4vLNbEIqMbZ8SmTfq3lm3LGHLphf9d9M?= =?us-ascii?Q?KYrREnE6j60v0M9hFzAtACT/9OBKmkr9DkRUDFUx0qjd7HzBHFCtVKYXIeAL?= =?us-ascii?Q?+8rbLk8Usrd2CavtHQ2u0W73cXG7Uj/1F8Ey3i39GRYqfSPp6hd6STmJxZU4?= =?us-ascii?Q?mRitDsvPMvhT81EXvgODE3fRavs/doMkaqJc5XanHKAPXE2WqK/aZLEJuO96?= =?us-ascii?Q?mNL/1VXlzl34op/OECBiHk+d3ILXpC+8WjBEhAJf3GaExj6JJcBXiakSnTot?= =?us-ascii?Q?exc1p1lysepNbpAA+e0G6zpdTNkA5dHdDL6AhhGt4kB3+Vhs0kVyBodsgoZo?= =?us-ascii?Q?n37iIj6kcmlWmL1HRbS3SBWvD5TJi/hqu0hdsclHXVwpCuRggEr09jI/7is/?= =?us-ascii?Q?MexKhsNf0g=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 947c025b-6a3d-4fb0-89c2-08de9ac7dd32 X-MS-Exchange-CrossTenant-AuthSource: AM9PR04MB8353.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Apr 2026 08:20:33.4555 (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: wqar89p5vbFt4V9JGLwt76jDcvL2oaX5TDYAICVUomiewQsF5fPXYSHVII9xz7Ua9yw8AgBoEPS5rIAzIBgctg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU4PR04MB10530 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260415_012039_682379_F86745F2 X-CRM114-Status: GOOD ( 14.48 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Currently dapm_find_widget() manually constructs a prefixed widget name based on the provided DAPM context and compares it using strcmp(). This happens to work in most cases because callers usually know which DAPM context the target widget belongs to and pass in the matching DAPM context. However, this assumption breaks when search_other_contexts is enabled. In such cases, callers may intentionally pass a different DAPM context, while searching for a widget that actually belongs to another DAPM context. For example, when searching for a "DAC" widget, the widget belongs to the codec DAPM and be registered with a codec prefix, while the caller passes card->dapm and intends to search across all DAPM contexts. The current implementation incorrectly applies the caller card DAPM causing the lookup to fail even though the widget exists on the card. Use snd_soc_dapm_widget_name_cmp() instead, which compares widget names using the widget's own DAPM context and prefix. It fixes widget lookup failures when searching across different DAPM contexts on the card. Fixes: ae4fc532244b ("ASoC: dapm: use component prefix when checking widget names") Signed-off-by: Chancel Liu Assisted-by: Cody:Claude-3.5-Sonnet --- sound/soc/soc-dapm.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index d6192204e613..c5b80d9ed64b 100644 --- a/sound/soc/soc-dapm.c +++ b/sound/soc/soc-dapm.c @@ -2906,20 +2906,9 @@ static struct snd_soc_dapm_widget *dapm_find_widget( { struct snd_soc_dapm_widget *w; struct snd_soc_dapm_widget *fallback = NULL; - char prefixed_pin[80]; - const char *pin_name; - const char *prefix = dapm_prefix(dapm); - - if (prefix) { - snprintf(prefixed_pin, sizeof(prefixed_pin), "%s %s", - prefix, pin); - pin_name = prefixed_pin; - } else { - pin_name = pin; - } for_each_card_widgets(dapm->card, w) { - if (!strcmp(w->name, pin_name)) { + if (!snd_soc_dapm_widget_name_cmp(w, pin)) { if (w->dapm == dapm) return w; else -- 2.50.1