From patchwork Thu Jun 12 13:15:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895783 Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B5632245010 for ; Thu, 12 Jun 2025 13:15:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734125; cv=none; b=mU2JY9TNR7EipjNS/VN3ali6zR0P4rL3PJoipcDQ5HNd4dTHjQ/6YqIByn9uX6SZhCSHBYypeNYHOpghM6mjCWH4WUMJoxynxv8+GYgcEI0vx23l6azvmGPfaHrkhFXhN3M3j31Dmem7txTe6pP5IwmFErgAVtQtgQ81MZ86X3A= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734125; c=relaxed/simple; bh=r0qYcU16DOOXB/L65/ELIol1UcVjLdmj6pz7lcDecA4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=oX65ZIjx+lX3nN2eq3nrE2Rlmr/m6dep+78sZuYDmcy1vaWYXAnQ2CwbqzUoZPYhTjFbwcxpELbh7HPgSIhLy6g2H0tFsOaUBxQQO4GR6OcWb28psaG4FYmrt2UaQmv86Ot8OSJIP6UuP0wQTT7sKtuy3jiBJD/MJj3DZSIjpMA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=MpQKAQd4; arc=none smtp.client-ip=209.85.128.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="MpQKAQd4" Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-450ce3a2dd5so8364945e9.3 for ; Thu, 12 Jun 2025 06:15:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734122; x=1750338922; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=zmZkKLxN2UmLakt+dPeotcVOQqoR98FTAzfeh6JlZVI=; b=MpQKAQd4deRkgarkX7d6Ian3Zk/MdVqgpTZlXlFZrzdPZYi0mffFFcpH5RyenSeEJE QrUHH2xNSlcjZ0AxocdjVVahNTT6sYgYPy0MbGZQmoowu5G6pwwNDo2PVIcm4cNBhsfL Is1ZogqbZxSbMIcWovDzUAN40q/+59XCuWwDlAaE9dwqpif8WN1lrLqxgi4h21LDxTUB VbrRdwZLSnj45kZJxKlObHQ9XK57FJpZzU2wtmpa5KicwdH820CM4tPOlSc/aIc5Dnn4 JCUUTCGam/CeSmK/gh9y0E5bnZk6WzVlFB/qVUZ3mWPW8ANGf3Sv+1Jw0dOfH4G00+Hc QtSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734122; x=1750338922; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zmZkKLxN2UmLakt+dPeotcVOQqoR98FTAzfeh6JlZVI=; b=EXJNL+i0FDAYMX1a4CWDAEWsQLkvBKi0BSG65Lh9MtMyCZwFuKx9ivvTsrzXTbLbzf KffCsaxHste0D2Al0Cfblzh3fgHvyf0ryLfuMtjdJ/x9jze7nrOwuSfhqXXpTdV3HDVA EwUcC9ZLjXxRhnAJ2euJu5CDl7d63aq2Y95Fvxp3vgY8FyNsSOC0XPsmGiT4KOvs53dt MGWDz0aiWUzDggniuVcrmbx0fIBaAsNI3u1jnK1xt4VlNDObVl2EmZwj7f3HhvfsdaNX VDU2j2g7UQ+np1rW6gENtQLo5mtvsHJyLQxt13jpxLQZ2wgN+QTqYSHWw5zVpceDctAb rA/g== X-Forwarded-Encrypted: i=1; AJvYcCWEQXOHyWpjv1CErkri55qN6HX/CHD/ItkJCNJTQcKtidrn5A/OcSDK6towyywYId2LDdO/M+GBpzG2@vger.kernel.org X-Gm-Message-State: AOJu0YxZSpSVAzSX7T8Q/j5w+FJsCqQOj39w+ZDI+ZwRdUyyrpY2iX83 H1sP3t3ky4/oCYQ+Ic8zNEOZJbyZA3yaR9OWfDCACBbzmQL4MwWAzMzFQgdkBIq1coU= X-Gm-Gg: ASbGnctUtUe5UWdo03sTtgEkFCx5o8nPlmLesje+A3k6tESD9y/XoLPD1hiES7yVARe KQl8MglM+E3j0SfaW58toc7O093qJpKzJfZ7ZFsp6zh3L3KrLt1VQ4dFmKUl+auyhTkg+qT+6di l13v48CpC4z27ENjtE49TtSt58DA5rGx+y7ogeJaTQdffyOpUU7YD1S6WSMRSJhn8hukRoCTMWi bqXZZRgd+GIcRKO+JveCoVC4SC3ojj32aoA9DCAYkISSWGZxiQVMr2X46ulZ6GkLCN3NjIj3NFO OUQQJY2wpE/+rfKPuTWCTcq0RdyuevVoN1x/CBkRkdPq9fMJV4DUOo4= X-Google-Smtp-Source: AGHT+IFdr6eiKmLNU1U7PCiAyyEcaNtod1q+PU6cBesinlO+7E1MRjBPyMho7YxEmPTyFNNlQJ5EIQ== X-Received: by 2002:a05:600c:c16a:b0:450:d61f:dd45 with SMTP id 5b1f17b1804b1-4532d37700emr31586985e9.4.1749734122088; Thu, 12 Jun 2025 06:15:22 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:21 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:10 +0200 Subject: [PATCH 01/16] pinctrl: sppctl: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-1-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1728; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=LieHmje5ivI5luNfORERBIvPNT4Z77mh5n845VHvScA=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLk4RH7GPVp8SssQRxQJp6gzZ2YETuVm14Kq ofe5DUznf6JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5AAKCRARpy6gFHHX cr/lEACI6ET2WlvZ9cyQDzGwOdmiCfZct2usLbI+rS53HlFtmhOQcNkSmaUGnwVPfPHX1OKG7u8 dbqcNZIdDG6lrAjwrodXYH7a1vrgYl4fLrudzgfzXyx/pyT+4NJZvRWfprR4w4TraR6/W9iQzdO wP3bL6aoNjJQjxz3P0ey6wN/zPuvQJaxjAh+lJDMEFh8mz5P0UDMZ4D66yIKi2Cm6Ea0xZgGJyR KJOGz4mct+SIxm358x4VzGpQckl5dZF0hqK3CfjD+MAe595dVdFJ2m9NghpyjJV+xYYUrA/tl6T yHMxNVVaczWBNyvrynetjzEFh0LHJ1lK3woV+mzoiFeXT5PaWXJBhxTJeXBSdXAs1EdF5DWjeb3 gf1xcSBfd9eqV2bTnSYtjsgobI3JYLTeFl7LT9h9GtJ4HfD39BuzyA0Ss0+ZAkP+0RbhARTf8Dd LNOqMPmFirJVka+ELdb1qNf56x2cFpRETLOdZ2OtNsAS151YAwJDiLLKBI8FLDvUqxbNK1sST+S 4M6hYV9k3URKnrim10RgFTxPcQrCuW5q62+1mTRUjg7XxpIUlrSdX6TtvPqWmtMoY1zM71OwHl7 f4ZCx+47It/Y0/pIQzZWm31bgsmNv2MW2oIhK/1QHFPK/JDVZtvJPYUtr8AXF+ZEHgJcPqFCZ8s MScuhzi/9MgLUwQ== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/sunplus/sppctl.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/sunplus/sppctl.c b/drivers/pinctrl/sunplus/sppctl.c index ae156f779a16b8c4bb91c4cb0d5d4363ebd15d25..3c3357f80889a95c46557b3f8129882d2ce96f6e 100644 --- a/drivers/pinctrl/sunplus/sppctl.c +++ b/drivers/pinctrl/sunplus/sppctl.c @@ -461,13 +461,15 @@ static int sppctl_gpio_get(struct gpio_chip *chip, unsigned int offset) return (reg & BIT(bit_off)) ? 1 : 0; } -static void sppctl_gpio_set(struct gpio_chip *chip, unsigned int offset, int val) +static int sppctl_gpio_set(struct gpio_chip *chip, unsigned int offset, int val) { struct sppctl_gpio_chip *spp_gchip = gpiochip_get_data(chip); u32 reg_off, reg; reg = sppctl_prep_moon_reg_and_offset(offset, ®_off, val); sppctl_gpio_out_writel(spp_gchip, reg, reg_off); + + return 0; } static int sppctl_gpio_set_config(struct gpio_chip *chip, unsigned int offset, @@ -545,7 +547,7 @@ static int sppctl_gpio_new(struct platform_device *pdev, struct sppctl_pdata *pc gchip->direction_input = sppctl_gpio_direction_input; gchip->direction_output = sppctl_gpio_direction_output; gchip->get = sppctl_gpio_get; - gchip->set = sppctl_gpio_set; + gchip->set_rv = sppctl_gpio_set; gchip->set_config = sppctl_gpio_set_config; gchip->dbg_show = IS_ENABLED(CONFIG_DEBUG_FS) ? sppctl_gpio_dbg_show : NULL; From patchwork Thu Jun 12 13:15:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896329 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 33659246327 for ; Thu, 12 Jun 2025 13:15:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734127; cv=none; b=BsZivo9BW/3zIE/hb832f2MS8cSYD2Lz2Q8gN/yOqxttSQYzDpbu8RGdHdGLwKgXJ/xQebvR9OP4sj9Pg3IIgkfWnwGq0kryCMeO8G3HswexgmlLUe8CDEgsAIf+em/GqELOq0MS2JMsByuGa9aiqhryhql0rltigBnZlFjGINw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734127; c=relaxed/simple; bh=ouf2Msmzi8BBHjiroC26wEHH+x9bWRaKtDQmEzjftt4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=TiThf5v8JccUtOZ947rO2Q7jL1JxwNa982+yQvDSe+a0Gr20WBaJIE8x/91yMawFQe0wUOzRn5k3Vok8AuJogvs6R6gMUkQqezSgI8ZyOZEP0kR1gCR8GB8RjyNXJXfNArhKWSBEFDS/feepCi5XGvpXtFxFC3UmiSFO+foji94= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=J1jxSmsB; arc=none smtp.client-ip=209.85.128.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="J1jxSmsB" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-4530921461aso8099755e9.0 for ; Thu, 12 Jun 2025 06:15:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734123; x=1750338923; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=raLE52k1FOP5xc4vn5Fhz2KPLej0BIrS83cEFgVPEbo=; b=J1jxSmsBCcGJvCr3Sl2fLQVWwm8dbmivNaCdeZre1mFF3BFOgVvQY0o1VpDdR7OsP9 5OqqAEORycqP7hieb7+2Xk19S700uVvH1o+mRMPzh1RY4EQYZvXRj1WPpjKtgiGGf/Xb 1Fb1On05LM+OXH50P3Q3v8z58VyYJD7j6rXf0AlOtYqEIsQLIZTYBF9/Xb9JgwVPqYu9 A0zW2oDLE/XVfe3CEh3AaLelqmElfDH3yh2GcB9ZW5sHdgpijMB0+BeEfTXPE1KMcABm lIp5WQRjc7lSBhyEHE/bj+evINzy7E2bWHr0+83rMdvIo7P/YQBDrDz0nSJQKlxHRUlQ Gdmg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734123; x=1750338923; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=raLE52k1FOP5xc4vn5Fhz2KPLej0BIrS83cEFgVPEbo=; b=C8IULx8ITs/h4xekQk0OPi9OIQ8USGyuv9BgQpBJl6nqxNVI5EhE3jvYZ+dGOy+oMw NTip8xJkUl0/vyM1KkHjxg6A8AbB4qmtVyQmA2VF8qazF9O9xUGFfbHvvpk+TylMUFA6 bF4hWCYb9RfswxCzFRPqiSD6ROqaCuGxhQ5AKol+b6G6GmGhxFFu8Xwetti8xYKjqvVJ BP9Ygy8f3WjU9/TqWs6+1bCcDSmTNbLJGEpeoYKDFeNdJUeDEMTzS56XlRRe+sxWNQlP hrSAieMh+TV8jSu6QMP3/fpfdjWO7F7lRcvsPw3iLHM/6jK/X6Lh6RgS49M8yAhftb6I 5eJA== X-Forwarded-Encrypted: i=1; AJvYcCVprdMCld5GO/2q32nqPDheiR+MVCMkegGdWFzzl2SLqxfY6JEPwTNBQ5+0ESJzImXWxY6ZxfPZdsZ1@vger.kernel.org X-Gm-Message-State: AOJu0YxZbOCfJHvXV+jLn0CmplZu1lyPqEAxELGJ3hU81cWN8T3PzaqT H8Ih0JmhHMuSHjK2d0d1+xbFoxNBkEzz61rnOCWRINJpMKEEHNRcJHnRfN2eouj/47Q= X-Gm-Gg: ASbGncsXSou8YQaqXAfKyQ93f4+rB0SkVuoj/16TbgvLMDs/qllTmL+XKIOSnk0mnUW EnsmfM8GA7Ej/SDdcQ3uTo/481e+VEU45NQNRFiv7HMtLz1Ynx9Nswb9pVtBjPosHCnVSsPg4xh ujLhObf9MAo1m8kbmGnMfyWyJWdw1sSy8vZnWcSiQigMGRjkhOM3ebwFHD7YMqFxZyQ0ref3OrF dFdyAwr4DJMf2wBjPkMV73yoiNKheMtMSH58NTEkGRRk0VOFWuQdp4W06C4Mqdmah0ojiu0IfrP xRkSs3Q4yoIOd9Bs5cst2ZVv/xfn2OO4x/hm9X6trV6fMTWNtFBuyAk+85LiEw7aiw== X-Google-Smtp-Source: AGHT+IFhdHOEFkYRXt2aGfqR8yUbaKu71Wss7a74LOAwDEENbVsdkagshqU0KdML5k1g7zcI8+VF/w== X-Received: by 2002:a05:600c:8719:b0:442:f482:c432 with SMTP id 5b1f17b1804b1-453248f9836mr73550665e9.18.1749734123425; Thu, 12 Jun 2025 06:15:23 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:22 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:11 +0200 Subject: [PATCH 02/16] pinctrl: st: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-2-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1451; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=5oB62agveNry6MooKoxev/dYplc8gqfDNeN0pMdLmAw=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLk2dgnIHTbMZddeUKxRSqft05VFU92x1VSm HYQEZ9FQymJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5AAKCRARpy6gFHHX ci90D/4nF341GcBLvs7mN4+c32OAiw+FWYJXPAOuwi/EUKU0s3AT0CdFTJYUDtLgh4tTL1kGiOc 0afStrGNH+AilQUqqVnZA54B4xB/xitGdZyKn1L2FMY95sTWY2DLazI9FaWGDJHzYr32Is4+/Od ApDWy89r3ZqJPsu/AqFA+u/WL1GS6eGHjsGaCqOJkJOxCd12CtopA1Sa9ykgrwOCvflKi35tefo c1EdnStWa+4dhBA2u4ImkGdepns6dNSsrR0sIlxPxCYbNjcxD3Cw12K4Kzh28PwDa+5M2rjPZLV HCn/H8EY5ZYroSn0pCawU/zDxL+JoWLupRE7O0mCGnMOV3L6bFSoydD3Y5hmzalmzvIDGwpG4Po daXmD8lwASgyWOmQdEnPotm7B+8+RK88tsKCp6fRHo6gvcWj8gFb/VqlGCxUU4ZGBWtI6ugA4ij 1NELeINA4u8yjj7X3/a1UBo2cKr5zrP4WIqCQVR9Q29kLfEpOdoiGJz80VL03tcvUFTye2QsEdv +xncjx3Gsp+H9v6sMKbar5HUNDMfufe29u4+gPeU9LFwHb+MMQBz8jHlI1Qu4+zMgbO0dRqaYXF XLFoAR2ELXErj81QGwg+WTGD19Aoxi051lXMTTQ/eYD3HUrw2H4T0XHfaLFlBSW+sOOPBmL3S2V +yvayW/ehrmLRwQ== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-st.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/pinctrl-st.c b/drivers/pinctrl/pinctrl-st.c index fe2d52e434db8cdc03d61ef3f4df95cbcc9c513e..fb5d72a6826ed730f5a10a817e9a46f9fe319b5b 100644 --- a/drivers/pinctrl/pinctrl-st.c +++ b/drivers/pinctrl/pinctrl-st.c @@ -711,10 +711,12 @@ static int st_gpio_get(struct gpio_chip *chip, unsigned offset) return !!(readl(bank->base + REG_PIO_PIN) & BIT(offset)); } -static void st_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int st_gpio_set(struct gpio_chip *chip, unsigned int offset, int value) { struct st_gpio_bank *bank = gpiochip_get_data(chip); __st_gpio_set(bank, offset, value); + + return 0; } static int st_gpio_direction_output(struct gpio_chip *chip, @@ -1470,7 +1472,7 @@ static const struct gpio_chip st_gpio_template = { .request = gpiochip_generic_request, .free = gpiochip_generic_free, .get = st_gpio_get, - .set = st_gpio_set, + .set_rv = st_gpio_set, .direction_input = pinctrl_gpio_direction_input, .direction_output = st_gpio_direction_output, .get_direction = st_gpio_get_direction, From patchwork Thu Jun 12 13:15:12 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896328 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9F690246BC1 for ; Thu, 12 Jun 2025 13:15:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734129; cv=none; b=Xxbg/sG8JNvPEJxAUwZYRRwVpqiNcrpYzskMF7focsEidNOWSxJIaWMuHj33njFTBAqSP92cdpd+JaPxCYlV8quzDqEzTw2/9vlbqqzjPfWcrqPXGJiPv4wSWOPPQ/TBu9E/Ze39xds0bwEBT0DHLL5lhQG1988AGH3ry2bKHy0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734129; c=relaxed/simple; bh=UfAyi0SnKB7UNnDRolL6nwsA4uSdSBP9PbHYK+OpTMQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=msFp85GfhrgE5stU6dbDZOxm9P5g/QnpUnF58zy7kybB2q8q/eU8D3D+ukoxm4Dx0cl0RLY+W8YdG0aRn/vW+IGzxFDbvJrf0JGNytfu+0uVFgR/KptiEwsW0ufdMUk5yfnpFQl61iiDVoufl8cCcXL5K3eCDqjDFs2eKZWWiR8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=K8AtIo+R; arc=none smtp.client-ip=209.85.128.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="K8AtIo+R" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-450ccda1a6eso8201465e9.2 for ; Thu, 12 Jun 2025 06:15:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734125; x=1750338925; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=3Xh9vFlYN2cjb4AoCZuPQ/5e61RjLZcwUz2fDo2ivjU=; b=K8AtIo+RPYzSZrapz6Vl1RxLFLSGvwu9YrSOCumBpuQL5jNqvjZcBJzhyg+f6CZRRE +zteFqHbGxz9wNKCqPt+ht+jt+CEp5bijahnJUaq8ivXdgMggkhjoMXA3Qi2K5pDrgiS QEWfGMPpi1kXWOM4JOUa+NLimgVyavkapyoi2hOl0zvteq0QcSY4uGVnerriXg7GUZuu 6RZf+BZ558UY1aFZDvsSxeiY0ka+AUsl6PJ6fOzUsIsgAKkmcfdeT/UndLEwk/JL1iCY YUr9FwWOFP0y7Bz0U4bpVAzC7YJfufecrfi/0fDKcLNjGlUc4zkO4H1nC9ph+X+jYAVQ p4SA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734125; x=1750338925; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3Xh9vFlYN2cjb4AoCZuPQ/5e61RjLZcwUz2fDo2ivjU=; b=ZQWN5k/6x5s/Wkx6pbkMP32yBdG+gvxb8wqNIKR2KnDpueduYUY+5jRlVCnOJEDXPd Z76R/LoltZF1XSao9lwLhq11RcrHRXswRFhldWbuuuVMI/GfZl4bmY0SU+Iq54l3cwzP DMwlrcwuNHMNm/TQlTw0TCEPoTuheZVOz4C4auoKmk9I83w0OAKUTHOOFIfeNdiY7N8Q CFEvGwMaO4fN4fRpEEiFwwz+IORrDnIPrKcqJRP7zUrAnMLQqep2ua8rSsrqOCDRS94X mwnujsa3sT2t6AJnuuHuoUHkqSp41L0JLTe2UMRDdp7h+bvHoWeBDFcbHBBanMpYdldT KVfA== X-Forwarded-Encrypted: i=1; AJvYcCWSO1iXVdx7zxkR/9qw38qwGWr9slZyGs6b8quF7F4RnQdQ1OdZm5MffrFxQxONIz/gtdpCGWtnmQx/@vger.kernel.org X-Gm-Message-State: AOJu0YxCc7pYB2zd4ff13IYbSe0vbtM2oN8xkd7JYZKccgG5vGKgoH+q nKE7nIW1ilI4r+UBzq/E0r/DuXersMuDPpgKZItlU7jr6qT/7mg25XSPV/CAMnkfqPI= X-Gm-Gg: ASbGncsW+bvCkd0iBwpz04xcIK49j+RVqVyOHgxitv7w5tUk3NWd+8XxCxT/dun1sxX CGq5vHImVmCLlg7IrUEXHS0RpPrVGPTtPOeLklMqmuYXx3qBPYY++K3oCCiLaVN29FBKOyKDcu/ C/dCjZSQ0SDnw3wtXIWHZzMd6nMZqlH/LeuVwVkpKI+2i/sD1r70oXoesjvYRw95nSGDug3Xo0y 1FztlP6pzODSGGJCsTb/1eaHLYOhZ0bwg0J2nx5/YawUDdpBWr5x7X5drD5WcIZQR/+QWN25SN4 Q9q0rWNk4wTayVUIe5iDiG11sCZMutwqG3MoauJm1KUJeb2lb6RRj6E149iA4oRuBg== X-Google-Smtp-Source: AGHT+IHQX+Ej9HN4lelzlLvXYSgEkOOUk0QijevexRqGIQJCq4lgjLqOhwOf+he5IAKWkE6Gfii7JA== X-Received: by 2002:a05:6000:40cb:b0:399:6dd9:9f40 with SMTP id ffacd0b85a97d-3a56074913bmr2816635f8f.9.1749734124811; Thu, 12 Jun 2025 06:15:24 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:24 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:12 +0200 Subject: [PATCH 03/16] pinctrl: da9062: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-3-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2018; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=gwxSylPIbPGKwi/smPHfzBU9AQqt6xWeX1IRJSlXXtw=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLklRnjxne2O9+BScgNIbdaQOQ8KBJv22AEy OvQ1Poa4/yJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5AAKCRARpy6gFHHX ciqcEADP8OlzO6NOQIzIT/qqVAp3TDw0XWzO3xI33euUn/a7LW3bOC5krWIHRmgqL2O3X9ROPwy 8pz4JQq0eNG//IFcZicNDy4OI/1UXmVX7q6CTYBRrYTSHn9MSK7xj7ewNxtxNs7ICz64+F6S4z6 /Se7jc0CQ3+r1opnL11YOXKKagRki+iK+jyb9M1JOxbj0Tgo4adZrx19lS3VMhZOI+iDMiNO5DH p/BDCDHQz7LVzxYAaSRH4gKrjFW2Lu4YdlRvFpVQUh0MPPte0b3fJZWWM/2W2rWSJZXC7VQihcM sYjsZf8F9PccsfTurbyxNG4+uf2Jkp5qZLGr8jxajXwhCzCb+dIbiEkG8b+tQRkAsEddqLTWMXu pHbF0u9YUFROoTwzyjewSEVDLm0ef5KMRrMR919B5eD0+Gvv51hg2ISZQl/Ul/ifkNOkubjn1cj eOrF8/vsmxM/hUgNHcaXZLKXrg29O5KiZTlsW/oC9FKdRjVXCgRZCZCt1eDKD70aS1vurl57yZ8 qqz3aHv0xXNXD4dOXrILpcZnJM9wsqnWEHpOVEhlEJlMuCs+JjOQsuOJ5agwuTE5BzgxJGpDjVy f7SN3HIJfkiYibBq4+uvAchWPc9l3G4GtUTbeTyVX7EvbSLzHv069LGspheGTOvXTiJ7OvFJuj9 eNUbMRFae+k53Ug== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-da9062.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/pinctrl/pinctrl-da9062.c b/drivers/pinctrl/pinctrl-da9062.c index 6f44a13b90ce56dbb00fdbedc28b0377a42d3b0c..3295b09dfc3daf8feb6de0082d95952e1cf25d26 100644 --- a/drivers/pinctrl/pinctrl-da9062.c +++ b/drivers/pinctrl/pinctrl-da9062.c @@ -102,14 +102,14 @@ static int da9062_gpio_get(struct gpio_chip *gc, unsigned int offset) return !!(val & BIT(offset)); } -static void da9062_gpio_set(struct gpio_chip *gc, unsigned int offset, - int value) +static int da9062_gpio_set(struct gpio_chip *gc, unsigned int offset, + int value) { struct da9062_pctl *pctl = gpiochip_get_data(gc); struct regmap *regmap = pctl->da9062->regmap; - regmap_update_bits(regmap, DA9062AA_GPIO_MODE0_4, BIT(offset), - value << offset); + return regmap_update_bits(regmap, DA9062AA_GPIO_MODE0_4, BIT(offset), + value << offset); } static int da9062_gpio_get_direction(struct gpio_chip *gc, unsigned int offset) @@ -172,9 +172,7 @@ static int da9062_gpio_direction_output(struct gpio_chip *gc, if (ret) return ret; - da9062_gpio_set(gc, offset, value); - - return 0; + return da9062_gpio_set(gc, offset, value); } static int da9062_gpio_set_config(struct gpio_chip *gc, unsigned int offset, @@ -235,7 +233,7 @@ static int da9062_gpio_to_irq(struct gpio_chip *gc, unsigned int offset) static const struct gpio_chip reference_gc = { .owner = THIS_MODULE, .get = da9062_gpio_get, - .set = da9062_gpio_set, + .set_rv = da9062_gpio_set, .get_direction = da9062_gpio_get_direction, .direction_input = da9062_gpio_direction_input, .direction_output = da9062_gpio_direction_output, From patchwork Thu Jun 12 13:15:13 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895782 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A5748248869 for ; Thu, 12 Jun 2025 13:15:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734129; cv=none; b=bYwUuTpVQn6ApgF51sDHfvkqfZG9I5bBbunHbRXXrCv6fUAV8OflePNW45hpW92COgaPoDX2EcqrwJKnhvrdn6iD5gVlT4YLp+EUwq3esz0tXsXGdYBkIXUjBs93c2CteLhMlQo0UAkAIkcuwVpqx7b8WjOJhCyxpxkTOJhD0XE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734129; c=relaxed/simple; bh=E5AKqRpmO9wPBzhaTRocu/BHU3xEEHDIC4VmpgIEqvk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=BBtYOPNQ1jKC2XT3qpGPLCImCV07sXx5JYFN+Z/CQpedarpPrS0ghMS9S6xWZcJsXFda9MVqkn99nKE0yWj50NGnpiiyPHHjt7YTtLfRiVw2IZH/X26hWpaVRPw1MIQO+PzkThStzn3VybWvZ/f/jUiCKBoaguCm//MeRp4u+sE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=pAwpO+1w; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="pAwpO+1w" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-450ccda1a6eso8201715e9.2 for ; Thu, 12 Jun 2025 06:15:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734126; x=1750338926; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=rV66TNaxM+tRVm0G56yg1ZS+Xb8QC9jIEshfuDQ8Ajw=; b=pAwpO+1w/VG7oXx15P9CMDEgW8OSZqJ/dgvcFhhcf5A0ZMNwgSga8/gSvqe9nirCX1 reK7nyWl4eHMYnbLvdMFPYJ7DDYoNSOJ6Nn4vXwekrtFTubz34xoK8tG8bDMmMNPNEzb tpAAv7SUmQz1aJc1vewguETQ0RWHOTko+Dc2aBp5gBzlY6e7QlE3y1LF0vryDlmgK7gJ SjV0HT3I8G0TaeywJj1khDPtI3fxiS9Y7FQpnjtbzaMN9ea+VbZgcyMdJAxn2m6Y0Kg8 o2kb/xyCLzoHcZ+KtO40ZCPNMFwkuHTfG0VJTJUhQq04o/IH8jBq6sRnhva1PLScHlE5 W47A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734126; x=1750338926; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rV66TNaxM+tRVm0G56yg1ZS+Xb8QC9jIEshfuDQ8Ajw=; b=e9gX/7Yud3/cH2ir/MWAZUpBwKZ9vqZm1yt+HaU5qcXKSLCXOhTJ+Y+mSXK6gAXbLv Rx/91hghV/nvTEXrHeTC8pBkvkCCQFt69b5/+XQk0wx3riOmtIAaeJs9V4qzE0rb4FcX YqInSPqTqi5+arA7XBXFoWBHqn3qezLOnqGmbKdFjUXYJpN6CKzmcnoaaM7+Q9ZhZQ/I mhDNdpz2YzXkNDpDVS4MPZZwa+0W2xXWkEYCe40ppuoEt1YYNuhNwyZfaJ9zDoAIcM+h c6xxDeE6bsW7dyAGuNzBlYlhn/NoKtTZLgAzU2TvR2EChIJI8LQtx4r7oYEXs5G9rcou oonw== X-Forwarded-Encrypted: i=1; AJvYcCXsuD8eXhtCT7BjZIfLZO42Ljsm/l88R8qMdfrsSB6ZghDBq1SZiLfm+lTtd4uTQp4fJSzvlGAgYN54@vger.kernel.org X-Gm-Message-State: AOJu0Ywy8g7Av/72W92r3ci1aoILez4FXlC0vGI2ncS5/FOzVEqEBsBF gryNgPt4TrjiDVl/3qRVNI8px2p9OVPzf/56qjGxYlr0a8PDLDaQTFRaABQ9PvtPwDk= X-Gm-Gg: ASbGncsPF7zIefJfLefn3z3FSn09m1y2vOrVa7t/HCAvtTlKWYZfVc2k+hI4OYTAE5Z dIT+ADv+VZYb+clgPxYZwimb4e3zvr63PtGLiyA+zcH6tZJYEnTlVC114zZQn9qNwjbpCmvxzFR MP5Dv1oeIIIql6h1Yudo+XgtzPI8NTqtA/lybbmGbF/BVGhu2zg+Uukk7IWxexLLA6Zt1eHSo8P AbGMh8LxosoFAmrApIH2Jk4hWLAQX5ggvhSeK7QUGHl/q7/n0YA6LRGB4Ak91+1LxbWFBjihqXk xQVcYIo86dXHABF5OwEwq7tfyD7arl2zNxXxhfiVCZZn77SsspaIPIw= X-Google-Smtp-Source: AGHT+IE5mT66pzqKyfIajfIGyDumyvkC12XEvq6ZyTsCS1EDLoE+BveAXbQvq+KfiZgQjZVcNrQ5EA== X-Received: by 2002:a05:6000:2890:b0:3a4:f744:e00e with SMTP id ffacd0b85a97d-3a560749228mr2745803f8f.4.1749734126031; Thu, 12 Jun 2025 06:15:26 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:25 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:13 +0200 Subject: [PATCH 04/16] pinctrl: mcp23s08: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-4-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2173; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=tEFYQzYr4zlLCNgvVSEeoX4S4CSsudf7dYRdU15AU4k=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLk00prsnH+1kwtr0kzg9zSLDkGxpKTnd0jQ 2950YwwAduJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5AAKCRARpy6gFHHX chD4EACJYOau8Xi4fN3Ov3TIfQN7He28eIvwgT5/E20lExaBUJ2RaS+UWGxHsqkMw1AmYmlWwWe t7Y93zOUENY77UyolkyLKRIUoxa/rU5H3OHrxR2lzxEZHJGH1YIWDeKInlkQCAumxB/LbXOunlZ 0Y/7w5Jm6gYhBq0c1lN8zx+kW4v6xH/BPTgfbz69NBHIg3q1m4abQQAxZdZBBJmludNlRPCel6C UJPsLmXvRaKumW5SFMgO3g+EZmXP2+/9JPy6FjxR9s3ZudFN/Q/24bByS4PGOuwEQbQZ/bQDV3e kY5l+jCwcAmU1EVEx4qQGBtNC5fa/OK85yj1wOzyr/uthH7vQFFPbLUWpiccyQsuRRTVamFc12M QWX6OnGRjMKwUyfEtqgwONiGC7b8/73K1ihlB1FWR+V4d8DntIjO2Hm31hZNk2K9HHs3Tnoye/Q V2Akk29iY+g1pd6DQ7ZCeFDiZ3/mYjrgr4SVc8LRVbOn2YBqrTBHkVgXNnw/Vf2SePZy/XjLuLL JvbAmYmTxkDQvqDfg3xmLI6aVfLuOLlvIbEY2hY8lkxE6oPurqUc1v4mNapXqijdfpMojdcUefE KgPCcATeWN6UEPqxC1itvEf6yH+135QoxRLH+32f39jZeN54TE1MjPkkwy1eeo94ZR4lkUBs+CL R0R7Nzt1LEuaeUA== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-mcp23s08.c | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/drivers/pinctrl/pinctrl-mcp23s08.c b/drivers/pinctrl/pinctrl-mcp23s08.c index c2f4b16f42d20b0dfb0e1e6c79f8336392307c70..c8027ef03eccdf54809dfcd76ed8c07c424b41c3 100644 --- a/drivers/pinctrl/pinctrl-mcp23s08.c +++ b/drivers/pinctrl/pinctrl-mcp23s08.c @@ -341,24 +341,30 @@ static int __mcp23s08_set(struct mcp23s08 *mcp, unsigned mask, bool value) return mcp_update_bits(mcp, MCP_OLAT, mask, value ? mask : 0); } -static void mcp23s08_set(struct gpio_chip *chip, unsigned offset, int value) +static int mcp23s08_set(struct gpio_chip *chip, unsigned int offset, int value) { struct mcp23s08 *mcp = gpiochip_get_data(chip); unsigned mask = BIT(offset); + int ret; mutex_lock(&mcp->lock); - __mcp23s08_set(mcp, mask, !!value); + ret = __mcp23s08_set(mcp, mask, !!value); mutex_unlock(&mcp->lock); + + return ret; } -static void mcp23s08_set_multiple(struct gpio_chip *chip, - unsigned long *mask, unsigned long *bits) +static int mcp23s08_set_multiple(struct gpio_chip *chip, + unsigned long *mask, unsigned long *bits) { struct mcp23s08 *mcp = gpiochip_get_data(chip); + int ret; mutex_lock(&mcp->lock); - mcp_update_bits(mcp, MCP_OLAT, *mask, *bits); + ret = mcp_update_bits(mcp, MCP_OLAT, *mask, *bits); mutex_unlock(&mcp->lock); + + return ret; } static int @@ -626,8 +632,8 @@ int mcp23s08_probe_one(struct mcp23s08 *mcp, struct device *dev, mcp->chip.get = mcp23s08_get; mcp->chip.get_multiple = mcp23s08_get_multiple; mcp->chip.direction_output = mcp23s08_direction_output; - mcp->chip.set = mcp23s08_set; - mcp->chip.set_multiple = mcp23s08_set_multiple; + mcp->chip.set_rv = mcp23s08_set; + mcp->chip.set_multiple_rv = mcp23s08_set_multiple; mcp->chip.base = base; mcp->chip.can_sleep = true; From patchwork Thu Jun 12 13:15:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895781 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D156F24A047 for ; Thu, 12 Jun 2025 13:15:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734130; cv=none; b=iW/1OMdWOlW3YjmYHX7E9ohDE83Gvhbbw3s5PY3qvHCPH8vKNL9p12pHNceg743zn0XnYzetm5192ky4eA0w6HW3jNaUPvgTjD3xzJkix9vfWO1f/Og9gf8Lkn6gWYLV+AkMJUWisgjKc8Uk1Kba0yG6K8Bsj0L9zdG7fmt/ABg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734130; c=relaxed/simple; bh=kcI0bfI5H/Hmf5yZdyf0QMbThFtI4nWGLfbZ3WK0FlY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=i/M+ONVwMafUSK1eoTPhx3ANgzKKpY7iijzeYBQBAKV6eSFOoFQ3nXHjzAUj0f01v9wshJNGD3eTO7bGSDjClTgHN3XerSr+D/ZpdpKUeO0pqQS+lv8IiAzj7iymndecI6jk8EoW9BthSL7pI6IPQxmft6ESP3gyEnhOLqVK3Q0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=kf0hl+oF; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="kf0hl+oF" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-441ab63a415so9884765e9.3 for ; Thu, 12 Jun 2025 06:15:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734127; x=1750338927; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=tPh64evwrzs2XEZo26akT0hL+LXbpDIaNfa8zeCvhbI=; b=kf0hl+oF1YH8z2XK9SBxt88+4+55wGdV4bnjPQkPBgQb3QXeZIUvm0m9pP2PhD7dLg RhIDNpLUOSXaTMOmjXx35qqKA1fiWSkFTUC0AVlgDYYtiUlyspoy4sDVf6eIBqXBjFNA F6Xlt8beduzdKIf6CLjtdJRFHCq6G+xvgZAkUl/TCayN+pJafPyVPxyC+QHoXm2WnR9K slSRtzHCS/Q5kKY+ZUYI9yRtMVIDa8vYDf4YC23QZeSvdv/Dyshtg9FYsym42t26dI0D c1fTbZlVrQ7ayLcX89D8RwmQmyDZW+w/jKCwnFYKIgubbBhp45dQR2NyqSjErjeqRjJx w1bA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734127; x=1750338927; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tPh64evwrzs2XEZo26akT0hL+LXbpDIaNfa8zeCvhbI=; b=ovzily/kaPugudE2CtDyzXaBzoOHrw+EtwXP4SQLN9DAeAhmz7jAxID9OTodExLy+Z dc4WW71ESNNltNdRcX45e/41eU5qnszlVSe6jXAV1N6FI+6SYcjEvzh4KoZrp4lgwPWR YwEAO8pPc8YKWeQFQ+wxe7nlIbfrQy4DgRgZ9H6tTEp1oDmzenZciCC/akRcw3e8YVZa RBQI303j/VFMn7fjDBwLpqfiIaRd3AqKxTAvyCoO0FZZWQcnUS7S3a3hM4vVMT3DSbAu zCabB3Z+MZguKIYeaoxqCdXuczqTRrJ1RffyodQblMdEXHwslURPa2CVkZZu8y0SDgaZ q3bw== X-Forwarded-Encrypted: i=1; AJvYcCUSPzTI3p1MNqsWicCjPqkuQ9stbtaJ0OZeiVZQN8nrOJ6f0Pj9Ug5QYMe3ng2IH1bRcsHO39AhIpsD@vger.kernel.org X-Gm-Message-State: AOJu0YwKC3gP0BUJ1yBV2+5kLGhfG+D+d/8IwFOIDo5l3xkJz/y/JOWV glaOoMxYcZsiFlcnPtHFjtoppzPmypUjAHgrrMG3kL+lPMGAJZ16zFkxsOAeNWCPSQw= X-Gm-Gg: ASbGncs/5peVwZLkjrIWiCUvo2Uk/6u45jD5ouciJb+M+8cyd4oqklPFweX30f5aZSR u84tFTpI5kIHTRerl2pLqEivB+PhTX/BH5p0d143N0BkTQJbZQHqOA+HH/A+LoL6rtIyER2jIrB pLcUSBclbDWM7oh3KiNTX8ZVZDNKbsF20lysGG3QwQ15XgzCYs1kqP9o2tWrOyPrtTRFtAZOR3q SWtOXB+I1OeBoI9Yzk7etnAqa/XRlWo3l2uwL5V9WcM9r4ku2gAHq4LDIP2l8RZb5C0n4aBF9JJ g4IrTI+8RSGOHE8ZZ9YG35eXc4Vaa7ZV8GCWbQIMWOZVpJ0F1pqxL1/scFZkfmf/4Q== X-Google-Smtp-Source: AGHT+IF8dQFZu3267rnqS9T+MlnDpsGMNr4UhOIVEWZlRhW8ilrSLXmT3/L/LQod0dJlLDDEHru6ig== X-Received: by 2002:a05:6000:2505:b0:3a4:f7e6:2b29 with SMTP id ffacd0b85a97d-3a5586dcc29mr6204277f8f.5.1749734127149; Thu, 12 Jun 2025 06:15:27 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:26 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:14 +0200 Subject: [PATCH 05/16] pinctrl: wmt: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-5-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2065; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=zZBlMtHKzzXioPhlG1XBi+lA5WvGdR2KtCyPxbjRVIk=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLll7sZrjDKxB+yIfzZvsGDAzsgGsNSphici P1S3FHTYBuJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5QAKCRARpy6gFHHX clh4D/0eejaFFeaR28Vf6ymty4cRxtkyHHnZyl0oNIAQK4k2LKxfyvv1Uvm5rcDeJyn5YwvFLUM 63wQ/V8f3n0FvrZ0akyzb4OoY/gTGr9TqBrRvfmdw3r88RstUyCq+LAePz4qg737URegvsmvcqD d0sTmTdeWFE8SJUqM1Rthnrc32nwNGmdogrzN3Y3ZySLnrLIrGYKfwRv1uaBnPxjdZ92ZZp7S3u EkfpWxLbbosC+cqD7juqS5+lazxS8yOH2tC8dPPUxwYFwlA/yuIElg3a5eB1sSMrR4EGmkb2RuG omLdr7y0eoOfBmNyoHulUJeZERWMiUDyTpZuVWgKEfCYdzgb/Ti1935juLv1SrhpTfvkpL369DG saMpzPev+8uD4fKF3iWymk7Rpdk2zZ+93Ey4bGlSG2YDdgz5qd31nsBMFhvQPWVdVKNty0XtRyX mt0+a9PFIVXl1mjGeDhyldfzWKuR1cd3kDzod6bLGisrs3zMUq+/Ru0yBalUAzuB40k9boYhvhv jfa8sc/Rp5eAZ3YSb7LDTNEf9m5zWmWu2wMBGWlQIS0JyYZqtY+6j37fbI16nOHQgPZcd9zGGG/ cvIur8XbL1wPUk8bK7ZObQF8wT/Nu0GAH+UK2fj/hAJAIHmRY6Vy2gaw9fAM0vxRT/AEE2HSZfC 45zRTemNQslYrtA== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/vt8500/pinctrl-wmt.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/drivers/pinctrl/vt8500/pinctrl-wmt.c b/drivers/pinctrl/vt8500/pinctrl-wmt.c index fce92111a32e4976bd31c7e9845e4fd08a7affa3..767c6808a463ede61aee61b63f28ee38185b7633 100644 --- a/drivers/pinctrl/vt8500/pinctrl-wmt.c +++ b/drivers/pinctrl/vt8500/pinctrl-wmt.c @@ -507,8 +507,8 @@ static int wmt_gpio_get_value(struct gpio_chip *chip, unsigned offset) return !!(readl_relaxed(data->base + reg_data_in) & BIT(bit)); } -static void wmt_gpio_set_value(struct gpio_chip *chip, unsigned offset, - int val) +static int wmt_gpio_set_value(struct gpio_chip *chip, unsigned int offset, + int val) { struct wmt_pinctrl_data *data = gpiochip_get_data(chip); u32 bank = WMT_BANK_FROM_PIN(offset); @@ -517,19 +517,26 @@ static void wmt_gpio_set_value(struct gpio_chip *chip, unsigned offset, if (reg_data_out == NO_REG) { dev_err(data->dev, "no data out register defined\n"); - return; + return -EINVAL; } if (val) wmt_setbits(data, reg_data_out, BIT(bit)); else wmt_clearbits(data, reg_data_out, BIT(bit)); + + return 0; } static int wmt_gpio_direction_output(struct gpio_chip *chip, unsigned offset, int value) { - wmt_gpio_set_value(chip, offset, value); + int ret; + + ret = wmt_gpio_set_value(chip, offset, value); + if (ret) + return ret; + return pinctrl_gpio_direction_output(chip, offset); } @@ -542,7 +549,7 @@ static const struct gpio_chip wmt_gpio_chip = { .direction_input = pinctrl_gpio_direction_input, .direction_output = wmt_gpio_direction_output, .get = wmt_gpio_get_value, - .set = wmt_gpio_set_value, + .set_rv = wmt_gpio_set_value, .can_sleep = false, }; From patchwork Thu Jun 12 13:15:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896327 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EC62D24BBF0 for ; Thu, 12 Jun 2025 13:15:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734131; cv=none; b=DZ1xvZEITn3qoqm7yQF+oiqBoKG1U6A/SvB6GAwy9UFV+eMuCR2+XHivXm+lnQOfPWe4DNAqLM6lq9OBizClrSqlhHnaN2Kgv6g97vYQXe2+p2JgT7WiPz4WJgTDbg8sKrbf1G67mnoiheUPsQZ1Woj9A0SiqbCPfMH61mVohck= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734131; c=relaxed/simple; bh=+NK8m5qrc1KmJw+Fk/qnUNfnygvAI3Ur756wHpi5Soc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Uqzqgl036/1uayHbIJVFSA6tRmf78QAeDBdg1V7k5SgWaoaf0aBTPcs/wvnYusgL4n7RPPg/wu8RefPXF+Vpa/1dP86UYSY8obGf8bXVRWjM6Ndp89hZwNwrEBHjMPTidM52Oug5SAXDEUDT5YSu7/nnRUcf4B2a0rlTKGFDlAE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=oS3PdEV1; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="oS3PdEV1" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-450cea01b9cso4710555e9.0 for ; Thu, 12 Jun 2025 06:15:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734128; x=1750338928; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=dpryYjr6dJZUJcBNCU3DY41Q8g7jIiX7s0MfCXnX/8U=; b=oS3PdEV1glOiO+dhgwzDHvtjJ0ljcJ9MqtjcyAvpxdB6+nD2xhaVy1jd5aQebdqKv4 OSF22ls02ZBjuoG4PFiYt91VhNy/1gr94GMZY3gCMxKtoZF+Zhv8pOx0kaHqYp9aKHv8 bOUoy55PxDf8IuAFkoiIqwU1TTsM++WEOlr7ETR5jE4z9rIg8aWBgkIWCLEvhQrTYibq VTVpr3lBZKVAUJnOUrW7iJeDl7NIZYE+e5NP9brJJIP0d46VJdd0o68sq0tI+EYpsXVF 9kRF8tb4zbb4+F3HF3LGwO/eVTFRccjkCPcyGijGAskP+y7mE58sS+TZdRRGNz8zR6IL Y3sQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734128; x=1750338928; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=dpryYjr6dJZUJcBNCU3DY41Q8g7jIiX7s0MfCXnX/8U=; b=nXqhIkZzAPQItZZe8BkrESJbrI91p6ASqXnIqkwt1RcKZsIfU/C+QDmlIT4Oku3VD4 eQUrdIo/0sqy1vIKNxn40kYQJem/k+i/H15smkZ6VqniXlLRtvm/YQJoPp910XLt2YGa LqsP6VJSCmNGAaGvKfnw9VS1XAWTE8+XfbFJ0ieHZD8NQkntwenBwMoNSqTkxz7X9MP6 t7DXraf5D8joDo859z3wtXBtsB3hSY3i915EdKKKtX9Rwx4pAAoHq53cHrtvznOGXkhD /HnuTad6QXj27gCfFK1H9H5fBQFKBJtdpJLD1Cwkc3yqpfNKtc0iDlrKQWfmA+F9m+UD y/Bg== X-Forwarded-Encrypted: i=1; AJvYcCWKMU07qc/po3fiG5eK/7AxkINv1ZyEJmtElMEvaruePIIBYplYkNMjEotdRnH2zbRCq1wdkxRgLoq2@vger.kernel.org X-Gm-Message-State: AOJu0Yzf7UBAanEsszgK2/vNMW1albWEMmdzJHGBuXK/knOAr2sxSpOk nBEqErlzdV18Kr3oC0HuGl9KA34yT64ihFQ3PQlIMkLtgvv8R6irU6mx/0amOOvWNTo= X-Gm-Gg: ASbGncvBgxwvRITyp/DngT8BMSrcVvlNyWKVnd0DeD+DbIAaWFuzTUssEXg4LFAkrUb cLYQ7gyRtS6BivxoxV01MR4/Xgib96M0Hz3l3juLv1wlott7c3CgWTPul9Btils6pZxAs9BSdtZ oRBPbLILsl1aH3QM7yMYevi1qvhsyg8oZ+LX9HqbL8aHwi0Q0Vs3uXDo1LGeWVMu+Wfug6i2tUN 00dGyZHiYfZhiSbnyygRPnUczumZ7qdBR7BWqkwFO7f5FvDG1sZ4q4tZnF4hp0VVBCbwhlOwrbg f9nRqQiXn15qnK7kSrVuUbbv6pZdGZd0rKUlUayQlq9u/5LNzrJ+jIv/fQWSFx4j+A== X-Google-Smtp-Source: AGHT+IHYhHp/jvxkulDT8caAK3JFprrXp6WBLQybVLzjI96KoA3fZGyckOWajuSkl9W+4oQhpYhEmw== X-Received: by 2002:a05:600c:5291:b0:44a:b7a3:b95f with SMTP id 5b1f17b1804b1-4532b966af9mr29139925e9.25.1749734128225; Thu, 12 Jun 2025 06:15:28 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:27 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:15 +0200 Subject: [PATCH 06/16] pinctrl: aw9523: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-6-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2777; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=/k8zafhiaZ5lNZ/R4/TDowhHogmpS6F04NS8uK5axS4=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLlAWn+gixCdfC0imr4N4CjdzgtOVQSb/c3U huOoAJ6Hj2JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5QAKCRARpy6gFHHX crzhD/0T0e3xmRZAZFh9L727loONGDCc4JHCYoraLqm9oW7X2GMp5bsZjgzR9lIpJTcS2lz2/50 7K1JpLe+3IV/JM3Jsuje0k5O9ZSzUrg7tWjzcR5APoxHEJVxL+esq136rwbVMiMUqJdB68n9Ohb 2as5Wk1vASZi13ROmULzSgpb3+uiQaAGkDcpL1ieFstxBzDZS34ojSuMUj2pzkeZpu4qSMsmpV+ j6o1OXBEOa7XzItsZ+wdhDVDjo74LIH6w+7ZetDer8IKdulsgwMsiIpL90cW0p0COp7+nXuI6kh 32Yb8Zw49Z6wxkQQpps9iwDAsqLk3Q/V0EOnKLPvJPtJAG5pc7lojKUwGfj1X9EFl+Q8VlEiCTE 7Llv1zB9G9hNDtLE9U2hT7toep6c0798QQ3teRYgyLVERdkGjpLfL5kdV1GnnUYUmavpJaXikA7 wfngkE49CVSCKrsvtodJj3jyvNergEk5cGDqKSa/m3yHljlRrQoDndSM/+WnK8r3LToblbH8Jep xs0ev/kWXAJHtnIhiwALmT2dtnHVAVV2m1aqDyabjB+ozDZ8lYW1USpwg/rezqcCY/d3pLF33qp Ely+uT5GKTkEsTBk4pIujiVaFHqyLFnGLWFBMvPVxOEDVK0Grf+UJ3FowqoNFYx6FUGLwXpfdlX 6Hw3h2VYdTU5O1Q== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-aw9523.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/drivers/pinctrl/pinctrl-aw9523.c b/drivers/pinctrl/pinctrl-aw9523.c index 9bf53de20be874661168ba28f64517b4325ce0c3..c844540384198f40f1142528d815fb6e4d5194b7 100644 --- a/drivers/pinctrl/pinctrl-aw9523.c +++ b/drivers/pinctrl/pinctrl-aw9523.c @@ -625,14 +625,14 @@ static int aw9523_gpio_get_multiple(struct gpio_chip *chip, return ret; } -static void aw9523_gpio_set_multiple(struct gpio_chip *chip, +static int aw9523_gpio_set_multiple(struct gpio_chip *chip, unsigned long *mask, unsigned long *bits) { struct aw9523 *awi = gpiochip_get_data(chip); u8 mask_lo, mask_hi, bits_lo, bits_hi; unsigned int reg; - int ret; + int ret = 0; mask_lo = *mask; mask_hi = *mask >> 8; @@ -644,27 +644,33 @@ static void aw9523_gpio_set_multiple(struct gpio_chip *chip, reg = AW9523_REG_OUT_STATE(AW9523_PINS_PER_PORT); ret = regmap_write_bits(awi->regmap, reg, mask_hi, bits_hi); if (ret) - dev_warn(awi->dev, "Cannot write port1 out level\n"); + goto out; } if (mask_lo) { reg = AW9523_REG_OUT_STATE(0); ret = regmap_write_bits(awi->regmap, reg, mask_lo, bits_lo); if (ret) - dev_warn(awi->dev, "Cannot write port0 out level\n"); + goto out; } mutex_unlock(&awi->i2c_lock); + +out: + return ret; } -static void aw9523_gpio_set(struct gpio_chip *chip, - unsigned int offset, int value) +static int aw9523_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct aw9523 *awi = gpiochip_get_data(chip); u8 regbit = offset % AW9523_PINS_PER_PORT; + int ret; mutex_lock(&awi->i2c_lock); - regmap_update_bits(awi->regmap, AW9523_REG_OUT_STATE(offset), - BIT(regbit), value ? BIT(regbit) : 0); + ret = regmap_update_bits(awi->regmap, AW9523_REG_OUT_STATE(offset), + BIT(regbit), value ? BIT(regbit) : 0); mutex_unlock(&awi->i2c_lock); + + return ret; } @@ -779,8 +785,8 @@ static int aw9523_init_gpiochip(struct aw9523 *awi, unsigned int npins) gc->direction_output = aw9523_direction_output; gc->get = aw9523_gpio_get; gc->get_multiple = aw9523_gpio_get_multiple; - gc->set = aw9523_gpio_set; - gc->set_multiple = aw9523_gpio_set_multiple; + gc->set_rv = aw9523_gpio_set; + gc->set_multiple_rv = aw9523_gpio_set_multiple; gc->set_config = gpiochip_generic_config; gc->parent = dev; gc->owner = THIS_MODULE; From patchwork Thu Jun 12 13:15:16 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895780 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3CF53242D87 for ; Thu, 12 Jun 2025 13:15:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734133; cv=none; b=q01hTw5P6tjTVmrjGfCQKDeV4KFx1/BeTLQ/jlr4IkfKSwwL4S7O4QaTUMALHeUXMpWmO+GFeix0WWvrq9OMuLm/m1irvyY95eNRaLjKJFV1UUeSmt6f4att/JG/2aUDPYdbuauSW/z0Bl4p76ovq4lCASTiOn2OlOp+hPP9gmw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734133; c=relaxed/simple; bh=w0yxq9GrB5wxpDo1vCkzUf7jDpYrthjvxTQ7Cy2YDBQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=r5xUTBCRd2SiQbl4pJAaEEQHzLNtvBdC5qSiQlDxwTzYl9ePGkAlAvrzUckh79IPo+CViGEeooM1V2zXoJSLLGx1gV0NjyAf22kHSFPl4LYVLpcPivPFbOvUn3XOkIoh2skP5/viD8qzxtZHPc/kXXACxreE5QbfetonsEIBnHo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=q7Gq04ym; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="q7Gq04ym" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-4532ff4331cso1829025e9.1 for ; Thu, 12 Jun 2025 06:15:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734129; x=1750338929; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=JGXLWLYyw9ZyCRb8Qq3Tm3IRZiXBZ5znvzTh5cF4+vI=; b=q7Gq04ym2orqMBi7Ku/7AwQgKHfZNQsXkbJ1YjDeFmzesRAWZSeN2MRaprBe/x7syc UQ0SjHFWykfr9AP59NZGVp79zD1tD4BXhTOsLAKelQadkjSxp9LLJ4NJ0zWpw7sUtObh 370c0gAX7BxV8/wMRuaYbYaQMOkhgpKI3vZSypmKg6Tu+I7p0+5ZrfuLUrJ6NEyzPKQl xL3FMSCkihfBiNS4EnKkldqDEcqll/PRiDhhIP+157xtmFWy4xIZamCK2onwgm6O+edB okfmk7R4quaA8FZp4ydlFFTUQkpwNkYRle4A5D6EO8lAqfHNmaw+dQ6qefphzMqjhGCn IICA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734129; x=1750338929; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JGXLWLYyw9ZyCRb8Qq3Tm3IRZiXBZ5znvzTh5cF4+vI=; b=BZdQf019cxbadBDzG2o+3LQTDj3XbM+hsROSoUy2B1DIpQVVnoKVoRKtEqdlepzNXG Z6GEzsRoBeMDsqJBltHN0qlKlT5fz4SOpdkJWLkYGN5Va79SKv/P66hRfFonqRtdCP3h Ckf2kEhfGjZfMj461yALe9uLm8VsmAwdeITCUOErCnhhzrHTO6q22O+27fCbf11mm6Pi xCPtVTgNdCnCY1HcP7IU+ZgDbfrds5/9UdwltxYEnHvZVSUR3mm9Ny3ueGS5mAcTaxsZ Zz5l+T7BF8ZSaY0oCaCsDr5sdiCX1j6qF2EsZLfb8sRPycFUTx8pdpVT+sml6phVvwAs z0ow== X-Forwarded-Encrypted: i=1; AJvYcCUkBZhNvVRv9MRPWdzIcVPP7DrZnll9o4+K/WB7kfWEAkUk9m3Wf/C/IWXaS957CEByq8T09aoIEWpR@vger.kernel.org X-Gm-Message-State: AOJu0YzPpvFqm9GHSXkrRhM9miFxtjtzUsDgA7/4iq7tk8VYXad5SqJg i9S4ZDfKJH9S7EsJDMwCLJfQQr6mLzwhYktZnAqyKbaRxDN5TH4cmCBnwuD8Wir+lWU= X-Gm-Gg: ASbGnctlIbl0LkOh3K6mqE5Rmk2gEUKiwTNEp1bLK2Gb/d7wET+0MnQfFlKza1nqiRK +UsAc4bebedED2qW3lxCe4VTsk6utHI2VM4pZO6jkLQ/Qd9uQxPi7N1wCtd6aeJfCL+EuG3Z1+G xxOZZxPlsGIb4p6/SBCznXeU0QvXIvBvZWx8nmPDmvwshf2Mp/FZXSWagyx89d41G2PZbo5OSXg G6SJYC//mftGrurdzdKxr2OqGxZWAVcj97nKGHOGi1LVS9lI5VdALbIxQm2jyXr+wiMTV9s4aT8 P2eVQOTAUYWGZwwRGsPiEj4HY4Do2ftyxliZvKxfGGAw1rMzaB4D8iM= X-Google-Smtp-Source: AGHT+IF9IZN2MS+sYW2ouGCv5DMbUlGfHcNRSDur1nJMOJwR6mhtfhHbo2K0m63hGJZ7Lzm9t37Sjw== X-Received: by 2002:a05:600c:3586:b0:440:6a37:be0d with SMTP id 5b1f17b1804b1-4532b8c2c9amr37528825e9.15.1749734129300; Thu, 12 Jun 2025 06:15:29 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:28 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:16 +0200 Subject: [PATCH 07/16] pinctrl: xway: statify xway_pinconf_group_set() Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-7-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1006; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=9Q3bm/CeNxC+8oeWa7fm99HCVraMx1u7Zl7EzaVQzgw=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLlNqDuphL86C99UAAzPjSE0SJSMbsWkwcvS zysyjdjnZKJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5QAKCRARpy6gFHHX cim+D/9Yvh9pdH0HyHsSxQ03GvnN1C9sg0macmAjL6e0GEFn8NRgOxEnXwKbStGp95OJYoTJ66D jGvdoiWzR8UqF6TssAx9xGFIRvMWV6PZ5DknaE1I8c6T74vJmoJhu93H/sDuwVLrTn+/DU2mCFA jnPNftQI2C9KH4WKcwsW6p88+VkRHVVojR71vHqEly1CvfsUDt1YHdfD0b/i7sD4U6wKsdF5Je8 dfcENemlDbwdAwAgiGY5Fh8LbLSRWPLeMG7zzrMuVwW4epppnpeSJLV6UKgrCgz/czoIVYNPyDs Rf87bKBsOdzu2II2sLqjC0FpkgsgGpfEK4Y0cgLsAHYSnu+AzsTWVPKtM7UVYZ05GRHLuxcKgXU PjLnEUr3bR07xBoubOEXOjQKtoV2wcZ5/dLlfo+MaNMT3ub0nw+qNhQMbGGSdNBqsTZcCLcG81u qxqW/N41epJAzbgUyQziedQdsAi6pZtSYrCG/HNuuBhbMSTwQTKr9mA5lODj6UwJC1c6owybPjp cPVB2E90EJN97TqqmSlpCm5As6SPt63bD+uj0RihsW/Y63BWIS9e33rzwyS8251w5U21iErEzoU pk8qWDKqMb8tuCs1JuJf5+bZ69qI1UzCzDmGyaad1Ncn318qefMNQozIPqs0Jk07IWgHAFzqn7Z KLFaSAY7+IyRMHQ== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski This function is not exported and is only used locally. Make it static. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-xway.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c index 48f8aabf3bfa3ae18f3eca8ea00c6e796faf4500..02e65d25e72911b812446ad4b90bfd611c9c1714 100644 --- a/drivers/pinctrl/pinctrl-xway.c +++ b/drivers/pinctrl/pinctrl-xway.c @@ -1228,10 +1228,10 @@ static int xway_pinconf_set(struct pinctrl_dev *pctldev, return 0; } -int xway_pinconf_group_set(struct pinctrl_dev *pctldev, - unsigned selector, - unsigned long *configs, - unsigned num_configs) +static int xway_pinconf_group_set(struct pinctrl_dev *pctldev, + unsigned int selector, + unsigned long *configs, + unsigned int num_configs) { struct ltq_pinmux_info *info = pinctrl_dev_get_drvdata(pctldev); int i, ret = 0; From patchwork Thu Jun 12 13:15:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896326 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0AB4824DD1E for ; Thu, 12 Jun 2025 13:15:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734134; cv=none; b=sjmrRohuH2jTp/DQupiK833GlXlVFyUb6+QBUMu2FADMZzSsDjIrdt2PCpxC0/RK1cQFz+5pGsMc+rl+UXu9iwk0MWlzh/dd/C3OcGQXSzyI0dhss3VpD3Uf115nHFinr4829Fomaz58ChXE8ylrI4VPKiVGkMSF9qYat8l4+jo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734134; c=relaxed/simple; bh=DCdQEcUDLTTl1/hH+Diq9E/bx+GpQ/RAE5sx+LPA2K4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=cS3u8+A6vslBkgzdyde77vd4QYnEJGTrzVSqy2XefORXIgyzNHpHDNSXeHe145GIVpGzEqz39YWQeJx8kmofExNWWLFLKySF5rOmqO6i8ZlVA6ZTxtmVAPmr3K0FMjLw2ezTVeVRhF/b0zT82x/fs4FWNTZJTDDU5MYjhtuigX0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=amNVPMv5; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="amNVPMv5" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-3a4f78ebec8so715153f8f.0 for ; Thu, 12 Jun 2025 06:15:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734130; x=1750338930; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ddos4D+qX7/1EnT+iqN5KagM9V0p0W2P3w/4kWY208s=; b=amNVPMv597kPo5AbSI2ALOoyyMalcc97LG/14gUbwQ5jPogXtEwzUcNPmLogapk30+ Nc8REkfJzWVcu1mWAzOhvjfHdvKE/5RdC44vbt3LeAQzI+TLtDU0GezCzW9Nt3IWpB9S /0smo0c9YpDRsn4JhgJD8T8VKx2Qy5nKioc0D+VDHGEeCkbbmta/T303xuDr5mxrErAP MRETg2wF+ewOqmlg6TGs5c+1xOP2OR5ce2s3Ktd8rjPBDeihPbBuKw0z1J/FCDke1YRO ooOOdzCPJmlbS64iF+C0IKBr969kWOH+ALpt9Kl79q/YV91FuD57P4/wM33YjK/VO8AU HGYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734130; x=1750338930; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ddos4D+qX7/1EnT+iqN5KagM9V0p0W2P3w/4kWY208s=; b=odkrXrCSvKgN0I24LVimG/EYCuz99jG5OeMV8homyFxTYPBkTbB/PjaCHUZYy7wbYY mU48GhDMqGIoDaHr/otm0kQmEq1qYzHXJhLkiNwhgq4OAkpFnwXxvdD/aHHiOEo3iJn6 IFFKjguX5HEa2NtMaOk6HTvFgG2JInDZL8j55T9pmtbSTP8gCd44ukF48PRdWWqRRrMX Yqawcry7M7v73LN9f+mbV1pMD3KXkHBaq/EUY3cyDWlJJ7+gz/+vBPU8EihDzUH1mnhW Cw2ESoO7xymKIhnDoL8jSb7V/piXR7XNhu7T1ThU+gmBF6rcrHtnnCCmWuu6z6AtqG4+ s/fg== X-Forwarded-Encrypted: i=1; AJvYcCWG4NIb5isBqKAJ7K0X0+ISVw1K7z1ivHcUIFDOD3oALzjqohuT8xSsTq6JhU3tz4UZ/c8xRLSePQXk@vger.kernel.org X-Gm-Message-State: AOJu0Yxa8Ce5OLkqSIVi5/KSqf75fjwlioe0WAMvSw6iO3zuMdQH5k7Q WCewxLuePHOX3Dh2nBDrwzn+CfA4ZCatw5E1UUsE6eG8/UYrxkKDeYuWf+J7oPJkATo= X-Gm-Gg: ASbGncvDj+mfwFU+dbQSu5JZCdEHWL3MUjEz/LW2fSFYvq4SGVKWM5++/cPNtlYQePB czbfwvcSMNXhmrBu49AeYw7AYHm+RZheZAv3Zl/0cTJXykGou0rOe03eC0D45M9vIje1Wjg/xcW MOndi61Iqh9ficRjdC+UA2Dcr2tP10IwBT7bcfTPO4DWX7rBa3iJT3tv3530RQKvLWwupM8DmGg VNx4uX6J5gRoYMd9wdQewr5lexv3UiaxSjhCdk1wxR227zPTEX7JoUkZTLcbm23ZU+UktkTc2y6 IRKS87iBy2RC6a6kfrgWdMhVx6x7Wz2ujvdwD+95OoYlNE3oo4Is8nc= X-Google-Smtp-Source: AGHT+IEjm92mzG6iTvPU0aaqMJR5tJjcC1kKUVwpXp7/ZRJdx/YJfK1/AxyJNMPRaZiUgO8dI0ZM0g== X-Received: by 2002:a05:6000:18a2:b0:3a5:3b56:974e with SMTP id ffacd0b85a97d-3a560694b22mr2626108f8f.6.1749734130365; Thu, 12 Jun 2025 06:15:30 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:30 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:17 +0200 Subject: [PATCH 08/16] pinctrl: xway: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-8-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1950; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=83dVwDjCWymw8bEavhDOHIM+hxScalMSI8x7KJC7tWY=; b=kA0DAAoBEacuoBRx13IByyZiAGhK0uWivjkySga8kTnFeUwUE68bmLo7YM/dAt6M6sI+TJxUj 4kCMwQAAQoAHRYhBBad62wLw8RgE9LHnxGnLqAUcddyBQJoStLlAAoJEBGnLqAUcddyEcsP/0U/ lQ+/N8a7qZ3Y1MwY7dHUJKTAx5Dfzvi0QNp3MMjqS8cvsbF+baaAXMW8ngmt+x64NWoYANmZ6bH 1lRgsQ8pUweyVIBotIf0V1huvpTG5o6r6v6jVRpqLWw6OTMlDXHFcbpZDl9MFXQm1LgD/gNqkaR pOAY8yWvG5YXJGzz5PaZOxE8Dn81QWKgYwJh0kY4qgqOrIy5eefHE0LjmtWWWvlpkU3unM5uTWa k8Rw37a2U49NeIX1dz7lM8O7RicIdC/a8YqDuRkU99HRBPnMawH93t9cSlWVVqi3rEzt9nMMlZn 8YZVHGwgC2TaJWyVzd+3zMJy2wqx94f4WFgCMk7oK98TbH6VaT57g3qyYorVUBPJ9DuYeiHN3Kz 0VXawdCFHV4VwHWhX13VnGIo5tHIFn1PCQxKz6LysoKHrvPDXKdvVduU3lAOX9d4IUiND4hUSPx 6kD6UrXqaS9XCdctmTZROU1jqUSo+jSET9EqeIsb/TfqSdc7CBrSiyFIKaTXDZNVF0WAhJA8rN1 yANcZDYks4P2EiL/bRon27uP/947tNFjIXoY4QHGBfTBfi9DSQfyCoIoLs0SbXbofzs4A74Bxgm PE5Q269V5ir7Xb+83MPmRPLy4bK/9pOzT3CdEFZfGMhdoZZ9bpHDY0j6tS3nlEPrf6rllqjrk3V U+5o7 X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-xway.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/pinctrl/pinctrl-xway.c b/drivers/pinctrl/pinctrl-xway.c index 02e65d25e72911b812446ad4b90bfd611c9c1714..53c6c22ff24d752ba66bdd8d46c860bfd9a93731 100644 --- a/drivers/pinctrl/pinctrl-xway.c +++ b/drivers/pinctrl/pinctrl-xway.c @@ -1293,7 +1293,7 @@ static struct ltq_pinmux_info xway_info = { }; /* --------- gpio_chip related code --------- */ -static void xway_gpio_set(struct gpio_chip *chip, unsigned int pin, int val) +static int xway_gpio_set(struct gpio_chip *chip, unsigned int pin, int val) { struct ltq_pinmux_info *info = dev_get_drvdata(chip->parent); @@ -1301,6 +1301,8 @@ static void xway_gpio_set(struct gpio_chip *chip, unsigned int pin, int val) gpio_setbit(info->membase[0], GPIO_OUT(pin), PORT_PIN(pin)); else gpio_clearbit(info->membase[0], GPIO_OUT(pin), PORT_PIN(pin)); + + return 0; } static int xway_gpio_get(struct gpio_chip *chip, unsigned int pin) @@ -1328,9 +1330,7 @@ static int xway_gpio_dir_out(struct gpio_chip *chip, unsigned int pin, int val) else gpio_setbit(info->membase[0], GPIO_OD(pin), PORT_PIN(pin)); gpio_setbit(info->membase[0], GPIO_DIR(pin), PORT_PIN(pin)); - xway_gpio_set(chip, pin, val); - - return 0; + return xway_gpio_set(chip, pin, val); } /* @@ -1354,7 +1354,7 @@ static struct gpio_chip xway_chip = { .direction_input = xway_gpio_dir_in, .direction_output = xway_gpio_dir_out, .get = xway_gpio_get, - .set = xway_gpio_set, + .set_rv = xway_gpio_set, .request = gpiochip_generic_request, .free = gpiochip_generic_free, .to_irq = xway_gpio_to_irq, From patchwork Thu Jun 12 13:15:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896325 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 28A4D24A049 for ; Thu, 12 Jun 2025 13:15:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734141; cv=none; b=m6RXcZ6nw93+K1pO/TUFA1CXqOo5l55eIbw+yC47bEHD7QfUzlzHFXVFN/ZxiHVswmphs5yRpGOKpRxl750engF7fnp/6XJIpACmAhUzgDdlsM/bktu3Trgp+UKyB+2SlFn+e8d5/Ze05Hw9QfGT1oJ/4QRLcJYp12qvdt8/uIM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734141; c=relaxed/simple; bh=pcmGu317gTZwAy3/dan+A6JGqZDrA3MuzLVFRN4QaD0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=OZH052BJQJ8OxwWmKAVjNdPdSNqsRkFC5uCYuP+bxz12egfLSlW8yKFQrzdBI7Lk/KA+8hXEPT9PrO3t4u7MIdE/2zJE9mmmBaur2sMlUwhAd1LJcV/hPLHiGGdQz8YQc03fBGeqx5bSMikhEsDF2dnuXRZhj+7KbHMpck/sGx4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=HuvYGx08; arc=none smtp.client-ip=209.85.128.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="HuvYGx08" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-4508287895dso13338185e9.1 for ; Thu, 12 Jun 2025 06:15:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734137; x=1750338937; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=i5mo28r4bSLhtRxKleEgwjFwDjbfBKbh8TaaOWlq67M=; b=HuvYGx08zVK3c/f/3WX9pDPKxBy+gcKUS4GKmUJR/UhgFjowWRUMc0fRK4TRaFK0gM hgou7LvzQuZsCORkTZbzz4hQMwQxigBS2pYWek0GinPut/9Hl/q6exznVriEN9vG0/Bb YuedNpQeCqNE5Eq4GV4eHeuFqCI/G5BO93WunVMj5U6fb/J5FQy+jn6Z/LmLuBgGrGMd 5Mtx/O756HKyLSZc1P0Mn9tf9WclNC11cP/IQ9Z4KUTn6pypwGG6M8vai4YHUtNI1SXA QO8C9Yfw9E9+EslzTrKhIikxwiF0jlbhs+MIEKRQAdJ3CyQuHUzDi4Cp7uCYD61zdgJU ufdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734137; x=1750338937; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=i5mo28r4bSLhtRxKleEgwjFwDjbfBKbh8TaaOWlq67M=; b=pNzWiBQPjZBcYi5eBooy8/0WkXZqYnX4fxJBXk15LDyYYWhghXXbYfuVjwj2zCp8yB fdrrExhysFIDyfOsmWnqjU9KjO7M/wB19L6nta+oUJwtw63LSp3ftR6cw70lAPXoitPJ N1iEcoWoK9TtJ3ZgHF7uBzXjKv8LFt7bx4T0+UUJ7gUql/u4ZbQCS2YkEyCSbM6SXgQD ljhHs5PdxKGfP6meLowZuw+u9lKhwfhRS30eGvbvEQ8EUwwXn/bUTHb9YZlYhdKqYwrw YhB1eg6EZMS/QJKqJwoXAVd+sQscJ1JfBoXClK16tcX4o/USkvVFAgW1ZEJIypKC3YwW zaPQ== X-Forwarded-Encrypted: i=1; AJvYcCWAQxgO1YwKAJ6MzwL+r+oGajrNAQDnvd26lcEU1gUK6pzlXuLRGLuvxopcCqo64+Ws4VZyf/euk28v@vger.kernel.org X-Gm-Message-State: AOJu0YxCEgABSUIxxr//cp321WoG5jo4JZqtaWF8KmRckrH1MHIpHBb1 PcWGpvKuu7J7nOpIeoCvyu2/5cfjdA+x6CC3Y0Y41A0Jx+XorT0oh4nXRiikrai6Hp0= X-Gm-Gg: ASbGncvU6l3sxHvnOlTJ9I3Be8UgIDwMUbPscWUXqX4T+oTa0ZSXd3V8LpGjyUQl6b/ WpYgoG14GR2dQ3wOCogOIKXLDSXHgSxganXntpbHogr/AM0j0XzAemAiVVnWL1pYLzUhin0GQww aCcBMS6Nnkalh2foRaNT0skXJ5xpr5YaDqShu1j5J966zV1mOKUOdWMzSaNH4SQ4cl0ANTY52ht U4gD5PkzH48JIsu3Q7D3XKJ5vsh/6yb+bxkDOWx3m8gp/U9VZkU52L+115vr522en01aA/jXXe0 zde5UbYoeeI+8l0pTSfT0/lDc7gwb0OFw8FEDZ2Z9Gpg+ufTdzGcKm8= X-Google-Smtp-Source: AGHT+IGBzR2mvuzoTZVHlKLwIjCRQmPWg1494+jjoGTBRb95NjkbBovSMnn1G3/kvKyntrJFTjslYw== X-Received: by 2002:a05:6000:1acc:b0:3a4:eb7a:2ccb with SMTP id ffacd0b85a97d-3a5607fa6a9mr2706309f8f.16.1749734131666; Thu, 12 Jun 2025 06:15:31 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:31 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:18 +0200 Subject: [PATCH 09/16] pinctrl: digicolor: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-9-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2000; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=OQugchdrkWqDPvdem4KQYa6SyzhpAo4iCK+GSkQ42zM=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLm65xc3XhSAXLjOYJrRx8iTF6Z3NPsxp5s+ otU7k+QhaWJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5gAKCRARpy6gFHHX cpxgD/4qN100OY/e/Uz3KaPovCgsqpm2wpUtbSiYEFHBmHRBGLuf3ySBpaIk66jUCp2HK6IC/Cu 2rqLmWG+B1iFpS4BnVMqobo6XmQjO/ARjPAV5Mt5CaDoOoTOhpLoNchztmEN9Q2JKULHtTgCqhX lQHrPhbY/9i/5W0RbV5etGdJItUlMoySsE119JLcLNM/on+dOLWMt+O3R6OFQVbA2Ax1wh27sWY 400r6LQeOyu7NOnJX3zbqfwN/N+J2L065B6bTivK6wSYzswkHHRl1mWBdJI08KlqfsH6XPgQFQw JX9YVFecSDqkoVn+ypM6aD02FboP/q3cvaaUBgxUNeZX30SJzwt52lsSpg1n+Tx4J77UuEZyss+ GFY852aRZcZxAim54v/DC23tAfXW37EDYmRMBWXAr+q34Gz7l0YcsBZVHY59CfR/16FxKPEggg/ 3iQYJRkgoOkddEdzxoZ8j7F7myunohSmcOCpD5Tu7Ycpzt2nb9gQzdsAwZZixXN2jBJxs11uOSl KaDj1iHD+UyHxRyF4uxpTztdkNsHGKodkqbgajWh9wCY7oxvodduH64VwV96QA8h2NgxXxorrg6 X3fbAgBNYIXJF2fF+V2DAOgvtIyTF7nNrlcaKu7z3fq0cycKeH7OGmyuh2ikwHlpBgY8Zj4s2kM q0e5Q8QmLCBxxSg== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-digicolor.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/pinctrl-digicolor.c b/drivers/pinctrl/pinctrl-digicolor.c index a0423172bdd6d8600fcb56a542ef498e14308968..1676cb3cc4c98755d287d3d87ba682ffc61192a1 100644 --- a/drivers/pinctrl/pinctrl-digicolor.c +++ b/drivers/pinctrl/pinctrl-digicolor.c @@ -182,7 +182,7 @@ static int dc_gpio_direction_input(struct gpio_chip *chip, unsigned gpio) return 0; } -static void dc_gpio_set(struct gpio_chip *chip, unsigned gpio, int value); +static int dc_gpio_set(struct gpio_chip *chip, unsigned int gpio, int value); static int dc_gpio_direction_output(struct gpio_chip *chip, unsigned gpio, int value) @@ -216,7 +216,7 @@ static int dc_gpio_get(struct gpio_chip *chip, unsigned gpio) return !!(input & BIT(bit_off)); } -static void dc_gpio_set(struct gpio_chip *chip, unsigned gpio, int value) +static int dc_gpio_set(struct gpio_chip *chip, unsigned int gpio, int value) { struct dc_pinmap *pmap = gpiochip_get_data(chip); int reg_off = GP_OUTPUT0(gpio/PINS_PER_COLLECTION); @@ -232,6 +232,8 @@ static void dc_gpio_set(struct gpio_chip *chip, unsigned gpio, int value) output &= ~BIT(bit_off); writeb_relaxed(output, pmap->regs + reg_off); spin_unlock_irqrestore(&pmap->lock, flags); + + return 0; } static int dc_gpiochip_add(struct dc_pinmap *pmap) @@ -246,7 +248,7 @@ static int dc_gpiochip_add(struct dc_pinmap *pmap) chip->direction_input = dc_gpio_direction_input; chip->direction_output = dc_gpio_direction_output; chip->get = dc_gpio_get; - chip->set = dc_gpio_set; + chip->set_rv = dc_gpio_set; chip->base = -1; chip->ngpio = PINS_COUNT; From patchwork Thu Jun 12 13:15:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895779 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4804C259CB0 for ; Thu, 12 Jun 2025 13:15:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734140; cv=none; b=YDKF7XTyspZtypB+9bv/cj7m4r0IwHh31hQ96M5E1JxrDmQ5kzSs/5uaRS0g9mf+84v+FhmRNRLPEGrtRMAaIlgLiRWffhVrdSjX/05BgYfbveX79J4M8b7BgpjnqbXA/0T2pTnURkRjVqbs5aSchNQh6nb45IQL61490vKoErw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734140; c=relaxed/simple; bh=Ek5gzG7d4ZwNZMLDtQPVgdgJ3Mwq+w30jIM+xzq/1NM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Qgf0w14AehMo6FXU2i8vWQz/QBbsoxjmsrXCOI74b9ogSrKNHpWgYsuvtkjK5TMRQ57piSLtC8XsAlMI1QpmeYMAPUSd7VcWglOfWNQ8P7U7CRfpLdIuggldESz6xUPH+HcudYanbkL7VI6Q0TiJJ1asnOZwnJ7OZor37fTwTuY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=IGb7onSb; arc=none smtp.client-ip=209.85.128.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="IGb7onSb" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-442f9043f56so5408455e9.0 for ; Thu, 12 Jun 2025 06:15:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734137; x=1750338937; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ip6lbynAFYtNjOClsW2vFt7aCkU5Ra6KlZGM45oXiHg=; b=IGb7onSb1drfDqPn0qVxMizoxrlhjNGgjDMyG8YQeojPpw5n6Y5T2lI/XbSBF/2fn8 o6oabitw/t/H6H+ZpCIcFWSZtiCxs/up16tS+ztbV2tkBJ6wZnUg/R5SNz/TvykeLUFK IB8xR9sNmq+xrFd904gJRMnV4YGtX6FtFcDJNSSRBLWdLmAVamxIiuH6hA1CKUQT8eM4 HVNPCqpaRIkfgvaVMAMIMuEc5Z6MeT0CJUG7np/bwcKmh0+Fsumyq/ptUvRwTJF/vDHp +CU+ItxxWPimc9y4ZQ7RoeErtna73qNZvSICQDe0dmqqLCqVqb0Idv9O81TUx2nqW7lp 3fMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734137; x=1750338937; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ip6lbynAFYtNjOClsW2vFt7aCkU5Ra6KlZGM45oXiHg=; b=TtfOkIPsPrCSM2arBpF86uMmQYKNyUuJbxHORt9IaVBUblar4pHh8z4OC+flvv80qe krB70ljrYCld02HqfJqGxJb7PemDt3TqbTYQjIfebEdjs9qtVNx4r5XTQymk5pQjGYkt 17+4SA3zR1ZBDIMM3E9tAQfRjzxPCqArma/fNUUS9c3XVISVzmBaPrrE/JIfzob4QtN0 q3iuX2utrR+haVOjtEJugU2q5yCtZudUAcy4kGRGmBB6KacSuwORaDDeJ+BkOcEXVUjT RcaXF0ACiYu/0XC/O+mOO2IFA7GaJz3I162B2CIpl3PNY24CM5OmCLTzrvicxIqYL8S7 2XqA== X-Forwarded-Encrypted: i=1; AJvYcCXoPCZw06+QAqc9iKYOpi1/xQ91aTdiB3cIgXmqdKDfnzxAh7gnYiVnVwkPQnw9KxoijoIv5J7ejFqp@vger.kernel.org X-Gm-Message-State: AOJu0YwWDTXaI4r3hfePPY/ZBT9fDmxJ8G+Jos4uyxP0bM6aKnpD/lRH G3lL9Wd8eYWHZYN+eYOLmvhg6m9OEJzIUIqz0K5dkZA6jUKTCNGrn0ASOVT8Gp0u8Yg= X-Gm-Gg: ASbGnctCHf8kUOHJ/EORima/3fgrhnCt2N5NJyOGAr7npO1ey8ZOFOuytsCLiCDLTsL BiNoSMV0u15Jik4kX0Xg6rEN/DxYcoLYo4hIEMlxU2Xp8fczuOhGCyVM72JwbLDk9wahjV3Vspw lsbuDZUmB6XEzU0vgl6Qwh7JPZbWUTQ+4X86QP1St9cbt4Y8AJnHNbE4Vs7C9h2ZIied7uJ0TV7 jMFpZigkzpw/H3RIAloQjwaHBzlleK8euwYQ3PD3WvkANTZLE1PQltgO2CSp2eHZ7VlBEs3pzK6 IJ7oQmXY+G5/UnmJcgRaEOPKLuKjqM+0Hs4mxp1sc6GdnipooInfqYs= X-Google-Smtp-Source: AGHT+IHar0PqDY1QE4EHUJ2UDPwjmIuAL/4fwnWhb7FmMh0PHKvPQEkqatf4UNuUJGPMW4GVTDu7YQ== X-Received: by 2002:a05:600c:8b56:b0:43d:17f1:2640 with SMTP id 5b1f17b1804b1-4532d30e471mr25451165e9.26.1749734136591; Thu, 12 Jun 2025 06:15:36 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:36 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:19 +0200 Subject: [PATCH 10/16] pinctrl: apple: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-10-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1644; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=1IApo4igNtXTEv/Q7vu31GP6B3n4wjJlImJTj9XqA2s=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLmWXbtvzzN20cI8pq1ql0lzItgzIAO4vu7/ Vh13Q8eW6qJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5gAKCRARpy6gFHHX cu4rD/0bUGcQAKydYhwzI9Rk/4kHLYT1KvTVAL/i42Z3N0kU9QrjzFMdnxe7jVZscx8cUH4C0RJ X9vX1NV14ApTq4Go5LEVS87FcIdp+/PFp1v6HEJ2Z5Ei+lFdiGuViKFiVnbt0k7KUdLG/biuyyM s6fFrmrS+TfsQ5BFkvtpCwMfMANjwALeIeCP4WrYERolA9GZatzEePL/ARH6y1DSXROrVeMGDzE o4QV5ertmVruQ7cQaDBYdUSKcXziz3nUk3vVU0aq3RLWz4z0jPqnCsurFZ7XWH6++JSdwl9eGDD N+p/3J/wpZDelRBqVD/AP40yjN19ZnEKYJuseqMWttjNyzv+Tavo50Rtr1Zp4gVD2ynUU57Z0vL sEMEA8+n3RvnOXutl/uFVp4NdK5eaJruYdT2+ghGilFAdEn/UcdQGWE1gTPGqvD4k2NUSGJ96X4 8T8eFub+XjCYsI4wnnCONAnuu1XYOe52wBFeUjCq93IFXlbOw+TUdspUkW9ih/YTUA985jdJKOJ tbfCEf6yADWiWCiHgKPcWgrnCh/TXoaxvooD/K+kkXUBQ/N8brH2KbqXnt1d8kVquhyNqVIBFoL w8p+GSbvQJQ3DGwzFuWGVO3aAa0fSjQI7BpFePHwFJbW+e7i/vVKozf6dqVUuhpNiqnF7WD5j5U Pfx5x5E6gbynZDw== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-apple-gpio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/pinctrl-apple-gpio.c b/drivers/pinctrl/pinctrl-apple-gpio.c index 0f551d67d482d96c7a1e4c28a6db580f0db6452e..dcf3a921b4df54250194403f06a3c1fb40110eaa 100644 --- a/drivers/pinctrl/pinctrl-apple-gpio.c +++ b/drivers/pinctrl/pinctrl-apple-gpio.c @@ -217,11 +217,13 @@ static int apple_gpio_get(struct gpio_chip *chip, unsigned offset) return !!(reg & REG_GPIOx_DATA); } -static void apple_gpio_set(struct gpio_chip *chip, unsigned int offset, int value) +static int apple_gpio_set(struct gpio_chip *chip, unsigned int offset, int value) { struct apple_gpio_pinctrl *pctl = gpiochip_get_data(chip); apple_gpio_set_reg(pctl, offset, REG_GPIOx_DATA, value ? REG_GPIOx_DATA : 0); + + return 0; } static int apple_gpio_direction_input(struct gpio_chip *chip, unsigned int offset) @@ -376,7 +378,7 @@ static int apple_gpio_register(struct apple_gpio_pinctrl *pctl) pctl->gpio_chip.direction_input = apple_gpio_direction_input; pctl->gpio_chip.direction_output = apple_gpio_direction_output; pctl->gpio_chip.get = apple_gpio_get; - pctl->gpio_chip.set = apple_gpio_set; + pctl->gpio_chip.set_rv = apple_gpio_set; pctl->gpio_chip.base = -1; pctl->gpio_chip.ngpio = pctl->pinctrl_desc.npins; pctl->gpio_chip.parent = pctl->dev; From patchwork Thu Jun 12 13:15:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895778 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 67F8725A2DE for ; Thu, 12 Jun 2025 13:15:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734141; cv=none; b=kpdKcJ5urn9AIqFeXC1vL4EBz9ga0VonElB2oEwZqB1IEwjlcOm3ikrjLYSiENFERpTRH46+sPzWgShpKeV4kgX4P80y6uoMTsVTXwV+yvbG1l52k5VIxeE+1X9VFMeaGamC6ehy4ipE2lSwiS62F7nvFqk/3yHrrGm5dAmklbI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734141; c=relaxed/simple; bh=smpoRJPqTgqboXPBnMexqjWTEKSSiuerFWJdx+xG4jk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DHO95Y7AOuVTC6CmXfAKQ6GByU2zZzZX298uKef0fmfo9r0XJvD1O5IDBwXfQTV7Ztgsfxlmt1fg5yk7gBHBXu4lP82U3dx7voJa5dMIH7AAxU4rosFzq5ZCwT2Q2cy/pIQgv2ExWpOZI/u/OhtXiX3tSj4uLD4UBfbVTaiy3rk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=K0l+CeF8; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="K0l+CeF8" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-43ea40a6e98so11655325e9.1 for ; Thu, 12 Jun 2025 06:15:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734138; x=1750338938; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MsO/RfPfPYEcGu7pzHlaE+05FqNn0lPn9H16RQ8VcEk=; b=K0l+CeF8FLmO/WW+t3AzaDZO1u2KuZ4CWJQvwsm18daE5kHBcJlg+zIt/1LLaq0QK8 WU6QX3pyI95FrHCd9oCQpnHQjYA2tyvfDthpQXkEjR9hIc9zrPyJYSJcf2e9IE3/emAb NnV/fair17Jy14R2w44xisqI+oEcC5dlZ83glFHrxkqcpp5qOMhU0z9+dUPgm2FfbKrV OsU9qOVW1oTAk9WQybJyahCWGHRXgz1sn96RcvIc3s0MllcLY6ku562BLrEMIbiJDWul KaWsf9lfDa/2BC+BeZxHLRpyJeHMVykA4mkMMJT4/yGrGCmRqixSRRztiqQGggVZ4nJk +Fpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734138; x=1750338938; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=MsO/RfPfPYEcGu7pzHlaE+05FqNn0lPn9H16RQ8VcEk=; b=f+dkaAiMooTH1+AikLrE0p7KOaRnCyEjLVbavRUHF+7nLCXrUtBQ6/q/RkgKkcfx8I dJJzDHuTqqssjgKxOtlGc458bWJT2UA1klvXoW7wtBJ0K/XAWl+cAVFXcbrF48bI2LHQ tZcy09HZDDiGlzlKu+cRpuO4nFUs7WerdJFRC+eI+uGMSPKsHgv42TeOp9ZQjMOu5Res CY/SuLmKbIcVtfRkAZvEGmuvUsyFC9KN+NzCGbyxVD68a38zK9LpzHSqv4RzT9EZ5epL mHlxFzwJRwFsSGHdrZqOR5yfU3ytMloIXo+3I0B670PyODMLFbkPilAucba7t4ZrJAKk HRFQ== X-Forwarded-Encrypted: i=1; AJvYcCXRmNX4XVARir9SBCDrLjGI3yupvwsgpX0oNIdijFFszrD/+c+K0Hbep9brpAw7Tr6y5d5XLZAM64fL@vger.kernel.org X-Gm-Message-State: AOJu0YzxePvTSdDH6R+Uf7p9wKZaDrkFXpjwYhUJpLapGxz89cnKoPMU RGgOEIz9muD4rvLBZHlBI1SzM+2hu4A9QK8ZWki/q5Xd48725KYagWC4dBo4KtMHEiQ= X-Gm-Gg: ASbGnctx9+LmZflPAhG01YoeK3IXgGgK6wlEGR5ZVqq0VBqxWU9Z11KqPYWTGFNU6/P 3ohtvFxhAnBhPZxPDgNuv6UjySb+sHT9ln0gB6l9HBfNYFo50ih07pVQV5ghTV4cs6PIHVtj2iK xYDKM79iXdtqRCxCQaJzaftuEbKzInfc8NrAij8sQ6vsTrPPmOZu6qQBvwcbw97xtOmPXSV74dH tjlF/YLrOviRgzBVPNl22vNY+SXd2LQtkngzZY5YyPc1qBrpf6wDwFKT+s1kQCB0w1MZjQKeY4o BBpiHHSrCiL7UDmIo2hJFESaPsOA/xZpqGNTlBw44K7Q8UUFV1OB9tk= X-Google-Smtp-Source: AGHT+IF/kkUZmqJMzJYib645Bdu8k5BoQYvJm3jm3K7Cxkyey72KYBawXxzfCbRcLK0/hrXvvJy0SA== X-Received: by 2002:a05:600c:3b94:b0:442:f4d4:546 with SMTP id 5b1f17b1804b1-4532486c513mr66058075e9.1.1749734137693; Thu, 12 Jun 2025 06:15:37 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:37 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:20 +0200 Subject: [PATCH 11/16] pinctrl: pic32: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-11-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1720; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=36c+wupdpQstMiyirn6O+A3D3CWfgG4Pu3KgyyFz9nA=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLmawJ7WD6umM/5yinajp8MTMUCxK3T/5pvO NJPhif2mbeJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5gAKCRARpy6gFHHX ctMdEACUmqcuKhVLteNNFsKXjhb0zQLkw4a2Fw9Tyn53Jq2evetPN4alNRZOafrKnN4EQaA2bjC rCflz4VMDSQ8DB+ExJ1dZMPiE47azhpnGrP2Ntday7+7iuRXGMWpM8ADbtGgUe/87ZPFa0KidXZ DVBXl4M3NXYsc5IWpsJnmoLdg5UyE+mW9JoofY+Mz04Oxd6n9fQ5bZeifkdllln4Q3y5qnNSjb0 cdW1s1afOJlDtHkPTAbuP2RB+eGem60QlsIWtBpMPpWxv4eitSa3ucXGPDal0PCK9fSTCstU62g lrFrlnFbOaL7ZWcHtDDFy2m24jc1lIqxy0Azvs7DQWHF0D7SQDExoX8kLuVPW/sqEt2t8AoFs3v jXf+K1tgpr5K9xn8S10zcd7MNFEPWRxFLTb1T+GPZpPJ9kW51o0pp6qBvuDUrgf6N9wwDjtloqU knRNbrM431Biml5vy6a26Ze8NeXj9D9txpKR9izG2oM0yUdAS90qQqn8d8Gl4J5gwP28GB5WU7E 7FYMcPwKodRzc69PaB4Ab4ULl+m160z7TQtvhZhM/bIK067QAAX5rXY8ZTyU/ZMnRRLh9VaBrr/ V2zPICzcxe2Duc+ES9nlLO+6hTvzZ4Wrzz2cnxnr+exUfjvlrPHT1knIw87EtPiAZVpvG3qC7BA oo6HMlDJeALdzbQ== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-pic32.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/pinctrl-pic32.c b/drivers/pinctrl/pinctrl-pic32.c index bf827ab081a1d672c440a8b4eccab539fdc215e7..6d64cab97e8116625c2efce29a3e5db8248bcba4 100644 --- a/drivers/pinctrl/pinctrl-pic32.c +++ b/drivers/pinctrl/pinctrl-pic32.c @@ -1828,8 +1828,8 @@ static int pic32_gpio_get(struct gpio_chip *chip, unsigned offset) return !!(readl(bank->reg_base + PORT_REG) & BIT(offset)); } -static void pic32_gpio_set(struct gpio_chip *chip, unsigned offset, - int value) +static int pic32_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct pic32_gpio_bank *bank = gpiochip_get_data(chip); u32 mask = BIT(offset); @@ -1838,6 +1838,8 @@ static void pic32_gpio_set(struct gpio_chip *chip, unsigned offset, writel(mask, bank->reg_base + PIC32_SET(PORT_REG)); else writel(mask, bank->reg_base + PIC32_CLR(PORT_REG)); + + return 0; } static int pic32_gpio_direction_output(struct gpio_chip *chip, @@ -2118,7 +2120,7 @@ static void pic32_gpio_irq_handler(struct irq_desc *desc) .direction_input = pic32_gpio_direction_input, \ .direction_output = pic32_gpio_direction_output, \ .get = pic32_gpio_get, \ - .set = pic32_gpio_set, \ + .set_rv = pic32_gpio_set, \ .ngpio = _npins, \ .base = GPIO_BANK_START(_bank), \ .owner = THIS_MODULE, \ From patchwork Thu Jun 12 13:15:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896324 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C3BEB25A344 for ; Thu, 12 Jun 2025 13:15:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734143; cv=none; b=Aok9QLPu1BPIFMn/pAVjYIFyn08oCFdCSe8ZqNLfiXiRP0oSn9PZzpeo1ura2TEN5IS54UjttORnWIcgxNGaBHtaRmOzkgLxpgNIfjtGYfAmTON4ckSyJa8bO5cmCmyHLYF1obmki7BT58hR7T3tWZyzXA+lspc0DqiJ5VVewBc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734143; c=relaxed/simple; bh=FlsshZr2pWaa66OdHrYeRpFA8c2RWzue9ZDkcpQOBWc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=JYdklvmmD9vu1fd5EOo7cZkLNKYfkl7RzKiO4482Y7lZTUKK+Splo+s4SWTVA/fWDpnZ0B9bYpJ0uw0X4n8gmcTpo6ndLPcI00KnANvJsxw4KyEjIBEOSpfM3iQer48127Caes2TejbzeUFUIJZM7fbiEdI+FN6EmJpB79PjG4o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=w7BSmqN+; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="w7BSmqN+" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-451dbe494d6so11736545e9.1 for ; Thu, 12 Jun 2025 06:15:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734139; x=1750338939; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=3kdCtMGqd8snTnoQ+DvH1UQEd/O3oxtCQF39dSuJ39Y=; b=w7BSmqN+JGvYmLro6g0UGCAusPV5vZ32lCxMOv8GtIxVX02LDyXFh1TTQ0f9SBXo2x y5b+p8VA41h3NnziWOW8SmYOf0wGCffp+iCPOFJi6kvkAKcwFzc9M5oCt4ilp7dOsLRt S+nO/WcQtLaENpK1StOTdKpJH1hL31q4/BRGbMk666fpIez2GuHis1K+GNUuusnz7zzc DYn1QUOfWiyD5mHlzEkQXZ+gC0rqvozHNkdgL/ZrN4Yy/ydPxBRW8uGnWHlaeGVxNVSi UwjJLgF6/6VNbS6H91LY0mENgC1crmnua4tla4dq/I/YxLojD7zFXNF9IWnVU9AKOkPc 4g6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734139; x=1750338939; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=3kdCtMGqd8snTnoQ+DvH1UQEd/O3oxtCQF39dSuJ39Y=; b=ZvpmfAUQENd3kSvQzYiQWe/C6X0u+5FhD0O2MUapevwdJ7bp+plNhZdJLfxlTYtkMp w/eqMNf3qzLpyWbZPX4mOfWQH/aqJVi8gb3+B4ODaCzSYi1QMB1KpWIqAb6BIMDsEs4H Fbovv55jxukIWdu+qReSWvkcw3lZv1hmVSJ9bq/VQ5PSXcGKJ7y+bxn5jUlp+5Csaq0S ZYSdgqGlhcxlNVs3qbiRUcfW9nYnK9N3yVdKJLM5LqVy4uPtnXtG6SUMf6f8w9WnjU6K ZSbIGSVzuYi8dzN4Nl1WeRyKxueQxtV6mhRZtrskEP3ViN67CO1gRSpk4b2Zfxb2Ej/s QCmw== X-Forwarded-Encrypted: i=1; AJvYcCV1YHjlcbPniGUtIKwdrsv9QJOpcpy1xFxIsDp6Zo8qoZolgfxI2blLvk03YjqElUyO5uBHzrpLcuoI@vger.kernel.org X-Gm-Message-State: AOJu0YxdYi/gZ2aXVA+41k2Sohzc9IFVARlsiVtvqyV82SQ5oyYCDqSz 8uAoLvolGu/H+kO8ta5+sat/FbTYNOr87nbmJTmLYvkkhN6xoZjaLfxDli8Pvh/eJ5U= X-Gm-Gg: ASbGnctBk8LyN7N4rMT4aNwf9N0gP9JR/og+fgTLoab39pRV5S0QWmE3G+57knxH+22 YwbO0b1I9NJfeaUeMLDu3f/eJW/hfGJdsPKtmPl51Tfh1A0FoPxLGRFG6Pq/A2r88tX6hv4SwHa j2zyoTiaGDNtBs3AkhLBcv8ogOm+2xgJPuUFT7P9lCW9B0lOWBmTnk3mYfnYGKGhps5Ib4eP3dY 9j6oYXzJ04fsLkFQYMeDYdRmkoboQeY6EKpgncunLpBW/jQNXcF3dWSz9ZwhKZNNytYPyUKBvqc mOZ4ILeMNwvOpz2nf1FLU1dgRSCjCrGvBgn1vsJsSCvdAjoqU0M9Prf0t6louXqFQw== X-Google-Smtp-Source: AGHT+IGl8eW8WnL+cIAddPc5eM66HwVHrNHEeYaEVb5oP5iPREXvfn5SVQ58c3fSGe7nsIDDe/S61w== X-Received: by 2002:a05:600c:1386:b0:450:cfe1:a827 with SMTP id 5b1f17b1804b1-4532d3299f5mr29713045e9.31.1749734138978; Thu, 12 Jun 2025 06:15:38 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:38 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:21 +0200 Subject: [PATCH 12/16] pinctrl: spear: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-12-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1988; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=Quh2BKoDNlMEGO9ydmQRx8uUPC9cI403NRhtbznDNiA=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLmiiG0NS7y222qXdi+UK1gYs11zyVNle3ll 7695Du5fQuJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5gAKCRARpy6gFHHX cjHTD/0QOLxxD5opxxXzFfIt89ty+lC0lghLR0yZYrf36EMOnwkkHtmGCsjxHfOnT0/73ea88cP BravFuaTrO9sftxm8SdI2BAQv37NtThvkmJF3q0Qbfp5EFXSC5ULs9W/tIdqsYQl69+EvGegQhe CDjFPkxd5m2z+aag5lFhpTsTXq3C12nMbgyUA1ycXYTndObv0TbV0zFIYxHnJSMGdkLwLJPQFAv PG9wjwBT4L1FzNMTYG98IdDTisCAYEpKsTMq8P3CCHB865IaWhxMRR9b3jKlwY5Da6ChTYY95F6 VQOHgQrVo6tGqs4P3E+5QmY9RWj20w8wfoGxN187W2WGFS1maDLwfTNRfq1MhixKopBADFwMZfS +9d1ElgztrQhn4tIxBfl17thgN/j5PWlirVM7vscR2L6GvE+PXplIUVYURjbz2X2ZJFuSY8x0hy GHFLJqI2/2oid1h7jUJJQAPVsJzI9h6fagO8QlxKFWnwQlFieKd8fp7J+o3FimezPmJ1iDZ+Q7j AeVH1PN8imcKdY2m+hCwoK4XXTn9Fd4fPAFYRSO8abRFNbd0PcvXzmvsVENjXQlaUTyblsm6txX gxDyv8i63/C/D2iK2iAr6J77BMI3gKO9NsdJLWsU3y1BSLFNzNpe5REp2gyzX1i7MgaAL1bA2fS 1tzGhBqfBBHQqOw== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/spear/pinctrl-plgpio.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/spear/pinctrl-plgpio.c b/drivers/pinctrl/spear/pinctrl-plgpio.c index a05570c7d833d9b8268989f2a6e54e1873d20de9..e8234d2156daa5ada8adff5848ee4cf136257c3f 100644 --- a/drivers/pinctrl/spear/pinctrl-plgpio.c +++ b/drivers/pinctrl/spear/pinctrl-plgpio.c @@ -181,24 +181,27 @@ static int plgpio_get_value(struct gpio_chip *chip, unsigned offset) return is_plgpio_set(plgpio->regmap, offset, plgpio->regs.rdata); } -static void plgpio_set_value(struct gpio_chip *chip, unsigned offset, int value) +static int plgpio_set_value(struct gpio_chip *chip, unsigned int offset, + int value) { struct plgpio *plgpio = gpiochip_get_data(chip); if (offset >= chip->ngpio) - return; + return -EINVAL; /* get correct offset for "offset" pin */ if (plgpio->p2o && (plgpio->p2o_regs & PTO_WDATA_REG)) { offset = plgpio->p2o(offset); if (offset == -1) - return; + return -EINVAL; } if (value) plgpio_reg_set(plgpio->regmap, offset, plgpio->regs.wdata); else plgpio_reg_reset(plgpio->regmap, offset, plgpio->regs.wdata); + + return 0; } static int plgpio_request(struct gpio_chip *chip, unsigned offset) @@ -579,7 +582,7 @@ static int plgpio_probe(struct platform_device *pdev) plgpio->chip.direction_input = plgpio_direction_input; plgpio->chip.direction_output = plgpio_direction_output; plgpio->chip.get = plgpio_get_value; - plgpio->chip.set = plgpio_set_value; + plgpio->chip.set_rv = plgpio_set_value; plgpio->chip.label = dev_name(&pdev->dev); plgpio->chip.parent = &pdev->dev; plgpio->chip.owner = THIS_MODULE; From patchwork Thu Jun 12 13:15:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895777 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 02C58246778 for ; Thu, 12 Jun 2025 13:15:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734144; cv=none; b=rghwTu/JLvnYTYvSz2hoq4hazU2VGMJcl6clDVzlyKIEQeaAVLqwBLaBhy5lBYp6zyv3X5cFecLstP3lSgWMYYH9D4XVj87JAmUz4DLMb01YlhP6oL9P+4nYLaMNEkpfRqUUGxSZPN+9BtCk9+125ZY2FB+CQHJItcUJuCc4Ylo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734144; c=relaxed/simple; bh=zp6d5z1sYxwWEw/wzKNXZwt1zjGFDbts1CmdEZq0nus=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=bXT8zjuXXOAqPJlBu0VxQIbklNZ0jimDjuko8eT59NDoHfCYvuUoD4A7Jrrcv3OOVXVgWzVbXwoK0mLSi1vYHpdEHlcdlfXS5a5mJHCRsyQuPhMBTIRfDgVn8TGDhQ8t8XLaDlQXv/vG8qM80uy2ghckBik6SWStlENfzKmwU64= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=bXrkb48K; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="bXrkb48K" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-45024721cbdso7995625e9.2 for ; Thu, 12 Jun 2025 06:15:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734140; x=1750338940; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=xRVP/g9ETBrQ7ivNn5p21D3d98uF7eL3W+bgcNUMLx4=; b=bXrkb48KkkSVvRL1fIduwlV9Iul7exkzSy2jUZ2IG2BpKquYn8FgeUhUoQn97ZlxR2 qiaG+TQIboy+JPrDjNDVnSMjoSvZTzlex1Ij82+GTQvJIBURJWhBhVDj++GSQNzwd1eb ZwVDxBL3BDKafJ63eNjrvz/qjH0gkHA/+UI98rNARVQhY9bK8yhJG0Xb7o4dPpq4EDwl GQrNMfjCypLMjZIdLIPc6Eb6NM11wHMRx5N/0KJcBPeJHRrM7psgW3od2QdSMvhdQZxU Fddj1wg8ZZPEZIK13MYzZxmxE7rcbcp8l4Nv4JlUVrWAW/VEbpgchDcGQDX7nOOFL1VX iTGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734140; x=1750338940; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xRVP/g9ETBrQ7ivNn5p21D3d98uF7eL3W+bgcNUMLx4=; b=qupYn1h0Te41nxVFiIhJLh3mRV4fWeCc9IE8+vZh8sVQICJtFHtN3FgO2x4Yieb8t5 vOJw6mdNvQgt2cSAtS6eaquDxkTPVYNVK0BJ8uy1V6kZNILBGAXO2jQm+UaHi0aiPTxq GpoMrod2/ZQjU9uWt28gJHXEqJLEqT7LhYvq9TmyuKiFTYnFdmTE+Mc5pNlwjBSy0SrE 0wzE+7CX0HpfUZmqFLOcf2wST+gt/Dd5rxEzzyX3uoOMwmw4i/3jIUOZW8DA3whRCgrI 9ohAyrBFEzmZi44n+K6LPPW+pfndH/Q58mJcA/L9JTLl5efMMew827ECV62TPak9g61u Qkqg== X-Forwarded-Encrypted: i=1; AJvYcCWHkBs0nSj9owOKzQxFuhRbm6qelMNxy8TpWZ5x40AL8T609LIWEC8GhSp5jBEiuOUWpxOp7O522R2O@vger.kernel.org X-Gm-Message-State: AOJu0Yy+dx4inqR19KhQvwo3+bhGM38Snklc8aKvb79zZXThui0mMgib 6IsV2OOeJveS6UQfEPGzunzcj0Afv1A0rCITrPoM70vwgTrN0nE+J2w/iHXcnG6nyN0= X-Gm-Gg: ASbGncvRcBXQKAWT0WB3D6AM64/4SDZf5nqow3sZPOtoKD0iCMadUQrk+IgyKAKNmuN upVTzGEy/45PK6KVPGTsVwZjk0/FdLFlnMjZKJ7efhgQAYuzcNJRshiQZiskuisEUThrRZ/iTzz MDC26FMTnpMxJsOI3VzCdHQnRr3O2QmNw7lYcCq/tAIZrGzv+Ww4AwfmlNr2Yl08+BXC/AJMCHj Io4lyyy1tQBx/BfYdsEGnQSRJznjGjpgmv3rr8q5mHBp+LEoyY+Rzq13K270spZ4ihN/tvr4xFz 3RD3eY34gL2qR9HHdatr2+GHwtLYVJd706cy/TKgGiXiQjHfXDh/Tik= X-Google-Smtp-Source: AGHT+IHSRKRz+S4AqZCA7nk2lBD5FvLjirlW/aLzXrlkeH/hiH8EEnGTppCPiobvVp5rFO/8nRH0ZA== X-Received: by 2002:a05:600c:6304:b0:442:d9f2:c74e with SMTP id 5b1f17b1804b1-453248cadc7mr61464915e9.23.1749734140174; Thu, 12 Jun 2025 06:15:40 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:39 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:22 +0200 Subject: [PATCH 13/16] pinctrl: keembay: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-13-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2154; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=uiWkBcfY0fL2/5gsJ5RtTL76wdCKi/XJJns8EXZp1Uc=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLmMUTq/R3HYvt1qPLJCXHDLlLJ2q7Mprw3y q+tW19o7dqJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5gAKCRARpy6gFHHX ct8fEACqt7lUq3+S1tzRy8OrX4O3CMfw4nPrYnVysPwnIX5aR7rCUP9il86P5OxnBe1clhRmwf9 HoPniYHRVUQF6YnI9EAGIDwhSUum1jbEzozs8EuWZ7akwxiY2lALTFQUB7pAw2aWqDQurWwASrh BAPCmHKNGQdiW4jPkj3dLIslFjsYCDyb4a7d0h7Rv4tHvOUJjwZTpmSlxh6jQhmj8/OnfF4FmSD A8SD5CTEpda8DN7KqBB1fsTu8o8/TRNLf1sa/DJf4UITLByVIfbtYMhfr/RbkMTCOa1I/Dca2/P Y8qdU4ZwwfmOTHnc/lA2TI6ioK5BvuhNtqvz4Cb1IEgG2Zlg+c5asL8lkSQySfaQCuWVBZ6+2Hp 6pgnwuG0nSOllmDlZu6Tkzrd1ImxXcHfrsa02KtJ491H2I3Reth1gL1neP6RR6Nl3UDYNrcfUn3 VqyShql609Nvgybzi+iTFSjRiwiPqG2yqgild3NQGG4yXE8kfSUys5UhBTzPaS5B8+VvpC/ZsAX xJfJ0KUdYCJumelmLmj2UUWKfC2pS9l4NPnQ9EqQOSiTnderpXlz7vJKNljTZW5Xz7ra3xmDff3 VwRuV7ZIQrTn1lzp1FlY9U4bZ1Finj92YfG99YcWHQ0kTqN/Y0O3a7ioGWw4qxRszN5QakMKHOF J+HEqcwBsnDzYvA== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-keembay.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/pinctrl/pinctrl-keembay.c b/drivers/pinctrl/pinctrl-keembay.c index 0d7cc8280ea2168e69cf3d0ea415f6d2389efd03..622000139317e9dfb95e9a76f2478366daebdcaf 100644 --- a/drivers/pinctrl/pinctrl-keembay.c +++ b/drivers/pinctrl/pinctrl-keembay.c @@ -1188,7 +1188,7 @@ static int keembay_gpio_get(struct gpio_chip *gc, unsigned int pin) return keembay_read_pin(kpc->base0 + offset, pin); } -static void keembay_gpio_set(struct gpio_chip *gc, unsigned int pin, int val) +static int keembay_gpio_set(struct gpio_chip *gc, unsigned int pin, int val) { struct keembay_pinctrl *kpc = gpiochip_get_data(gc); unsigned int reg_val; @@ -1200,6 +1200,8 @@ static void keembay_gpio_set(struct gpio_chip *gc, unsigned int pin, int val) else keembay_write_gpio_reg(~reg_val | BIT(pin % KEEMBAY_GPIO_MAX_PER_REG), kpc->base0 + KEEMBAY_GPIO_DATA_LOW, pin); + + return 0; } static int keembay_gpio_get_direction(struct gpio_chip *gc, unsigned int pin) @@ -1231,9 +1233,8 @@ static int keembay_gpio_set_direction_out(struct gpio_chip *gc, val = keembay_read_reg(kpc->base1 + KEEMBAY_GPIO_MODE, pin); val &= ~KEEMBAY_GPIO_MODE_DIR; keembay_write_reg(val, kpc->base1 + KEEMBAY_GPIO_MODE, pin); - keembay_gpio_set(gc, pin, value); - return 0; + return keembay_gpio_set(gc, pin, value); } static void keembay_gpio_irq_handler(struct irq_desc *desc) @@ -1480,7 +1481,7 @@ static int keembay_gpiochip_probe(struct keembay_pinctrl *kpc, gc->direction_input = keembay_gpio_set_direction_in; gc->direction_output = keembay_gpio_set_direction_out; gc->get = keembay_gpio_get; - gc->set = keembay_gpio_set; + gc->set_rv = keembay_gpio_set; gc->set_config = gpiochip_generic_config; gc->base = -1; gc->ngpio = kpc->npins; From patchwork Thu Jun 12 13:15:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896323 Received: from mail-wm1-f46.google.com (mail-wm1-f46.google.com [209.85.128.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1A35225B2E4 for ; Thu, 12 Jun 2025 13:15:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734145; cv=none; b=rL49yc6q4MGIh4/rN0nNVB2pUorOWoe8OCfb+X0PR8w8I21Ti0c1bB3Y7QSowf4WMxcJLxwDozZGfZUNtL1iVn8UoEDoVCKZ4+FF4A0XLQenZOdS89q1/4jdQQH+8P6zBLGfKZujrR/DtgiQCoRfsGR8i/LB6SFO55GTrpxTRSE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734145; c=relaxed/simple; bh=85haVVGK9Bcs+IGMqbyClCBY80jPljKCDJVYKsTGn2c=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Gcosaum5Yy6IxNe5227N8PKzi3hS1+DNJ8uQ9+POc97wx75DKkeIPhYqmK4dj1H1901zlnhkejt4/IYuUsi4sNDdpNgqpw7nm1KeIdegM+Y93tVQ8EI38Z7OjZNS7qzrNWWAlJMuhtcdHVbU2A/KC65GfLoFFuYbePnnzeDv8NU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=05vyQCUG; arc=none smtp.client-ip=209.85.128.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="05vyQCUG" Received: by mail-wm1-f46.google.com with SMTP id 5b1f17b1804b1-442e9c00bf4so7994945e9.3 for ; Thu, 12 Jun 2025 06:15:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734141; x=1750338941; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=SYW0+B04sInxcyPw7RL4odLCTvi8nL12cX8+rIobfUQ=; b=05vyQCUGCyVUL21Q7WB8NDDudjeoEL6HPiqb/WLi3fxYKzlAgD1oo18WLEXLHHDspR LhG+QUMzc4BY9LuApIRxlLdZm9q4kol7WjId6pxyo3RGUwmlJH5md4YeZ73J3Ekr+4G/ bJctj5NWXCC2y8E3V+Ie6u+WHaUEUksofsiGMDpt+cVC/zALChWN+Uqy6Ix2PyBZz/6j ORNci8Ax5DWEofd1qKqXvSZ0E5SXtHNQ+tYstx+qjMwx2DMiPepIn1Ep4gUWFP37CpJE mrgD0EzbbmTwHwAlvWuLdvvq924d50aueM8AVxYvtU4URBoZPQg1ihpLMmx+5+S2RON2 pnJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734141; x=1750338941; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SYW0+B04sInxcyPw7RL4odLCTvi8nL12cX8+rIobfUQ=; b=jqXnXFcjByPggpUWHYLOtLWZa6BD1g6/E3Luv0fuU1NelvoBmJWHPU/oZNbO0LyAuq gola3FxoqKmDgu5vdgM0XiYYw8iut9PKYesED61odsuGxVYXfZJwNnFq8/rv6LzO3RoA 9v4VjHu5XL+bpja9IUEsSo+MAjlsRUgTSuUryqNvDzMcG+h07L9g1Iz9Hwb8s/ZKaa8/ jJBp3JtvqGmE6eV/F6wUpHtasOem8HPZideDTg32L/gnjVQkc3J+G0gl5ZGNecXni60H shXKwuvXGz/k+15DIgMVuPHgOw892KclIIFKdUmtfHXD7Q/eaJEfqiwNFgnfBkNaxVAu gmyQ== X-Forwarded-Encrypted: i=1; AJvYcCUNOItr2+qo/bsPPzV+j9qyd8D6Pkamc6i3XA6hOUn8ZdrhwmX6nrX03cdg0kmIjGQwIS6WJlcMpvVH@vger.kernel.org X-Gm-Message-State: AOJu0YwPCrYZ52TaXQqFNdKJ/vqR2klQy6s5vl198s1YFUkcZZcbpee9 CLdg5CsO8Tlu30NShujqTlcXCIYXg9W/Ynqr1o9PwRxSeZznRTbdXAIcra9Nk0GKesM= X-Gm-Gg: ASbGncthW55xrBtW89yA5c56z3RGLu2Iyz+S2IDyAoHdOj2wVgZP3RfyP2VZ93LipaZ 6n2rSl87m2I5NqxF7q+jcBfd+JqelapPff6xiDU5pWbLaKskcN2imweA3lIWYv+EIpusTdAowqa /tOFIbHGQc4RwXzVjUjXXowtd2RZ3MKCcySAZvlLGVO97O6uTaBsReL3gMPwuI1a3ctCZzvKvZb JVcHy4y1W65kC3y98C06UqOjfulms95akjExD6/wpzPge2N9ZvN3iFzVn+fJWeNR67Ve05SULwu 2qF1VMTQd3DuhkDxFlLWN1F9oMiCMyL9vWimLKFlUta05DNGQDcLSs4= X-Google-Smtp-Source: AGHT+IFpZ9SXfAbcx9UYgsykf4kQVZZ7hDQIXoDecEBolRJ+pnmV+MNhvJktOJmHqFQTsif+GRyCYg== X-Received: by 2002:a05:600c:3586:b0:43d:ea:51d2 with SMTP id 5b1f17b1804b1-4532b8c2f2bmr38451605e9.14.1749734141385; Thu, 12 Jun 2025 06:15:41 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:40 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:23 +0200 Subject: [PATCH 14/16] pinctrl: sunxi: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-14-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1804; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=nIb1ERVNbKJsSviHJxgUP0dw0VlXNMpXQSUn3radzBU=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLnDirgrB5LayZ6bmpzTb9vnrrWDTKxpwuY6 6GuRs6+7+OJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5wAKCRARpy6gFHHX cjGPD/wNvb4j//YoAIysQkS1R/JAVIQzuJnhYsUG1hvGNE0K/Tj2zywZqHvUHGhwy0MMfY4/IPv ipPG/UE5TMpaAfnUreWMO+6gxvRyBKLPdnaXZFXBx84htL1YUquIbzHMfT+cuIwtCnRANTxi9So I+0/W4Ejq/+fTnRec5gzwllQdA+qwsjIuNLHh2hmROmHFzBhnrngKJdRyiYjB4n08hMg33DyloF R+WMLG5USaOhzS/cXh74PjDCSNab71daGuxVVLjx6sNQm+imFmYb4aAZaHP34eGfUMMInd9XzFM SSClmvWkl4TCO/CRIH9s2dok8DZbUhgNwR2461FteN5+z4/wJh7owtQ3RtsRJeriFnI6cdJNxiH O/cD4XHBvqloqHTCEeD0KHICq0c4Ka6xKLZZaxo1/eJAtBPvQDdS6VXDNjKjxr4hpedktowfEPL 8dzAoSnwDri+1MvHu82L2GIfD+vUzkRxP8AhYFQlINlgKg+FSNbV8utKdF7Dp/RvA0AyTR5AygF CpNuMQSY+P7pgwk41Y9dwdiFlxRy30of81JlYjV6kdmBpB17p+eWnhfObkprJ5ndF6wY7DM75ri VViJexUTAn0tAMuSEcLxSC3FqL/JUCBI8vRA1fvCu2BIbzgjhzOLrsorSrBLj10sqL1w8ZimBia 8eHbwXrot5DU3sQ== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/sunxi/pinctrl-sunxi.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/sunxi/pinctrl-sunxi.c b/drivers/pinctrl/sunxi/pinctrl-sunxi.c index bf8612d72daacdde6209b0b5c84e010ef3b846c9..9a94c5276828aca51212f536400897e447c62ecd 100644 --- a/drivers/pinctrl/sunxi/pinctrl-sunxi.c +++ b/drivers/pinctrl/sunxi/pinctrl-sunxi.c @@ -955,8 +955,8 @@ static int sunxi_pinctrl_gpio_get(struct gpio_chip *chip, unsigned offset) return val; } -static void sunxi_pinctrl_gpio_set(struct gpio_chip *chip, - unsigned offset, int value) +static int sunxi_pinctrl_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct sunxi_pinctrl *pctl = gpiochip_get_data(chip); u32 reg, shift, mask, val; @@ -976,6 +976,8 @@ static void sunxi_pinctrl_gpio_set(struct gpio_chip *chip, writel(val, pctl->membase + reg); raw_spin_unlock_irqrestore(&pctl->lock, flags); + + return 0; } static int sunxi_pinctrl_gpio_direction_output(struct gpio_chip *chip, @@ -1597,7 +1599,7 @@ int sunxi_pinctrl_init_with_flags(struct platform_device *pdev, pctl->chip->direction_input = sunxi_pinctrl_gpio_direction_input; pctl->chip->direction_output = sunxi_pinctrl_gpio_direction_output; pctl->chip->get = sunxi_pinctrl_gpio_get; - pctl->chip->set = sunxi_pinctrl_gpio_set; + pctl->chip->set_rv = sunxi_pinctrl_gpio_set; pctl->chip->of_xlate = sunxi_pinctrl_gpio_of_xlate; pctl->chip->to_irq = sunxi_pinctrl_gpio_to_irq; pctl->chip->of_gpio_n_cells = 3; From patchwork Thu Jun 12 13:15:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895776 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F399824678F for ; Thu, 12 Jun 2025 13:15:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734147; cv=none; b=CqmofaMfGkIxtD0zBnzn9rKnsi8gOQ87qpDwiA2euGmlzu+Grkzwtk0fbtaoYq5Jz8pagA50FjTd+VwrTiyzzynnHZdzGlP6jQNxnZVMgxBUL4OTb7rgA6cnWenoAQzYFDs8zSKCEKxAg8bs8jT0wj8ADDWAu6w+rQ8oPx5ynEU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734147; c=relaxed/simple; bh=IWzffuaXPTlvob8B44ZyI57c1fGd+CDDEQUCn3zwQG0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZqHnxj2Dgg4chZEDi7ju3nCHMclDgs7A2O0XXVrjx9MIOJmlh0GHrsj+rK5sNdEkaEoWCEANffdYIw19D39mQXoyD9Jkp2N9Al5DgukltUjd1tS7o3yX0tHnAzVZ19+MSlcc1qJo911kh+zlq4cYuEEi3V936hXqvPKQPOqUYYE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=jwZBGck3; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="jwZBGck3" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-450cfb790f7so7044985e9.0 for ; Thu, 12 Jun 2025 06:15:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734143; x=1750338943; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=OeMSlNL5v7plT+CdY2CAH8xRYdEmWgOgE7l1ThlWmy8=; b=jwZBGck3QiGQeRKkTtBppjgmqbB6O8uaZV39PuQZsoRJuEQEYYLsgd4xDpRdsC+WZA Jem2I9PYzsbpfdk1v50S48zsq0Ga0BH1Gop4vfUDuAX3ld1a83ZBqHE+mV4BR0pKPuNc MSWGlQg6pSvcSrAicZ3VXoVfaxr6IrMaxU9h4l/ddEyFMhoyww0+jnaywhSGZObRZTNT AZHCBHyROU+nUZ0ikiFCmAggOVweq79cdcm0xEArK4k/nGikiMne7JFokwWLfUJs0kL4 Q2PQzweeu+zGpeMbpCiSA9mlBLgSMQkbxxBdvNkgrY2vr4gDA7KZPMiFicCnjRWv4g+m T0vQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734143; x=1750338943; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OeMSlNL5v7plT+CdY2CAH8xRYdEmWgOgE7l1ThlWmy8=; b=nbDKv/HTdl7eUwd25ChHBfOOSSRlfnwBhN4C5hoynwwRUrhikkrJrY9nvKpwL/8aK8 uqCJL5rpNCJG+YoyJGYoPx0mj36ingZ/8sHxwwzPykBhHGdIDT0rHGKiokpIgVEUKfHZ qgcVB4U7arR/IUiCDNpXB8G9OFLcrWeuOT6aINfNiTyhd2yHClcpxPgWmBfC5KH5DEvI rCjbgzLTk6p84zVGNyM/aJX4Qf7LsJ61sTcez54FaNemInfBhbev4sF2CqWYc4ug/+01 OlG8eASg7BuELx3ts4d5uE+jtrOE0MeiN0vEZ6K/kEx+3PuiRkUh0W3/1u6BsFkiYbLG iMBg== X-Forwarded-Encrypted: i=1; AJvYcCWQJwMn8gZROiEY7FW+OjFnmvqqVgVI5izVGPpOORunTpB6078F81mhsvh8n2OcQDG4BtqiZPv7U8Mv@vger.kernel.org X-Gm-Message-State: AOJu0YwGOFk1+FAbnGHS7ji37jtAVIRSgOX1w0Xf6dkg73/2RubFZoJ0 xb8QdbmIM7fMKhlzYWnbtjsfiB4qt6957bFBDXnZUeF00KpMqw9FB9uNrpKRD90S9Gc= X-Gm-Gg: ASbGnctAI0Or2+xhneDKzkfegfFPVOtotxn236zscB7Eux2Jz0cEpcfOmo1pNS8gb2a B998t6oKE9DQfju48gg6cjiIeEO7VAfpH0q8O2FOV5GkPk7svUJZ6L47Q268ndMjpXscP6sNOix 9A5mMOLtHay1yxfBUE5hykoE2h4eCejbFKsYvigRXBkl03i325JDu8WTC3+hUi92zVlBM9gAL67 ooWxV5kIw4tTVqYapodyCzui4qhXxsJIluudGhskF0XqcUwxvNl2OnGgY2oBRC+p2z3datSmHt6 m3R8qg6ltIVgffuXowptPAN0G2PyY0IKqn9xtm1CW7dW6BDWi4Izx6U= X-Google-Smtp-Source: AGHT+IFfk2JNW5+JEjAS4QGCHFxkYolSwpuwPG6mz1wRQQcTjF+58a/OlpyQ8Y8a8U04LXW/Ou6tzQ== X-Received: by 2002:a05:600c:c04e:b0:44b:eb56:1d45 with SMTP id 5b1f17b1804b1-453249a1500mr45370855e9.15.1749734142562; Thu, 12 Jun 2025 06:15:42 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:42 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:24 +0200 Subject: [PATCH 15/16] pinctrl: as3722: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-15-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2237; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=fTmHKsEYrKTNyxoNVzmb5kuSXiJl4noseL2AUv0JQqs=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLnJzYKUbqVxOzi9/0Npp9vPvP9vlYV0ANF5 rwLBnERYbWJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5wAKCRARpy6gFHHX coSBEADHmODbD8gx++i43lj29SdaYhpz3ZGxHPtzCbpJM8Weriq+nhM6eLcP4+WvjNqshPbwg/Z n20SACuNZZz+S0+l9KGgSHzYrmCVuUEiF3DNl2mICCeEspJAxClBAGUA2y0Q2TpEV2SLxz2I4dv EtAY+a2ESleqNVnppDCes+DFZ5n5aP6K5VD8Hg7J2DLFYtNp6qHprkyCqcTsOnSb/nuo86E8kZF zDRkzeByIrj4z71f8Y4fLKzDGxq8krDXvhm9SD73b2UCvw6QXQosqznLheEz4+Z9CPrd1jKbE7r cDjRGZ920JYxOSVQHMaipi7GJZsBW/MOU8qI7Ox3HnQbMfHtmliB1rwYB4AhffpcWWuFNw/64se CQfZuf3MI8WBKHUHreGVFrkLIfa/dDyNdag0niMoHvtUfXOc5gdwfyduPuuRAwPEoy/gflanzKJ W/ZDOKFh3IPWI9cbeaKRzvYbJ4CV2OjtB5/gz+V9t7+aIOwlEnHvNhmcYT47t9LDEBkuOasfyVx HOartloAzNYSN3ytVG9SxzobpHzoH5MHqHi1q6l1kLVt8GWdw//Pyxa4Mi/53e/YSBADF7E5j/d icL7N29K4WriyHwptsCLWDZn/Wh/0d2q55xgK3Mjnea9jsemXZ7KgCgdZb4MJD9JsUi+EPUMeDp qq668JcQgjxm84g== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-as3722.c | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/drivers/pinctrl/pinctrl-as3722.c b/drivers/pinctrl/pinctrl-as3722.c index 0d8c75ce20eda97627aef773342a0b63ff6114a1..0c7777a7669fe60d7ffd15263261a9f4d5d7b659 100644 --- a/drivers/pinctrl/pinctrl-as3722.c +++ b/drivers/pinctrl/pinctrl-as3722.c @@ -471,8 +471,8 @@ static int as3722_gpio_get(struct gpio_chip *chip, unsigned offset) return (invert_enable) ? !val : val; } -static void as3722_gpio_set(struct gpio_chip *chip, unsigned offset, - int value) +static int as3722_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct as3722_pctrl_info *as_pci = gpiochip_get_data(chip); struct as3722 *as3722 = as_pci->as3722; @@ -484,7 +484,7 @@ static void as3722_gpio_set(struct gpio_chip *chip, unsigned offset, if (ret < 0) { dev_err(as_pci->dev, "GPIO_CONTROL%d_REG read failed: %d\n", offset, ret); - return; + return ret; } en_invert = !!(val & AS3722_GPIO_INV); @@ -498,12 +498,19 @@ static void as3722_gpio_set(struct gpio_chip *chip, unsigned offset, if (ret < 0) dev_err(as_pci->dev, "GPIO_SIGNAL_OUT_REG update failed: %d\n", ret); + + return ret; } static int as3722_gpio_direction_output(struct gpio_chip *chip, - unsigned offset, int value) + unsigned int offset, int value) { - as3722_gpio_set(chip, offset, value); + int ret; + + ret = as3722_gpio_set(chip, offset, value); + if (ret) + return ret; + return pinctrl_gpio_direction_output(chip, offset); } @@ -520,7 +527,7 @@ static const struct gpio_chip as3722_gpio_chip = { .request = gpiochip_generic_request, .free = gpiochip_generic_free, .get = as3722_gpio_get, - .set = as3722_gpio_set, + .set_rv = as3722_gpio_set, .direction_input = pinctrl_gpio_direction_input, .direction_output = as3722_gpio_direction_output, .to_irq = as3722_gpio_to_irq, From patchwork Thu Jun 12 13:15:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896322 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2DCCF25CC61 for ; Thu, 12 Jun 2025 13:15:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734149; cv=none; b=L5yRc3LIKpMmczfXkXYrhs5Mlj089c8gYkcCzH3M9YpHTv9Yv5CtckPkZziuhYzHn332FrSVwfwgC7BE8dsQGGIEF9EHxr0Vl7e6mXKA8iTFHLpe8jxIgYY1A+Da0TKVE74h8FQVaQohFWFJr+H9TVMJvM0DRHmz7wtKOqguw5Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749734149; c=relaxed/simple; bh=5pAhRcgO1+EuPNUIzj/fNOn0kIQ0uu1BHYpfqb2hKXU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=K2lJ3yR36+1ujYH9+ENMZdp7yjnJmuyNCy07QHnf0zN0pI/FrntIKLkVOkyX3wxwU6J+i90KJhjy42+QDwo2f28naV5wNgnAufKAaZDoE9C8Dg9m3ZwM3tPXJemw079BaZvUh9aQwrJyyEIkaKF5/Xr/UrY3S86sWT5UcXrVFKI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl; spf=none smtp.mailfrom=bgdev.pl; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b=SkRfxQcO; arc=none smtp.client-ip=209.85.128.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="SkRfxQcO" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4508287895dso13339225e9.1 for ; Thu, 12 Jun 2025 06:15:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749734145; x=1750338945; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=qXOeSoBKwd4+haJ3JvgSLXQF+sIOgqi9Fow9Bw5pk0w=; b=SkRfxQcO1N/t5cF5Y+AM3MYCuN/m0UyqrouPoxAvqKBtRV/jr719Qt/rh+NDUWuSPd z7kda4YcRP/rHxhv042q4ThNUWI3HFa9fgIpWmRSulpAL8T4UhQofhBzdU+ZnQtM+FBa /WGBjNkcg2HKOgW1JGLXVpHbKFwLwi+AJ+e8mjE9JPD1QctuI6wdQ6dP+aHeXmPOFeuz Tt63j/SgbLlnHie3yKYPXgCHMB7ubWfZJFWBYZh/rmjEN8RtEY3SG/1sNR+5mUdt5zlm 8QnlOHT/7h911rDwMWfSRxSZgEbElPkutSJsIcSMDRHgTTVaMFvZJvhvOD88SMa9QCMl zTJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749734145; x=1750338945; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qXOeSoBKwd4+haJ3JvgSLXQF+sIOgqi9Fow9Bw5pk0w=; b=PlqlBkNd3kXdEbbpmyaiHqNFjDt009f1hmi35xg+amLtveJ8dRcLL4fr2LQG85JW6K tXabTRvf1cey8N0ssY2bbfY1XycJhe/0cecLfQDP2BFFXv/VRbGVOP7S4gUdKtQpjcba Nj1rkgspQQWq93385FHdSIKWyyjvyX9iOMmhKA2o06EiATRtHMfH1O1RXacnHtCpFRQx uv8+ydbohfoCvJ9aycOBMjU1lNvX3fwDvMDM/QssI0PEAhP6WUMnqG94yM9AgtdluBQh oYfAFCtgeUQG8cQTT8HpBfS5IlW87/Z5S23p16e93X0aV9YJlRmdYYSmSqO0sGny5bIh WixA== X-Forwarded-Encrypted: i=1; AJvYcCXm63UtsYFoo/BdPnKtY87p7a9KiFb2q2N9QXSGJjrW5fPjuuQGE/o5Cy0McJXYUYZ6IC2m0E4nVRb5@vger.kernel.org X-Gm-Message-State: AOJu0YxAXCkpFUwsjE3PoDKQUNNoAScRY8/3imW1SdBF1WFzBRKNRlui Z34LV3yGQWMWBmu2DrtfY9qmsDhV3M69g6G5WLvXXIqEi65VgPGLEOSTpUCN0VV+JGo= X-Gm-Gg: ASbGnctQ+1znEqhXgK7yWSGWh1ElUje+NSpWy3RTJaxOMpxVcPmGZr3YRJswABYgeOF 6Z8pvi4mEaLquu0iLlLEx7vcsXDrSZACyVZ9/F4DaiQrd56OBkJCpP8+rQePALMa+4WzipUpRx4 OqONatxKgZTY2v2zp6NoohWJWiiqEmdm59xbXVXqRI+R5S5lpM+Wa4ZJr/7Q+fqibyN6Cdm/+ED c6XE06WUNJflvz3pQFz/VjWSK81l3csD6iodsNbMelDIkbmYoGNI0eloNSDn4iRzcwDOjPczNUe WThPGpSAFsefwqR/rsnto+TXcM7hn7v86vu889U2r5HG9tYjN03J2NU= X-Google-Smtp-Source: AGHT+IEnpJ6Q4AZ8oPyYmaUzcDZGuReMq7lbniJezZBAPId2TYPV/p2NnMGPvdWDp/pysd3sY6Avhg== X-Received: by 2002:a05:6000:1acc:b0:3a4:eb7a:2ccb with SMTP id ffacd0b85a97d-3a5607fa6a9mr2707038f8f.16.1749734143769; Thu, 12 Jun 2025 06:15:43 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8b99:9926:3892:5310]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4532dea17d7sm20619795e9.10.2025.06.12.06.15.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jun 2025 06:15:43 -0700 (PDT) From: Bartosz Golaszewski Date: Thu, 12 Jun 2025 15:15:25 +0200 Subject: [PATCH 16/16] pinctrl: amdisp: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-16-556b0a530cd4@linaro.org> References: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> In-Reply-To: <20250612-gpiochip-set-rv-pinctrl-remaining-v1-0-556b0a530cd4@linaro.org> To: Dvorkin Dmitry , Wells Lu , Linus Walleij , Bartosz Golaszewski , Patrice Chotard , Support Opensource , Baruch Siach , Sven Peter , Janne Grunau , Alyssa Rosenzweig , Neal Gompa , Viresh Kumar , Lakshmi Sowjanya D , Chen-Yu Tsai , Jernej Skrabec , Samuel Holland Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, asahi@lists.linux.dev, soc@lists.linux.dev, linux-sunxi@lists.linux.dev, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1643; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=ME7t3PhskqpuTEodGS0joNb0JvX701e6DVecRBqhzik=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoStLn8MZgPfXtIzTahad3jneTgIaic/QOkZGyI SGVy3H/f3GJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaErS5wAKCRARpy6gFHHX cmoRD/0a+ixlOlllZnxdQ3IwiZjofhYGTNWzylVmVuilwkjx74Ac0WhwgNOgk5uCmmF2NGn47Lz E435pD4buRkFabuolt2o9TL8wMz/0RDBg32C9bjwz9fezuo6zTgzSwOjEh5cRd647C84rRl0KWc YHu+TOoz2o4uLlV75o3nQTqLM3l1jFVZ3+VSt31kn1Zavk6/31+PgUYiSjgTIsxlT/Gdps4VRtH wa/aiQgsQsiFHtCM7iv1U583mqmt1fyy3DcZukPCRuIyWOIBMDvi/gqk9leFU29A9h0srxVog+b 2atd0fQ4ad1OubxK41SjP79dMWtYCixfFespdF2IrwaZrVN03CtyobPyUeIkzlYqy+j+XcVocDO NjjWKIYMEYJkruZsAOCp6RnA720dgwIaPMSHCb9EL/t1FuLODewQSnenP5FeWSZaiw/y0s0HNWE u5xsj/scBHbfLBGmsXxgSr7mOO9hzjyNxYki8z8+PdJQHiEWRq0F1D+FoXcIHUqQ4YrQK5Dawhw aQuOGjzWqV36vIoUCA26atb3hiQS/pIePKqxAtnWOg9w2ghzZB8deMzBPTGDg632LEnQYGzr5eV 2jZt4jkSxcUYLzAs2RNnPoiDh546HzSIvkw36qrNT2LHX7VrBQPLJOJDSZX0Wb2L7MnN8xnEan/ UkQWDDMnqWN8GnA== X-Developer-Key: i=bartosz.golaszewski@linaro.org; a=openpgp; fpr=169DEB6C0BC3C46013D2C79F11A72EA01471D772 From: Bartosz Golaszewski struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/pinctrl-amdisp.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/pinctrl-amdisp.c b/drivers/pinctrl/pinctrl-amdisp.c index 9256ed67bb20e9eefef6c6574f1b60d71814cdc0..2e706bf8bcde0536b9e09614665d46130e12c406 100644 --- a/drivers/pinctrl/pinctrl-amdisp.c +++ b/drivers/pinctrl/pinctrl-amdisp.c @@ -117,7 +117,7 @@ static int amdisp_gpio_get(struct gpio_chip *gc, unsigned int gpio) return !!(pin_reg & BIT(GPIO_CONTROL_PIN)); } -static void amdisp_gpio_set(struct gpio_chip *gc, unsigned int gpio, int value) +static int amdisp_gpio_set(struct gpio_chip *gc, unsigned int gpio, int value) { unsigned long flags; u32 pin_reg; @@ -131,6 +131,8 @@ static void amdisp_gpio_set(struct gpio_chip *gc, unsigned int gpio, int value) pin_reg &= ~BIT(GPIO_CONTROL_PIN); writel(pin_reg, pctrl->gpiobase + gpio_offset[gpio]); raw_spin_unlock_irqrestore(&pctrl->lock, flags); + + return 0; } static int amdisp_gpiochip_add(struct platform_device *pdev, @@ -149,7 +151,7 @@ static int amdisp_gpiochip_add(struct platform_device *pdev, gc->direction_input = amdisp_gpio_direction_input; gc->direction_output = amdisp_gpio_direction_output; gc->get = amdisp_gpio_get; - gc->set = amdisp_gpio_set; + gc->set_rv = amdisp_gpio_set; gc->base = -1; gc->ngpio = ARRAY_SIZE(amdisp_range_pins);