From patchwork Fri Apr 25 09:08:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 885106 Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.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 0672C238C25 for ; Fri, 25 Apr 2025 09:08:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745572120; cv=none; b=CRaO4o/5Tn+tUvd5CcbrSSX9TkBzLtZitAaEv1j/7FyKqbDa5v9wmERxkahc0/7ITI3OTackEATBvk3SPLlO5hyrCh+tXhOLTKr+p8dTonSjjvqpthvYcJLn8RUcTmhpQRiXjI8UAO9F5ioeyTfnt6I2oufkgHkI2fZRAwhFM6E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745572120; c=relaxed/simple; bh=7S2gc7URb0PsBGnyXfc3DFJmPNy7b/D4W8R2OlvjVzQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=cOlCJai4yiHCNC4Sqc9DAV75QVAKGYt1DmdLgdOyjpXVVlyxuBh6qPJIsumBJZRUBxuEsqi5UkSZgBSYppXP9gl43ZHiFfRffa90+i+7kbR3ckNVkUejz+8zA6XS1+HOL/XgF1RRR5lgPxfTj0Jaw3vU/BU676KjM+CgdQTyZGQ= 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=bleeBNnS; arc=none smtp.client-ip=209.85.221.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="bleeBNnS" Received: by mail-wr1-f48.google.com with SMTP id ffacd0b85a97d-3913958ebf2so1537004f8f.3 for ; Fri, 25 Apr 2025 02:08:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1745572117; x=1746176917; 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=0YD/g74cE2O1wy020/OZZAa+Y4T4rc7dR9EtJbvV3wU=; b=bleeBNnSBR2zpbd/GXqXLkA8MjBbnecuVfbJsdF7sqfjetP4QKZhGsqPkXLpMYE7RK EQELdh7ryuoMcwXvq952f2uGBH6Pb3RU7I8I2fVov2oYzzgdPrTLDzaYWuZ6QvJs4VOJ KhOtWvuwTlSBchPMC+mZ383Np88Nz48Rxr6+ocrp313A4wgVUVKcAUj/BCjXHrdwxZ0O 0ZY66EvksaWLK84MzkXAd0lOu7JqjLvLpHuZpa0Y0XFLFwtXv5maRcxe78NRghdhxmvh ffLRPsqIU5gT8PmFG/2DhhrZ+e+OXcKexKt8UMOimlLYqBanrwzvY8CDafVezxCw/zRy 9XiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745572117; x=1746176917; 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=0YD/g74cE2O1wy020/OZZAa+Y4T4rc7dR9EtJbvV3wU=; b=NXMBbiqHco4IiwEbkBU7d3BKKMwMe5xex5RJW3vx3Vnu+DPL5TBb3OEUwrx5EkUp/+ 5EqLvDxig0URkSIqk3a3TYC95ofNgxNsRFA9x97osp2qCjrWJ7cF6YByVKtdBxdqxrLN lJMIk6FOkHmKD6ULX+X1EnQserd5447j24BbQ3GItSb5IC0rsTqvnxZkejhADruvj6gB l2QDdRbaA2HYm5PnMrvWYEWVXbaGjbSU56G3xKoX+DBHeRBPAEvAq2OTlvzOFKAYUmCM oYkSvPyo33UM1ByJLmwToEH5XqXxxYZSN50FaGxH4mowtTGgg12vcRfQnRg8LC8k1J9t 4ucA== X-Forwarded-Encrypted: i=1; AJvYcCUF49UQVN7kDm6tAMQSdGXyww//DBFid2iGwJjuKYg/EtxAqUhn/lxfcMeDBD6pq+w5E9bSV5p4SRjh@vger.kernel.org X-Gm-Message-State: AOJu0YxMtMgPT/KDXNJO77L0FwhYUv+loUhA98f7gVRSrSuP9FXAeizU ydbI58NpL3HnIOK4g2gFszU9O3K1SjG6XPTmiy4sJ46OZJXPlbCM0VbgyeqAtog= X-Gm-Gg: ASbGncsg970dZFKb0EuNRvtu2n7KWqm+lJLbF/3bBODsxB+5s7mYoxcNsOCGHj2v+L3 tCeY6dgjMN12pbAyJkjSTdhE4PtjrOPU2EU0tVMAMOEfChbKIhOfGtE0LKjmNncpH4X6R2xu9fg dGvtQGG+TtyKPV+kLiPkA2ecqv0TSxADDDfXFgeio9GQDSCB/BQ/cPw2GPCmW2448jQTIspeWVO l2o4bZaVLladGzrfXklYoCQE60GjKxUnqVX8rHpw554BtSr8ATsuy1GIQXQfamT/t0V3AvFmw1F 8o+W3QgJ3e0cAhAT+owbeHlx7v5mhbdVcg== X-Google-Smtp-Source: AGHT+IHCuNyR95UNYI/0izXIj1LRfHaEgDOIQ/KPvSJKLbV9AkvjEqEphDC9iCD0AWLDlHAVDkvOOw== X-Received: by 2002:a5d:64eb:0:b0:390:fbdd:994d with SMTP id ffacd0b85a97d-3a074e37904mr1224414f8f.27.1745572117165; Fri, 25 Apr 2025 02:08:37 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:3f35:2b31:c543:726d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a073e5c9cdsm1688909f8f.87.2025.04.25.02.08.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Apr 2025 02:08:34 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 25 Apr 2025 11:08:29 +0200 Subject: [PATCH 1/3] pinctrl: bcm: nsp-gpio: 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: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-1-6b8883d79b66@linaro.org> References: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-0-6b8883d79b66@linaro.org> In-Reply-To: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-0-6b8883d79b66@linaro.org> To: Ray Jui , Scott Branden , Broadcom internal kernel review list , Linus Walleij , Bartosz Golaszewski , Florian Fainelli Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1564; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=N7w6ShEtcDx0natQtD0HEUwZNrRzhk1g4hjaD5jLcAg=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoC1EPQG7Og0taBdL06rmp2Qd0XqgRcsFeRFXYf fe9a9gFLc2JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaAtRDwAKCRARpy6gFHHX clLhD/9631+iD3Op/0JhcmhzNPwc36GbPSCVaPf9M9MHPdntWvM1bDIAYa23+LE1y7HKaCnoA2C vqCHsaNy2PZUwRuPg7M6COErn7z7+BXKuGLRHmQoabLd366zB8+maN2WdoAZfUOjpPEBrDvuv9D ckhVkzuRNCuVd0LbqoXhFKtJZngA0GRjBXgbN/bBF0+ewM3B/zFdkBZgizZwaATSNjFzs+8WhKa ahubiibF7/JrllxjeyvJHhvwRbk0itwqtmCT5XRLMvTnZZIidHv3EAF1rdpVcD8sLq2+IM1/sj2 9aBJteBDYzOLrxAN67IU9ZOHHmWhwdoOHR/85ADJeF8eyrhtZdOwcmenqwoF4u7KfSndhhaRauA Jl20Z1Jvf97+mOJMMV9T+tcVaWNYe9fuK3HUgZatheNov9YjPrdalfdLhEzcsDlv3vnYJNWgws3 wr98ZphmsUhsXhTK2PdTDPp4kNJnj1jAo/xxd/8wEubhn6rP/vVKvE2YKjLPbgCnsaO2KYqvMNy Ee+3d6aWvp9dq5Q+XNLbrroMe/U22i37w5um5akrVDwUmnwMdJQ6JvVG2ql9sKmBo7zIgjZDv9H UeQ8p2ve7Q+VDL8EdifOCZ/+MzdlHrDHQivPB50M7JsPuQA2b2gPsmcyKG9j/rHlO13W7+MKKmZ COdKenIJr/yyboA== 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/bcm/pinctrl-nsp-gpio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/bcm/pinctrl-nsp-gpio.c b/drivers/pinctrl/bcm/pinctrl-nsp-gpio.c index a96be8f244e0..b08f8480ddc6 100644 --- a/drivers/pinctrl/bcm/pinctrl-nsp-gpio.c +++ b/drivers/pinctrl/bcm/pinctrl-nsp-gpio.c @@ -310,7 +310,7 @@ static int nsp_gpio_get_direction(struct gpio_chip *gc, unsigned gpio) return !val; } -static void nsp_gpio_set(struct gpio_chip *gc, unsigned gpio, int val) +static int nsp_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val) { struct nsp_gpio *chip = gpiochip_get_data(gc); unsigned long flags; @@ -320,6 +320,8 @@ static void nsp_gpio_set(struct gpio_chip *gc, unsigned gpio, int val) raw_spin_unlock_irqrestore(&chip->lock, flags); dev_dbg(chip->dev, "gpio:%u set, value:%d\n", gpio, val); + + return 0; } static int nsp_gpio_get(struct gpio_chip *gc, unsigned gpio) @@ -654,7 +656,7 @@ static int nsp_gpio_probe(struct platform_device *pdev) gc->direction_input = nsp_gpio_direction_input; gc->direction_output = nsp_gpio_direction_output; gc->get_direction = nsp_gpio_get_direction; - gc->set = nsp_gpio_set; + gc->set_rv = nsp_gpio_set; gc->get = nsp_gpio_get; /* optional GPIO interrupt support */ From patchwork Fri Apr 25 09:08:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 884622 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) (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 851B223AE66 for ; Fri, 25 Apr 2025 09:08:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745572125; cv=none; b=qBD/HFSGVm5v8+EsrMOymJh5qO19A3nBE32JjVueVIO8Yw2AE7K1OQ8n1X0jlQrh1W81edJbuRhu2KOVabdjL6htR39NXrCAJIldWQ8dShOLuNBmk8M1Y6e7mMVhWp06zyTlGZB8DQhwwNAktTtPi8hRyY8noxr4uwiA2uRSHAc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745572125; c=relaxed/simple; bh=EulgghYY9EmhroqWoYb5VtIek8zQSwFJqay015WfuEY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=AuHRhgW4Jl56PYawcYS3Kw9/iOrWsPR01UTzUIfs1JXRxaTzGiEsrHLbN3ypjziAEuhQZqj8sSONlYrIX4dCdAVIyODuH/a63Cf2bu0NZAMesK3Ae0V/yPspFtF8+Yept0bkMVTaIX+A4fYo2VWPLwje7XegWdHCumds543a7Ms= 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=zsK6zUoz; arc=none smtp.client-ip=209.85.221.50 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="zsK6zUoz" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-39c0e0bc733so1796001f8f.1 for ; Fri, 25 Apr 2025 02:08:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1745572120; x=1746176920; 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=i+v5BXhhKCYYQq4gpYTRiJk77N1zu/YeJY08X8KspxQ=; b=zsK6zUozVmJ9/TzYyWWuW3pE+QnJogQLOwddHjZAHMMMH5+Hq8o1OgolIDnGci6x02 8QDCgKXcHt4F5pZyQtNVmTHVUKW0aXLwfdJwnVq93f7pD1fVJvZyiMz/oLv6BgT05icK /Jq0KTdg3yk7cMvO/gQ7yiSinWinym3cCOo02K5TE8xPGI44tTf7RXdqcgc0Jg8BIZli V3ju4YLzlO7j6keGVZj41xhRKA+6SPDbqkBBERJt2WYxxEiLZGaoA9DRxBCBo7eYrC0a obntM/IoH0nBO4ggIvJFTcdSQfzsriwjqwrmfKH0OWu+Gg0iBNoVazZioaMTJMtG4CPK GUkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745572120; x=1746176920; 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=i+v5BXhhKCYYQq4gpYTRiJk77N1zu/YeJY08X8KspxQ=; b=kXnuf2D/cvG3M/8Vta4ejP9KTaOtki0ys2vC5TSWFe2Flbm1FpqxmmK3QeWabHRm5T mVZv7lb2HxGR3m3oM3YfaN4aOEWzaB41bSilffbz6LcZvMbvsLuoxZ2e8N+jvjtyLYJk X0RHkbEuhTKja9pCaQhFoizvSV4FmhpQq+0XYcy8uozDmnMiYUk2k7ciVkY0pvTp3f/O aFD0XgEgWPZr0g15U08WPPF8znibh3JZeIYsXLIHzKWBWtN03XFrXov7Neoyfufqu3qc 0vhqYrNZRjgNoJTix/OTAoRsw2lTuhVauu9Uc15sDSoG8TnCFO8itEAaV93G+zhmBTcJ n+gQ== X-Forwarded-Encrypted: i=1; AJvYcCUIgxx3Wqah/Pr7BmF+5vs2U/2zx43gfbXYJphd6RbCc1nb0JhMHPSy3kofjT0F056h2XgMJs465dXh@vger.kernel.org X-Gm-Message-State: AOJu0YzTZOp2pbXw68PGcn7maWiEQnXrpKVx47R5dLT75STSXgMnBiTu P1ZdfoWKXecmfPhx7lwvn839W2DYlpq3Cna2FreIFPzwbL2PoPDM5NxZWE1Hmgs= X-Gm-Gg: ASbGncudFzO/WVzwZth4cKL2mNkrUSpe2/CsukgFwMxmcg6a49SJJ672tRrni9J3JvX wVZoW1rmIIQ36G3w/dkumaJ4Q88Bw9QkHwVE0314IfHzUzFAvlYyWw/cV5CbCaIBZ64kd+tp8x2 g60NYlgbhazAFeS18RFcTxSi0TpTyvJsyLlY+Xql8XWoLY72I/XdgRD70zmoUD3drhF+6f0RYXB bW6mywKeKXiljI05Y0WP/RyUG8fYWmnasgKMSdEmKSWKLb5cnYMfNGeOm4XwDZ2wFAS0uDX6Z61 uTTc8Rcl2XrrSy9thoyBKRCJ8+I7QY4YQQ== X-Google-Smtp-Source: AGHT+IGN/vWTOOdJRbfqbsJsmvKshGEv6l4OK38T6XOXQRPgrvaijj8/T19lKBfroHc+Nolpyh8Jqw== X-Received: by 2002:a05:6000:258a:b0:391:2c67:798f with SMTP id ffacd0b85a97d-3a074f154f4mr940261f8f.41.1745572119738; Fri, 25 Apr 2025 02:08:39 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:3f35:2b31:c543:726d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a073e5c9cdsm1688909f8f.87.2025.04.25.02.08.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Apr 2025 02:08:37 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 25 Apr 2025 11:08:30 +0200 Subject: [PATCH 2/3] pinctrl: bcm: iproc-gpio: 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: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-2-6b8883d79b66@linaro.org> References: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-0-6b8883d79b66@linaro.org> In-Reply-To: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-0-6b8883d79b66@linaro.org> To: Ray Jui , Scott Branden , Broadcom internal kernel review list , Linus Walleij , Bartosz Golaszewski , Florian Fainelli Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1648; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=AXQvvsX8aRsrH6IPjREq5g+zCKjZWUt9eQLSBi8qPzM=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoC1EPM33kYpK05MSkPsmYPi2ni2pXZtF3jM//c +NOmi85KW6JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaAtRDwAKCRARpy6gFHHX cumND/9NDhDagbohLKHaVpqHCjYGMLprtLl0fswvDQm6vOrfMCMczKAQ2yKRl7wy5ssQj5ExYFe iiVWum+9hVvTsheYOoQLoLDOjffUKPtRs9ottEeT7W6B6aZkqLgvgEPKEtHz33pDMuV7Vl8LPBy +Tl++w9ixP4DS+7Pgf4Fb+DnkSHy54Jb471i+LP/buYQCS6/WaR/a7xY9t+dSvlJiF7aMogsWs0 8UIS7KUOTGNac1pMUj1vjNMbbazqmx+yi/LUGMuF9FaUTo95pxr/ngMR7h6P2l/ECYWoqxx4HeO InOzcRHBGE3WSpGP+5Q2nedWWs2+J7hNaQZPDgPSwMPcmnofz6CIkOonLbAg1MQsqUU0flDVYER cZlwX7FIMeJFNWN5SbyAsdz3z7rtBBdO/0u7GHxvTyKWVZCd7cIsTgiCqQPdE2HwexPtMMRux89 /QTTBhM0/BB5vXgdwxJTfF8FahYkc03S08Ew3ICCKoXjMsVZ5xrN+JOdnkacZLCMcJ1ftqpBwLJ jnb4yRvayiA+5ErzzEwSDs+3zgAGe/AAWkB8Uz/hjvTELKCMVeT/4vwIBgJWUPQgTHdHgwF1lci +FJVQIkoPiUp9l17NDejpnFAFqgHqY7LXJ8VA0Pvpo1JYmdQdLWOQbTmsdU4uoCXKV299Nn9a6f GRikUNE+adMm9qA== 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/bcm/pinctrl-iproc-gpio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c b/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c index c9a3d3aa8c10..1d08b8d4cdd7 100644 --- a/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c +++ b/drivers/pinctrl/bcm/pinctrl-iproc-gpio.c @@ -390,7 +390,7 @@ static int iproc_gpio_get_direction(struct gpio_chip *gc, unsigned int gpio) return GPIO_LINE_DIRECTION_IN; } -static void iproc_gpio_set(struct gpio_chip *gc, unsigned gpio, int val) +static int iproc_gpio_set(struct gpio_chip *gc, unsigned int gpio, int val) { struct iproc_gpio *chip = gpiochip_get_data(gc); unsigned long flags; @@ -400,6 +400,8 @@ static void iproc_gpio_set(struct gpio_chip *gc, unsigned gpio, int val) raw_spin_unlock_irqrestore(&chip->lock, flags); dev_dbg(chip->dev, "gpio:%u set, value:%d\n", gpio, val); + + return 0; } static int iproc_gpio_get(struct gpio_chip *gc, unsigned gpio) @@ -863,7 +865,7 @@ static int iproc_gpio_probe(struct platform_device *pdev) gc->direction_input = iproc_gpio_direction_input; gc->direction_output = iproc_gpio_direction_output; gc->get_direction = iproc_gpio_get_direction; - gc->set = iproc_gpio_set; + gc->set_rv = iproc_gpio_set; gc->get = iproc_gpio_get; chip->pinmux_is_supported = of_property_read_bool(dev->of_node, From patchwork Fri Apr 25 09:08:31 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 885105 Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.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 7851E24166C for ; Fri, 25 Apr 2025 09:08:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745572126; cv=none; b=B0xQUWWSiPJSquIdiwDzck7xMhuKoWCTFdB+a6RvncbUaikdrsgqHjhMl8njIsmrEp/X7UyJtil4w3qMN51kf/Q3JM56VPUggecvq00ITtE4LOhFlHjdSq0bTeGj1sT5HajZlaWIBZwxRwQDzyzLt7c9w07eSWBpwj3DMgPCu+I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1745572126; c=relaxed/simple; bh=pTrO24s8MBFrLrxR0rAOPN04paVQyMBRmX9Uiybwymg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=iBoFxwLmDgNFNOH8Y54XQXxT99ZLoxP9yPc3Wz7H2f3LySQR+y0IAcz9dxi8emQYUPW+cbmqAYElDNRY3jc/0OlRRMtK08Cd5u3N8vwIwInNGYy+/M4zjlIC/aU6aHCQPiw3O+Zi2lqK5fNRn5N3B/cJDoRat0VLWDFIQIHqNME= 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=dX7yLZpx; arc=none smtp.client-ip=209.85.221.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="dX7yLZpx" Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-3912fdddf8fso2081720f8f.1 for ; Fri, 25 Apr 2025 02:08:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1745572123; x=1746176923; 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=dlGoB/HUZg4yDoY5L3zieLRRojeVT0zMfmIc8y47oNU=; b=dX7yLZpx/Ke+a1SCtrfOm/tvDE03LnSYSxKZG+qjihgkIVvBoDtzkwlYgsVDY5ysgv mqVrKoTJCGfXBCPUI/kewTHpXWgyFnWPxPWXiOL0SQuGeXufJiAMXEhmVzMwTJ5othoj YR7nd1LC8Cr97hSvLIfIy0JI6HZ4R4JBIa0/mxl8E0Uox/1a7vCvAVUQErSagrFxWbOG e+oNV5KbdCw7FkMLcptjWNjumWbTMLUYKnaqqQvi6ylbEtW/QhZMQxmnQTqGvPgJoHZI oZPjctg47ljpj6qkqlumHx52qcNstSy6L9SmU3HI756f/z62y+YTHjOqBNXACVUP4ZRM hIuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745572123; x=1746176923; 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=dlGoB/HUZg4yDoY5L3zieLRRojeVT0zMfmIc8y47oNU=; b=nbUWgpoi8S9sVBauobR213EvqME9J2HmMGUOyhm83PyNxZXdhpUR994fEMyneXN3jI wZvJZ8elqtUkGHWHK+T+i+EimPx++w70j//nc43ETcQd2qP+FmNikgVV7If+E8IW+436 XhzcYismkeXEqLo/mHEoeEAcWszIH0tzGxRTUKGdsdbFxQ2J2kFpE934qM6gJtQ0la6M A2SCFdegO3zF0hK67rtjmvf30ardc7DjN+ejjTkNRruw5LmX5Juw16p40Oz5mo2x7u6g qbATHqQPDu14UxmaV1KQW/OMlEEd+cdIR6jjTxIxC31j2GQth0HhCtcKaYVjIUOMlNCX xg0A== X-Forwarded-Encrypted: i=1; AJvYcCWLZD6pS91Pn1fx4W56PaKmp+IFiDt2GxuXcyOE4ALqqe5YN4MdNoaLv/7Dp0yOvMDMM2iK3BV9dEt2@vger.kernel.org X-Gm-Message-State: AOJu0YwgSfQT9T7SvelZno9TnIRObH1mMm0WUoAVGf8TZx6PiBJfpt24 TOFkJe+4gf1k7Iaw5ldL+oQhnclsQiHfZIH3EaOyhmMRpOp+yp7uDByqsXYLN8E= X-Gm-Gg: ASbGncvNOmgPvTlKLC14PAILFM3Gj0c+QsClso50aMXuwTc0QytsRoAVWUXjEqICN2t d7QrsSadLH09M1mPmRb6NUyvvwsoBl8Bv7BNQmNiTBgwTljZ1U9wr0La6y3bBsJ4ceRgopVLvhT 0AOaEe50DTNZZKYAhFSqnVEImcFQcJNHcBN5Sf2lxPvJzVqnoH0J1k9qHEjmoxgfJc7ZaQZi2NU X1Z4qzbxNTfX3abqNoi9dHluFxy165oqLgKMoxc/ZGxDfB4To4jkVrfEbEzqiAMt59aynHM9H30 EDgcY/fDDZf7VRHN8FXhEzuWhp+PiZexZA== X-Google-Smtp-Source: AGHT+IG+vaC7MmgQ1lY8Xs/s97F/M6Om983foVEu9vVfhXq+DCq1sUbfXts/z/dMaAJgf6ogHaPHXQ== X-Received: by 2002:a05:6000:4285:b0:38d:e0a9:7e5e with SMTP id ffacd0b85a97d-3a06d641ee8mr5322988f8f.6.1745572122724; Fri, 25 Apr 2025 02:08:42 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:3f35:2b31:c543:726d]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3a073e5c9cdsm1688909f8f.87.2025.04.25.02.08.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Apr 2025 02:08:40 -0700 (PDT) From: Bartosz Golaszewski Date: Fri, 25 Apr 2025 11:08:31 +0200 Subject: [PATCH 3/3] pinctrl: bcm2835: 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: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-3-6b8883d79b66@linaro.org> References: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-0-6b8883d79b66@linaro.org> In-Reply-To: <20250425-gpiochip-set-rv-pinctrl-bcm-v1-0-6b8883d79b66@linaro.org> To: Ray Jui , Scott Branden , Broadcom internal kernel review list , Linus Walleij , Bartosz Golaszewski , Florian Fainelli Cc: linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1810; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=aKxxveH0C+uR174fNORC/elug/yziUniASTqQNWz9nc=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoC1EPXzEnCILbRcigkhvMXKkn4wcX8TtqvQacB KB7TBd1QxiJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaAtRDwAKCRARpy6gFHHX cmUiD/9yZv6dvT2Wc+LvJ58hLcbjZISnPBDhqi6UcP6kX2qjRFckiM8hGhHOQymPP4CMm0Io3FB 3vhD5qFTWMyUqVB20hNF8fzxFSAF7z1w2CZ78upNY4Ty8iYKY6iXlZkTb4/I2vkUQElKJc/FKuz ll539+UounWRewqOlHwUdLlhdIg/p3K6dVzXwe7zVGhLh4xnvbHm8w0mOjziSgYepKhgDfG2h/e kECtA453bSJM8Krn7c8+9i/W7S50XLMt+8Q/uK5eerfg2Ix595UQNVT8wwygug0q0ex9i2nJPxS kLljtjYkeCbEzhpHvXPszQKP8S3ACP7Upcx60XQ32TFPKnlOnt34eNH5XnLRbhgMA44mfrVToIF b4bfmC1mhk9vjJmDe95jXH94+nOr5C/u8C17k5eoxpGwd/dzJISDfRBBfNPJou45LONB2eNPoBw 07rSsnepk1PHd2FzBRPi2yebyN6YD7VmyRqSU6uDB/GyaCM+V/6Fdkj+6YzN5qezh314hAUT3Hg Ua7v8riePOMzxWiQIJGaMQmNjAC6gHILJn+73Fe4sEXX756CFMp9EyAIYp5KffDuBwm2uP9ktkg xTJ9J0vBSw5fxWyfFhVBhP2ijqhpM/l94+zEJuw11XNTxhheJTSyayQWYB0i8TW7Dd34VOtqoFE HAHE0Qmyq/keRLw== 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/bcm/pinctrl-bcm2835.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/pinctrl/bcm/pinctrl-bcm2835.c b/drivers/pinctrl/bcm/pinctrl-bcm2835.c index eaeec096bc9a..826827800474 100644 --- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c +++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c @@ -356,11 +356,14 @@ static int bcm2835_gpio_get_direction(struct gpio_chip *chip, unsigned int offse return GPIO_LINE_DIRECTION_IN; } -static void bcm2835_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int bcm2835_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct bcm2835_pinctrl *pc = gpiochip_get_data(chip); bcm2835_gpio_set_bit(pc, value ? GPSET0 : GPCLR0, offset); + + return 0; } static int bcm2835_gpio_direction_output(struct gpio_chip *chip, @@ -394,7 +397,7 @@ static const struct gpio_chip bcm2835_gpio_chip = { .direction_output = bcm2835_gpio_direction_output, .get_direction = bcm2835_gpio_get_direction, .get = bcm2835_gpio_get, - .set = bcm2835_gpio_set, + .set_rv = bcm2835_gpio_set, .set_config = gpiochip_generic_config, .base = -1, .ngpio = BCM2835_NUM_GPIOS, @@ -411,7 +414,7 @@ static const struct gpio_chip bcm2711_gpio_chip = { .direction_output = bcm2835_gpio_direction_output, .get_direction = bcm2835_gpio_get_direction, .get = bcm2835_gpio_get, - .set = bcm2835_gpio_set, + .set_rv = bcm2835_gpio_set, .set_config = gpiochip_generic_config, .base = -1, .ngpio = BCM2711_NUM_GPIOS,