{"id":2225628,"url":"http://patchwork.ozlabs.org/api/patches/2225628/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260421-mainline-send-v1-sending-v1-3-bcb0857724de@alex-min.fr/","project":{"id":42,"url":"http://patchwork.ozlabs.org/api/projects/42/?format=json","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":"<20260421-mainline-send-v1-sending-v1-3-bcb0857724de@alex-min.fr>","list_archive_url":null,"date":"2026-04-21T09:45:09","name":"[3/8] pinctrl: qcom: Register functions before enabling pinctrl","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"7c293d2eb44162dbaf28c53eeaa4fb00afe6ae2a","submitter":{"id":93203,"url":"http://patchwork.ozlabs.org/api/people/93203/?format=json","name":"Alexandre MINETTE via B4 Relay","email":"devnull+contact.alex-min.fr@kernel.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-gpio/patch/20260421-mainline-send-v1-sending-v1-3-bcb0857724de@alex-min.fr/mbox/","series":[{"id":500770,"url":"http://patchwork.ozlabs.org/api/series/500770/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-gpio/list/?series=500770","date":"2026-04-21T09:45:06","name":"Add Samsung Galaxy S4 support","version":1,"mbox":"http://patchwork.ozlabs.org/series/500770/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/2225628/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2225628/checks/","tags":{},"related":[],"headers":{"Return-Path":"\n <linux-gpio+bounces-35298-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=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=F959cm3m;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-gpio+bounces-35298-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)","smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"F959cm3m\"","smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201"],"Received":["from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g0Hcx2Tvyz1yGt\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 21 Apr 2026 19:49:21 +1000 (AEST)","from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id E4FC13063D67\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 21 Apr 2026 09:45:18 +0000 (UTC)","from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id D26423B19D8;\n\tTue, 21 Apr 2026 09:45:13 +0000 (UTC)","from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\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 7D2273AE707;\n\tTue, 21 Apr 2026 09:45:13 +0000 (UTC)","by smtp.kernel.org (Postfix) with ESMTPS id 2F16BC2BCC6;\n\tTue, 21 Apr 2026 09:45:13 +0000 (UTC)","from aws-us-west-2-korg-lkml-1.web.codeaurora.org\n (localhost.localdomain [127.0.0.1])\n\tby smtp.lore.kernel.org (Postfix) with ESMTP id 22E39F327D3;\n\tTue, 21 Apr 2026 09:45:13 +0000 (UTC)"],"ARC-Seal":"i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1776764713; cv=none;\n b=Mm3RQ5HqjB+qncH4vq34TkIYT1dWvo2chRnenXg9/pFmDpeCcYl5CXHYQhyw+95sY+qb8v4v06paLKMBLLL7ntYToLctoV1PNjCXb3HYVjfeUZAPZHYpjUmZ01Z3qREmvxe0Pl69U+cRJ4Odp0Z6IcWGWA0s4MoZwvsmsoBC1xs=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1776764713; c=relaxed/simple;\n\tbh=hz1drQskerk3cBFOXbH0y4Nl0xBRIA0S1KUxNg70Qjg=;\n\th=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References:\n\t In-Reply-To:To:Cc;\n b=ZjD4FnZNUOrApt4KfjC4qe///loGqxxbyHwyvvf3jjg/11Ia16rg4PJ8iP9t7aoVLCng+CXjR/3bp1pjnbzbSqNcvC6b9qGVCxpiKnJO9/CsCJVYHSboo1YHrvRDhdDPt6YiDY5FO8inxqEd1UUrP5uZwwxQCCHi+HQZwr8xQno=","ARC-Authentication-Results":"i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=F959cm3m; arc=none smtp.client-ip=10.30.226.201","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1776764713;\n\tbh=hz1drQskerk3cBFOXbH0y4Nl0xBRIA0S1KUxNg70Qjg=;\n\th=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From;\n\tb=F959cm3mDSw8hR2b//HD/9+46qLfvPp2e/WrNOvly7mHl07A2kCN6hzoMsSzPyyAt\n\t rxE5iANrehqrx/teQrtVs1xoIKeEjOL/mGBasNCV29qP8YKJWXIF13QRK6boiFqOpW\n\t 1lV5uu+8wcl2MEmKsl4vijwzPfvrsknhzDpvvWINZ+39eaZhfb1iB821bU8DsKP6hW\n\t wM5sfL1NQBV6Ay9J0cUUhAELaUFL1I8/mdLYuqrcz6AMx8QKQal5ZM3xcYyEtCY+c7\n\t u4suNKS9lcQAdIfspgdlA+830haBEdgFDrsnmAmBjzQMdmSM9nkZ5IizwfzWMLGCvq\n\t TwrzL5AjT+lig==","From":"Alexandre MINETTE via B4 Relay <devnull+contact.alex-min.fr@kernel.org>","Date":"Tue, 21 Apr 2026 11:45:09 +0200","Subject":"[PATCH 3/8] pinctrl: qcom: Register functions before enabling\n pinctrl","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","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"7bit","Message-Id":"<20260421-mainline-send-v1-sending-v1-3-bcb0857724de@alex-min.fr>","References":"<20260421-mainline-send-v1-sending-v1-0-bcb0857724de@alex-min.fr>","In-Reply-To":"<20260421-mainline-send-v1-sending-v1-0-bcb0857724de@alex-min.fr>","To":"Bjorn Andersson <andersson@kernel.org>,\n Konrad Dybcio <konradybcio@kernel.org>, Rob Herring <robh@kernel.org>,\n Krzysztof Kozlowski <krzk+dt@kernel.org>,\n Conor Dooley <conor+dt@kernel.org>, MyungJoo Ham <myungjoo.ham@samsung.com>,\n Chanwoo Choi <cw00.choi@samsung.com>,\n Guru Das Srinagesh <linux@gurudas.dev>, Linus Walleij <linusw@kernel.org>,\n Rob Clark <robin.clark@oss.qualcomm.com>, Joerg Roedel <joro@8bytes.org>,\n Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>,\n Kees Cook <kees@kernel.org>, Tony Luck <tony.luck@intel.com>,\n \"Guilherme G. Piccoli\" <gpiccoli@igalia.com>","Cc":"linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,\n linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,\n iommu@lists.linux.dev, Alexandre MINETTE <contact@alex-min.fr>","X-Mailer":"b4 0.13.0","X-Developer-Signature":"v=1; a=ed25519-sha256; t=1776764711; l=1630;\n i=contact@alex-min.fr; s=20260421; h=from:subject:message-id;\n bh=6ryJlJVCkxtW6xPWScWBZczAfUNMkDuF43NbAurnDYY=;\n b=BWVeQKa6MDQcqITgM9e0FnseLN+FDNNSYIWclYMZbEKMC7Wm88EE2HvGZkTadjuyNj5VKvTSc\n l+qgR85bblrC9HBFJElP8gomJKYL2kSdD+uh7P7e6/4YeP0epm+067y","X-Developer-Key":"i=contact@alex-min.fr; a=ed25519;\n pk=KOCaxY4v16ptaT0uk1FRkuaDF2n1JhmnYwLiqWD76M4=","X-Endpoint-Received":"by B4 Relay for contact@alex-min.fr/20260421 with\n auth_id=743","X-Original-From":"Alexandre MINETTE <contact@alex-min.fr>","Reply-To":"contact@alex-min.fr"},"content":"From: Alexandre MINETTE <contact@alex-min.fr>\n\nRegister Qualcomm pinctrl with devm_pinctrl_register_and_init() so pin\nfunctions can be added before the pinctrl device is enabled.\n\nThis lets pinmux_generic_add_pinfunction() populate the function list\nbefore consumers request states during pinctrl_enable().\n\nSigned-off-by: Alexandre MINETTE <contact@alex-min.fr>\n---\n drivers/pinctrl/qcom/pinctrl-msm.c | 15 ++++++++++-----\n 1 file changed, 10 insertions(+), 5 deletions(-)","diff":"diff --git a/drivers/pinctrl/qcom/pinctrl-msm.c b/drivers/pinctrl/qcom/pinctrl-msm.c\nindex 45b3a2763eb8..a2a1e0835735 100644\n--- a/drivers/pinctrl/qcom/pinctrl-msm.c\n+++ b/drivers/pinctrl/qcom/pinctrl-msm.c\n@@ -1593,11 +1593,11 @@ int msm_pinctrl_probe(struct platform_device *pdev,\n \tpctrl->desc.pins = pctrl->soc->pins;\n \tpctrl->desc.npins = pctrl->soc->npins;\n \n-\tpctrl->pctrl = devm_pinctrl_register(&pdev->dev, &pctrl->desc, pctrl);\n-\tif (IS_ERR(pctrl->pctrl)) {\n-\t\tdev_err(&pdev->dev, \"Couldn't register pinctrl driver\\n\");\n-\t\treturn PTR_ERR(pctrl->pctrl);\n-\t}\n+\tret = devm_pinctrl_register_and_init(&pdev->dev, &pctrl->desc,\n+\t\t\t\t\t     pctrl, &pctrl->pctrl);\n+\tif (ret)\n+\t\treturn dev_err_probe(&pdev->dev, ret,\n+\t\t\t\t     \"Couldn't register pinctrl driver\\n\");\n \n \tfor (i = 0; i < soc_data->nfunctions; i++) {\n \t\tfunc = &soc_data->functions[i];\n@@ -1607,6 +1607,11 @@ int msm_pinctrl_probe(struct platform_device *pdev,\n \t\t\treturn ret;\n \t}\n \n+\tret = pinctrl_enable(pctrl->pctrl);\n+\tif (ret)\n+\t\treturn dev_err_probe(&pdev->dev, ret,\n+\t\t\t\t     \"Couldn't enable pinctrl driver\\n\");\n+\n \tret = msm_gpio_init(pctrl);\n \tif (ret)\n \t\treturn ret;\n","prefixes":["3/8"]}