Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2217320/?format=api
{ "id": 2217320, "url": "http://patchwork.ozlabs.org/api/patches/2217320/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260327-pinctrl-mux-v5-1-d4aec9d62c62@nxp.com/", "project": { "id": 42, "url": "http://patchwork.ozlabs.org/api/projects/42/?format=api", "name": "Linux GPIO development", "link_name": "linux-gpio", "list_id": "linux-gpio.vger.kernel.org", "list_email": "linux-gpio@vger.kernel.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260327-pinctrl-mux-v5-1-d4aec9d62c62@nxp.com>", "list_archive_url": null, "date": "2026-03-27T21:33:58", "name": "[v5,1/7] mux: add devm_mux_control_get_from_np() to get mux from child node", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "2aa79ac1422c9cbbde6b5ead30d412218c0e073b", "submitter": { "id": 68011, "url": "http://patchwork.ozlabs.org/api/people/68011/?format=api", "name": "Frank Li", "email": "Frank.Li@nxp.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/linux-gpio/patch/20260327-pinctrl-mux-v5-1-d4aec9d62c62@nxp.com/mbox/", "series": [ { "id": 497832, "url": "http://patchwork.ozlabs.org/api/series/497832/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-gpio/list/?series=497832", "date": "2026-03-27T21:33:57", "name": "pinctrl: Add generic pinctrl for board-level mux chips", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/497832/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2217320/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2217320/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "\n <linux-gpio+bounces-34328-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-gpio@vger.kernel.org" ], "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=nxp.com header.i=@nxp.com header.a=rsa-sha256\n header.s=selector1 header.b=jU8SXE1M;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-gpio+bounces-34328-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)", "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com\n header.b=\"jU8SXE1M\"", "smtp.subspace.kernel.org;\n arc=fail smtp.client-ip=40.107.162.43", "smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=nxp.com", "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=nxp.com", "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nxp.com;" ], "Received": [ "from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fjDTV5GFqz1y0D\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 28 Mar 2026 08:35:42 +1100 (AEDT)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 2B978302DE2F\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 27 Mar 2026 21:34:28 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 1D68539B975;\n\tFri, 27 Mar 2026 21:34:24 +0000 (UTC)", "from PA4PR04CU001.outbound.protection.outlook.com\n (mail-francecentralazon11013043.outbound.protection.outlook.com\n [40.107.162.43])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 6A97C39A063;\n\tFri, 27 Mar 2026 21:34:22 +0000 (UTC)", "from PA4PR04MB9366.eurprd04.prod.outlook.com (2603:10a6:102:2a9::8)\n by AM9PR04MB8668.eurprd04.prod.outlook.com (2603:10a6:20b:43f::22) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.20; Fri, 27 Mar\n 2026 21:34:20 +0000", "from PA4PR04MB9366.eurprd04.prod.outlook.com\n ([fe80::75e4:8143:ddbc:6588]) by PA4PR04MB9366.eurprd04.prod.outlook.com\n ([fe80::75e4:8143:ddbc:6588%6]) with mapi id 15.20.9745.024; Fri, 27 Mar 2026\n 21:34:20 +0000" ], "ARC-Seal": [ "i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1774647263; cv=fail;\n b=m6L9kj5R3au+QTCIy1GxxcsF6wFLVRQOOgbz3ZiJjzXw00liQm6ZgCJR1p3rmg0fYRT7SIL06/Kn3fAVUNCRlGBreOiFBs65fbRQ/YgoWw8EV3mq+qStOhW8wzuxtlS5pB4jx0PGCTsG1qJLWXPsShz3KZTS0vLZ+8InjzfIpMU=", "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=KyOBWooonfWnPmUn0EOnL0/VXOTjxAaKpVK0u74PKZT4dU19x+yMEQNDj9J0c4nhXQpUGQavPMPoPP9IaP6e7dJ6D2PsNGHqV09jd+sXJkfTlzIeedRsfX2MA7vmiJ298XsFxVH+BXl9tKR9cLifg+BigDtZ92FxvspE5UtKi6pjA4dVmwhNRoP+nbZksPS2sNWwxJH1stoV12sx3zT6KZMOb2DT2GOVbMmVaGnncFgKb15/0/QxStjslC2snI4unRhtxyz6bA1YsR9Hr4wrvNiqIP56SIF6XtZxezjzvbp7qZcV19Fhx7IVD/SFmdg9FKkM8YwLTDve8FCCUYlG7Q==" ], "ARC-Message-Signature": [ "i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1774647263; c=relaxed/simple;\n\tbh=6lZaJD3A/F1rIGObW9t+4MUqh2HqQaormMVYGkjpB44=;\n\th=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To:\n\t To:Cc:MIME-Version;\n b=ck3/pidZZ0NO74PGb5nMeMGb/RCKvmM3/472uV3K45s6rFNlnuRRuABHIWfVmDP8ckP1yM4pBw821UY0mXSXhTtmQE5RRnQWavDRz44R/9fhXw0pPRrvFPcn89F/nGroU3P0N1LFvMCO8Pe4lpLP+LNe1cRuCjJAMhTjDAKv49E=", "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n 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;\n bh=VQlN2xveg+I0NatlzXlXz5x8nuvILqmuLkLNQrT9Y5E=;\n b=UrEXA6CWOIY73Ft0Sbsfk2Z5dshSFkTLFye/RgTqMKwiIzvJRraHoAX8lNaHR704+qMvY4xzvW0dKxLANWceO9yi7vaKEzoJPs1rnV7iXXhkFG7rK7j0BCGq5uIbA7+P3Tmg8CCw6zAMquym7ICferL4hfyCbN2AWTGhHKAduFx8xCeYP+DmSrdJOQO2+WUpxVcSwA9TbMZitKOvOp5GbWmWZ9cEVrT8rURipxXgi4HEIkGVWQnvdl5YjY2mqpo+wU7QZuIFc4TOTIhzNysalUrlQo0fegqtpNWPWLxk8DqiLnVQBmPednITCrOag8QGdNzMVF059vDC3FqAhHS3xA==" ], "ARC-Authentication-Results": [ "i=2; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=nxp.com;\n spf=pass smtp.mailfrom=nxp.com;\n dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com\n header.b=jU8SXE1M; arc=fail smtp.client-ip=40.107.162.43", "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass\n header.d=nxp.com; arc=none" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=VQlN2xveg+I0NatlzXlXz5x8nuvILqmuLkLNQrT9Y5E=;\n b=jU8SXE1MfmWTV/s6ViODLCODYUL87RLAmjjRu0xuI2vzJwOMoEUU2i7orkde8QZeBTNg1/ql7l63161youZd9qukyQIzyY7bUeyaDP+otjA9GG+7jKQUubpyTlMGGg3merWMusu09Im7FE9BNb7gL8523JWAAbthl+4EeelWK2BPBEVOi2EBTDn09DxvRha/hQJV1pSitPCtMyZKhpGDk/il2oV2dqUbZzlYat7f3ZxiAUmGYXq5Sq7j9xrr9ijYWlu0Kqz0inNn+ambI430UpqxvzATVZscMsY1rSXC2yGDh3WxJEkanyBNs5UWivPzLBR1g4PM1EPFLoHuHPaDgA==", "From": "Frank Li <Frank.Li@nxp.com>", "Date": "Fri, 27 Mar 2026 17:33:58 -0400", "Subject": "[PATCH v5 1/7] mux: add devm_mux_control_get_from_np() to get mux\n from child node", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "7bit", "Message-Id": "<20260327-pinctrl-mux-v5-1-d4aec9d62c62@nxp.com>", "References": "<20260327-pinctrl-mux-v5-0-d4aec9d62c62@nxp.com>", "In-Reply-To": "<20260327-pinctrl-mux-v5-0-d4aec9d62c62@nxp.com>", "To": "Peter Rosin <peda@axentia.se>, Linus Walleij <linusw@kernel.org>,\n Rob Herring <robh@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>,\n Conor Dooley <conor+dt@kernel.org>,\n =?utf-8?b?UmFmYcWCIE1pxYJlY2tp?= <rafal@milecki.pl>,\n Sascha Hauer <s.hauer@pengutronix.de>,\n Pengutronix Kernel Team <kernel@pengutronix.de>,\n Fabio Estevam <festevam@gmail.com>", "Cc": "linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n devicetree@vger.kernel.org, imx@lists.linux.dev,\n linux-arm-kernel@lists.infradead.org, Haibo Chen <haibo.chen@nxp.com>,\n Frank Li <Frank.Li@nxp.com>", "X-Mailer": "b4 0.14.2", "X-Developer-Signature": "v=1; a=ed25519-sha256; t=1774647254; l=6472;\n i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id;\n bh=6lZaJD3A/F1rIGObW9t+4MUqh2HqQaormMVYGkjpB44=;\n b=mkg9p/QmqwXdxiEziAi7orZ4HygQjgaN0eOG0Iz2fmRUgOVzRbqFTf9R+AszzvM34Rb4BLc/9\n udEgfxsccRdDe9CO8JjSzpkGs8f9fmDkh3KkaNsWqOobR+InZaVR6JL", "X-Developer-Key": "i=Frank.Li@nxp.com; a=ed25519;\n pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q=", "X-ClientProxiedBy": "SA1P222CA0182.NAMP222.PROD.OUTLOOK.COM\n (2603:10b6:806:3c4::20) To PA4PR04MB9366.eurprd04.prod.outlook.com\n (2603:10a6:102:2a9::8)", "Precedence": "bulk", "X-Mailing-List": "linux-gpio@vger.kernel.org", "List-Id": "<linux-gpio.vger.kernel.org>", "List-Subscribe": "<mailto:linux-gpio+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-gpio+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "X-MS-PublicTrafficType": "Email", "X-MS-TrafficTypeDiagnostic": "PA4PR04MB9366:EE_|AM9PR04MB8668:EE_", "X-MS-Office365-Filtering-Correlation-Id": "2cf4bb34-4c6a-4c58-f11e-08de8c489af4", "X-MS-Exchange-SenderADCheck": "1", "X-MS-Exchange-AntiSpam-Relay": "0", "X-Microsoft-Antispam": "\n\tBCL:0;ARA:13230040|366016|19092799006|1800799024|52116014|7416014|376014|38350700014|18002099003|56012099003|22082099003;", "X-Microsoft-Antispam-Message-Info": "\n\tQl13aySCGJN7Hn6tOaZ0AnpqRLKDEIzhZXbOA1mQVA/kS+bS1dxqEZzhuy1CtgcB7GYnCpZUNWsS/W82ncdCD1gGfF5uD1sryxqdF2KvsbmiQVazWzbIT/Kydn8Zf05x0/WQ9dhjP1g045Kq6xHchJfqmPZHNGF0/rMUkrqCSyHbBMpKoYCgFkNGwylGIYJUS5V+P/RrLFeCeMOvOE/PS6N4FsOITueRZtRp0VDn3xOamb4o2mzHQPIGBEOyq226VhIZFBNTeTZpFVanXBmlbtKf/4GQsleXAVH1lFuVR9qvcVOZdd3Tl7mVJ5MXzCMaCwIbWEBD3P6fjYjn85yeu1uSImUpQ6t4dvMo6wnGzep4CffLPqPNzxPxxZGLtu1eXMtQGVsjJ++Yf+2ZThhVr19QParZ0OoTaQznayBivBF67c4umwGYIVj6BS/xiFHx6oN82tqFqAEvAF3CLjELBVIRyBp9TRe7Bc8nxh8HK5a8qC+l8uapFvus6sYGH+eLHd3JSoycSrt0E6IUFE3qo5nrbECTgthHIyAISFOIKgu2iJ3JDsBuFoEjwoVC/cO/YxkJo/i+YHq0EMmk/CA+Mei0Q06wa6/yCKW9AG2afVOppvMnOpjIY1pHofD000veNPQjmoQcxb45AVi+cOVLA1QGEpeGVfhgVqtrDbmp/tGPesOevWZqVXShyvTmj/9Vi/8/77mLNb6RTz+YuINlFLzdhSCP2HggvEias6iAVRL3BVnv01aq8QoHqxR9vBA2dHEmzfmKrA46rhwC+2COghaJNNpfbtEkHX3PgPKRt20=", "X-Forefront-Antispam-Report": "\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PA4PR04MB9366.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(19092799006)(1800799024)(52116014)(7416014)(376014)(38350700014)(18002099003)(56012099003)(22082099003);DIR:OUT;SFP:1101;", "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1", "X-MS-Exchange-AntiSpam-MessageData-0": "=?utf-8?q?dO08VsgXTBGN1CRbggFUW1aTiW0t?=\n\t=?utf-8?q?qO0mxamF11W+mkcuGtrWSCo86Nc0xQaEYjGpPjLzAgpXNrQ6x6Np8Rbr7dtFJjyTY?=\n\t=?utf-8?q?WreiQ3SgaGl5xmK/X0H04qdP09tkpyCTUUGgIwZvKs8l5q3/OpDoCLzoPapx7c4bo?=\n\t=?utf-8?q?gazsMJIQSDa8qxnHZbhXTfEOQY90nEHbcH8URo4Ds+mp4d50mYArOqCUsWewYGtOq?=\n\t=?utf-8?q?SoSnHLF3ySVGKmf0aR7jvP+29lrFI5vqqDVlLxbsBQcm8thJEBIWhx6ACKVVV+7L2?=\n\t=?utf-8?q?kSeB0b6s+B+vY4aPOt8xFbEHI+iNi/cWEV8XrjwWEttCyir83vaTic1ILEEe6nvtl?=\n\t=?utf-8?q?d8p/a9rMomx9GWw+tvS/T9rE7ELzmDITyfcPsjW4k8Jqhb4p1mlplrsTJXQnQXqO7?=\n\t=?utf-8?q?ZkFCR1epv25RYdYcBKZB9YyJQ8EOB86flpAj28Z9iYQzcSNJteEkUf55WfVuZFWWU?=\n\t=?utf-8?q?LCKzVwlWYk/EtHAPxk0qBT5aPp0P36M2fh90ifYOca/zdIaO+GoAZP9wbxlVK6iA9?=\n\t=?utf-8?q?N55t8UmgDgd1UCEL4Hg3CDieyrL43aoVdAR1QliWLUVZ8N5KInsf0ASNTcRQs/waX?=\n\t=?utf-8?q?1ZA6Hmbk+qJn3VbiD5k2c0BrsMKVtIIkBfST47PxKZgxgTgvxUB7orQHKnbzfzCpP?=\n\t=?utf-8?q?OpSfnvhbt4mJvMFR7hxBUjEyUAFIuitV+ZvSF2pspP4JGoH8Cn6FucCquvmJJ15fr?=\n\t=?utf-8?q?5PPwadMizlLcQTWpMrGXZsiz04weUMk/dFDof9ZQCKfTaYY2Sg2xRJESThbVNe2gl?=\n\t=?utf-8?q?3Od3ix6IZxE7Rnq82CiN4STYurtlGJ5NVGKqPXm628IY02NXEq9L2AM0lRHIvo2h5?=\n\t=?utf-8?q?SA+A0R9lcVWGhsfBXyKMwJs+qN1gI/QWdd50R+t20frJnW3Tzpswmjy2RENMJwdT4?=\n\t=?utf-8?q?7rdHaokmngazCGUoVOJ7A/5mKQYksjr7tu7rxi5ytrQja8sJ3ebJMV6QMj7YFPBNS?=\n\t=?utf-8?q?BGf7cMYR8p+sHmCMgPQVX88GZ2fMqF/CRc6mmlAXhv3DziyCyVN3G/9ypkJpIBrEc?=\n\t=?utf-8?q?juLBVRMkcdCQVOXBU1FHkreeXyT7VRLT5unCHgwhH+LlwaFh/nV1qqLxZTJ4eBwDn?=\n\t=?utf-8?q?e7izgbycu2hB78rfzoHqatYKaA0pu1b3NruYcMLupKWi76syzsVH6++vCNDONKnrs?=\n\t=?utf-8?q?0FimXh3NGVXieZGw4vqQSJ5Bg07GqiqyyRh3U4kNHzAm2FCQhUnmH03/jv2rC93yZ?=\n\t=?utf-8?q?krW+W5R2ZVcAZd2CBqsvsbcg4/cysgxEYwJomV6aOQrQ3nJzj8cMpJTc5WkFWZISl?=\n\t=?utf-8?q?csfac3rC9udMYNY0qu2wvmNpyrvwgAjZO8RZan+NFwEOfB9kFozldi0ZvzB6qQ7EU?=\n\t=?utf-8?q?vhnmjri9myihgEgcUI56tsvU+WozTMk2yWQb6EKeijyoipPOqotMK9MtNBwDVO8qE?=\n\t=?utf-8?q?SL2xVDD4BtyUd0pqnYDa58qkC6DYPR/hFN7KwGaEi9bOb1dfT+XyoenG6TJi7Yu2J?=\n\t=?utf-8?q?Xk2XCjSFfxW5scRGNYBLnavpYFz8JkhWUlEhSJvOJ2zLH3/GFUulZCFmEqRucCHNA?=\n\t=?utf-8?q?jqdNcnbYDeW9pI0GDiF+mdFSvZ7yTxEHYOlcWzMDdZYVR2CkvoX1pFOAvKlT7DRyY?=\n\t=?utf-8?q?PJCR09r2LjU+sonUritiIxF+FrNn769sOe801SsPMlWR2bwrZyamv+C5BGq/eQlGv?=\n\t=?utf-8?q?Av0/ojQxsD?=", "X-OriginatorOrg": "nxp.com", "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n 2cf4bb34-4c6a-4c58-f11e-08de8c489af4", "X-MS-Exchange-CrossTenant-AuthSource": "PA4PR04MB9366.eurprd04.prod.outlook.com", "X-MS-Exchange-CrossTenant-AuthAs": "Internal", "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "27 Mar 2026 21:34:19.9965\n (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": "\n RkYz5Lpc7xGqzdAhlg7Vu2d4vgo77RX/2jXZMfxhxUxDKWAyKGXLFyFU/KEjoKb71pHitBaKB8PUfNpy5zSYwg==", "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AM9PR04MB8668" }, "content": "Add new API devm_mux_control_get_from_np() to retrieve a mux control from\na specified child device node.\n\nMake devm_mux_control_get() call devm_mux_control_get_from_np() with a NULL\nnode parameter, which defaults to using the device's own of_node.\n\nSupport the following DT schema:\n\npinctrl@0 {\n uart-func {\n mux-state = <&mux_chip 0>;\n };\n\n spi-func {\n mux-state = <&mux_chip 1>;\n };\n};\n\nSigned-off-by: Frank Li <Frank.Li@nxp.com>\n---\nchange from v1 to v4\n- none\n---\n drivers/mux/core.c | 40 ++++++++++++++++++++++++----------------\n include/linux/mux/consumer.h | 16 ++++++++++++----\n 2 files changed, 36 insertions(+), 20 deletions(-)", "diff": "diff --git a/drivers/mux/core.c b/drivers/mux/core.c\nindex a3840fe0995fe0125432d34edd8ab0f2cd1a6e9a..bdd959389b4ee1b0b8a7367fadf2c148c8f2f0b1 100644\n--- a/drivers/mux/core.c\n+++ b/drivers/mux/core.c\n@@ -522,13 +522,15 @@ static struct mux_chip *of_find_mux_chip_by_node(struct device_node *np)\n * @mux_name: The name identifying the mux-control.\n * @state: Pointer to where the requested state is returned, or NULL when\n * the required multiplexer states are handled by other means.\n+ * @node: the device nodes, use dev->of_node if it is NULL.\n *\n * Return: A pointer to the mux-control, or an ERR_PTR with a negative errno.\n */\n static struct mux_control *mux_get(struct device *dev, const char *mux_name,\n-\t\t\t\t unsigned int *state)\n+\t\t\t\t unsigned int *state,\n+\t\t\t\t struct device_node *node)\n {\n-\tstruct device_node *np = dev->of_node;\n+\tstruct device_node *np = node ? node : dev->of_node;\n \tstruct of_phandle_args args;\n \tstruct mux_chip *mux_chip;\n \tunsigned int controller;\n@@ -617,7 +619,7 @@ static struct mux_control *mux_get(struct device *dev, const char *mux_name,\n */\n struct mux_control *mux_control_get(struct device *dev, const char *mux_name)\n {\n-\treturn mux_get(dev, mux_name, NULL);\n+\treturn mux_get(dev, mux_name, NULL, NULL);\n }\n EXPORT_SYMBOL_GPL(mux_control_get);\n \n@@ -641,15 +643,17 @@ static void devm_mux_control_release(struct device *dev, void *res)\n }\n \n /**\n- * devm_mux_control_get() - Get the mux-control for a device, with resource\n- *\t\t\t management.\n+ * devm_mux_control_get_from_np() - Get the mux-control for a device, with\n+ *\t\t\t\t resource management.\n * @dev: The device that needs a mux-control.\n * @mux_name: The name identifying the mux-control.\n+ * @np: the device nodes, use dev->of_node if it is NULL.\n *\n * Return: Pointer to the mux-control, or an ERR_PTR with a negative errno.\n */\n-struct mux_control *devm_mux_control_get(struct device *dev,\n-\t\t\t\t\t const char *mux_name)\n+struct mux_control *\n+devm_mux_control_get_from_np(struct device *dev, const char *mux_name,\n+\t\t\t struct device_node *np)\n {\n \tstruct mux_control **ptr, *mux;\n \n@@ -668,16 +672,18 @@ struct mux_control *devm_mux_control_get(struct device *dev,\n \n \treturn mux;\n }\n-EXPORT_SYMBOL_GPL(devm_mux_control_get);\n+EXPORT_SYMBOL_GPL(devm_mux_control_get_from_np);\n \n /*\n * mux_state_get() - Get the mux-state for a device.\n * @dev: The device that needs a mux-state.\n * @mux_name: The name identifying the mux-state.\n+ * @np: the device nodes, use dev->of_node if it is NULL.\n *\n * Return: A pointer to the mux-state, or an ERR_PTR with a negative errno.\n */\n-static struct mux_state *mux_state_get(struct device *dev, const char *mux_name)\n+static struct mux_state *\n+mux_state_get(struct device *dev, const char *mux_name, struct device_node *np)\n {\n \tstruct mux_state *mstate;\n \n@@ -685,7 +691,7 @@ static struct mux_state *mux_state_get(struct device *dev, const char *mux_name)\n \tif (!mstate)\n \t\treturn ERR_PTR(-ENOMEM);\n \n-\tmstate->mux = mux_get(dev, mux_name, &mstate->state);\n+\tmstate->mux = mux_get(dev, mux_name, &mstate->state, np);\n \tif (IS_ERR(mstate->mux)) {\n \t\tint err = PTR_ERR(mstate->mux);\n \n@@ -716,15 +722,17 @@ static void devm_mux_state_release(struct device *dev, void *res)\n }\n \n /**\n- * devm_mux_state_get() - Get the mux-state for a device, with resource\n- *\t\t\t management.\n+ * devm_mux_state_get_from_np() - Get the mux-state for a device, with resource\n+ *\t\t\t\t management.\n * @dev: The device that needs a mux-control.\n * @mux_name: The name identifying the mux-control.\n+ * @np: the device nodes, use dev->of_node if it is NULL.\n *\n * Return: Pointer to the mux-state, or an ERR_PTR with a negative errno.\n */\n-struct mux_state *devm_mux_state_get(struct device *dev,\n-\t\t\t\t const char *mux_name)\n+struct mux_state *\n+devm_mux_state_get_from_np(struct device *dev, const char *mux_name,\n+\t\t\t struct device_node *np)\n {\n \tstruct mux_state **ptr, *mstate;\n \n@@ -732,7 +740,7 @@ struct mux_state *devm_mux_state_get(struct device *dev,\n \tif (!ptr)\n \t\treturn ERR_PTR(-ENOMEM);\n \n-\tmstate = mux_state_get(dev, mux_name);\n+\tmstate = mux_state_get(dev, mux_name, np);\n \tif (IS_ERR(mstate)) {\n \t\tdevres_free(ptr);\n \t\treturn mstate;\n@@ -743,7 +751,7 @@ struct mux_state *devm_mux_state_get(struct device *dev,\n \n \treturn mstate;\n }\n-EXPORT_SYMBOL_GPL(devm_mux_state_get);\n+EXPORT_SYMBOL_GPL(devm_mux_state_get_from_np);\n \n /*\n * Using subsys_initcall instead of module_init here to try to ensure - for\ndiff --git a/include/linux/mux/consumer.h b/include/linux/mux/consumer.h\nindex 2e25c838f8312532040441ee618424b76378aad7..6300e091035323dd6158d52a55a109d43ef120aa 100644\n--- a/include/linux/mux/consumer.h\n+++ b/include/linux/mux/consumer.h\n@@ -56,9 +56,17 @@ int mux_state_deselect(struct mux_state *mstate);\n struct mux_control *mux_control_get(struct device *dev, const char *mux_name);\n void mux_control_put(struct mux_control *mux);\n \n-struct mux_control *devm_mux_control_get(struct device *dev,\n-\t\t\t\t\t const char *mux_name);\n-struct mux_state *devm_mux_state_get(struct device *dev,\n-\t\t\t\t const char *mux_name);\n+struct mux_control *\n+devm_mux_control_get_from_np(struct device *dev, const char *mux_name,\n+\t\t\t struct device_node *np);\n+\n+#define devm_mux_control_get(dev, mux_name)\t\t\\\n+\tdevm_mux_control_get_from_np(dev, mux_name, NULL)\n+\n+struct mux_state *\n+devm_mux_state_get_from_np(struct device *dev, const char *mux_name,\n+\t\t\t struct device_node *np);\n+#define devm_mux_state_get(dev, mux_name)\t\t\\\n+\tdevm_mux_state_get_from_np(dev, mux_name, NULL)\n \n #endif /* _LINUX_MUX_CONSUMER_H */\n", "prefixes": [ "v5", "1/7" ] }