From patchwork Tue Jun 10 09:39:58 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896426 Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.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 00DDC28B41D for ; Tue, 10 Jun 2025 09:40:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749548410; cv=none; b=WESHS5jgFw5v2BOPKXTgIUjrLD8ZUg+1LaMaFdM2kzhomhT+TJK9qevho2m8j8xgGAPYUssdheyCVcVcLDMFqChdmAp0V+vNbBHzGgngyjSlpzk6iuEgskmxRQe9EnmiwX/jpiNomb53irN0s92u3sl+lf+a5ZuBMvStkvj4SOg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749548410; c=relaxed/simple; bh=T9Vg0wvW1hKLtDwEAea/F673Ap81+xfLRjMRIOwyjuI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=HWSmQe/cfqcWEwDl7mqMhamvZydN6Aivy1mLl2qHFVTyvcfyInbf/6dwL5iHEzy/20BVvqR4EXfyrCp2M01QjZQ3eAST6d/A6G+vnlWPZ72Nl2HuMKaxmg6W+OlC6eTimyk2dwH/XJrqhkebECGuq5X/toG1JW5KlcX1m6j+kyo= 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=OzqChnGo; arc=none smtp.client-ip=209.85.221.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="OzqChnGo" Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-3a4fb9c2436so2723876f8f.1 for ; Tue, 10 Jun 2025 02:40:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749548407; x=1750153207; 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=vu79p97CBMbqD0WMqfE3aKDFszV913MMxxhgM+UJYyI=; b=OzqChnGoW0qbCITrv2TIRwFSYLPSURQK4wMIdeiRqUNyyFg3yH9ClxwKx9TKcnNLQ2 hDNFJF4R0KtiTMqGR6PzyK4uEF4jm9+QW8uZtcpXXO+i6MMT/erMgs8sbSq5GHs8rLCD 79BB2hBhLq4dlOOO0xbdKJRfKmjrvKyO1c/yFJo0xMy4UCvFYWTcUU6IgZfTLG6/x77O AkvtP6mw/yAz8riTZBF45pRtY/9YLmimiIytJaiSu0csVJh0Lc+x/Isdky+O1c5jKr0H XpEyiYiWzEpljwoHSKTVVce1orDHPTt5O54VJxBAtt6+hW9fX9OuprC2HbUHnabMIL+Q EA1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749548407; x=1750153207; 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=vu79p97CBMbqD0WMqfE3aKDFszV913MMxxhgM+UJYyI=; b=lQABiuNkF2QHCgqTiScK1fZTZrwTr6spcTf4a39VXo9lPY6FX3V3JMH5fqcmegBmVL oxCUp/zIUDySrQPsiRVmfdYeIkt0dxzzM9nF/RiRHX/0MdhoDqFzXRi4L6XSM7xYZtCm eaxqvT07pKi23q/vA/5+sgxkYVUjOEohT9Ayg54BsLtBzewyeJmgGQs3gY3vjTfyMpgX YL6fOhIZVMyeR7jF1rMKfzeGh2YkBQRGTsDzRv9m6Sd5bYoIEv496YL+jrqb0Xmvugah CFaQAubnoQQ5JHjmEHDBvbNiEYADOBo0ouglhh7iv3vFEWDe8Ye7hK3kAcBoEbVMbfsa GQkA== X-Forwarded-Encrypted: i=1; AJvYcCUHAGGxpibhmNHK/q+qKHhceDyRevVHunNJbZtk3y6p9PeJZNvP0fYijMmiN/EQs9ZbA+lcOWkkYw48@vger.kernel.org X-Gm-Message-State: AOJu0Yz4gmZow0kvHZcbiiYiztIq0cWbL8jKNIhOgMop9Lqiz9f77NtQ 3grX+fXQ+6sOmeIH5j3TE84X3l6mWNLuHfqcrEvBWk/OCjdVWIlQxNZIrjReZLHQt9c= X-Gm-Gg: ASbGncsLcUidaZDqNH8//7yAt11rW+937rL1e5Y5KHeLr7Et0v4Dft22kbY2iFBwNzv qkAW1CdgJOW59HGVONOB4F5Lz+CukDOSvk7fULJ45SCXRXg29iDyr+mvNrEeQHtegu/Df3CAdWO YPx3E838/oCHzG3rYxuGtR3f73iZ6x7UyqrSyXOTs107k4i06amUtl0tRpsAwH+p4fy4NDEV3Tb ek8PUKq0lcXtg4tkaM4C6C78mw+svAFDQrwiKyChwhQzDptrwG4FmK5hi23b2rR6r6vg2tR/s1Y foW4KDRSYnlNnOJtXcZG3BmkqkDurL5ZcBqfPxkim18flk9Ex4gapsWeQBP9vBQ= X-Google-Smtp-Source: AGHT+IGBG5AnZ7WoS8T+OydhEHnGXvZC2sik/ScM1rf811UK1oAyJzo7QEcRs9ivB+TFGJzULnkUsw== X-Received: by 2002:a5d:64ee:0:b0:3a4:dde7:ee12 with SMTP id ffacd0b85a97d-3a531abd96cmr13532032f8f.53.1749548407047; Tue, 10 Jun 2025 02:40:07 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:4d:e52b:812d:eb7c]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45213709729sm134388355e9.19.2025.06.10.02.40.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Jun 2025 02:40:06 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 10 Jun 2025 11:39:58 +0200 Subject: [PATCH RESEND 1/3] Input: ad7879 - 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: <20250610-gpiochip-set-rv-input-v1-1-5875240b48d8@linaro.org> References: <20250610-gpiochip-set-rv-input-v1-0-5875240b48d8@linaro.org> In-Reply-To: <20250610-gpiochip-set-rv-input-v1-0-5875240b48d8@linaro.org> To: Michael Hennerich , Dmitry Torokhov , Linus Walleij , Bartosz Golaszewski Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1770; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=Ob3eXl0xtZ14fRcS+tLz8GnDtyJ7+FiNafvHBBXvo6Y=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoR/108QZzPPewPOLCuwF0wrlBiAIdz285fQ8Cg yfxWynooDeJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaEf9dAAKCRARpy6gFHHX clZMD/4zlTpQ/Em6ds233GBUxVYyRYs3ly2on+t22u5TSDWKle1HmPyCKtQ3NFc2HC3mgEzdSxo O+jitDlbR/FZdPU99p+U1KoyOBoQiV0qVkO3r9kMqr7kIPsc+9hWgpA9Kb/CH/43xWO8ocS6WCJ JuPRGq4AWBQVvXPz4JCxiUTVm/ENKwo3kh00c4b/hfvas3aiXaDQz0fTzteBwAsOh4MOi0RPnHL r4SDH6FxJ83PE+aMmdYr0bF17zXPc7vChLfphkZeO4L4ydG1tX4AxrY8YrUh4jvieXaiAPf1Paw 7F91CQzYgiYyXec5tSf/ksKVpWUKDOHod1NkXW+tvpOkDSzDQ668Pv+7RapSOZAPWOynN2g8R4o zjH85MuxUwasRX1PvPZ936EQ403f5MyiIU6jwrCALxecq+wrVY/6BdX1nh1JIIAXCZgOhvArsti wSG1YYl5Bl1OvfloIrQCvTOUmit9IcA3+llxsoBvE71nMrQ09gWBkcCtNDhto/HkAWumDnhOxu4 JJ9TKmcuw+SfVF2vV0cgrQSGFUVd2z/w6nimULd4bpSe7dpsQDwgbZ7JxcofVTE1NF8SM3d3MRX Q58T7OW6PrrZko30LaGLS7Ed/Xklt3gLPOs/zMVOHNcOSs/k+aaSSqDges4dh1UZc73BmsaFv1i 8x5iq/VflHs6NgA== 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/input/touchscreen/ad7879.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/drivers/input/touchscreen/ad7879.c b/drivers/input/touchscreen/ad7879.c index f9db5cefb25bca45e18e80fafc9cad5dd78f4f68..d2a3a5e016b6a5416846e8a9edf906c891d4038a 100644 --- a/drivers/input/touchscreen/ad7879.c +++ b/drivers/input/touchscreen/ad7879.c @@ -444,10 +444,11 @@ static int ad7879_gpio_get_value(struct gpio_chip *chip, unsigned gpio) return !!(val & AD7879_GPIO_DATA); } -static void ad7879_gpio_set_value(struct gpio_chip *chip, - unsigned gpio, int value) +static int ad7879_gpio_set_value(struct gpio_chip *chip, unsigned int gpio, + int value) { struct ad7879 *ts = gpiochip_get_data(chip); + int ret; mutex_lock(&ts->mutex); if (value) @@ -455,8 +456,10 @@ static void ad7879_gpio_set_value(struct gpio_chip *chip, else ts->cmd_crtl2 &= ~AD7879_GPIO_DATA; - ad7879_write(ts, AD7879_REG_CTRL2, ts->cmd_crtl2); + ret = ad7879_write(ts, AD7879_REG_CTRL2, ts->cmd_crtl2); mutex_unlock(&ts->mutex); + + return ret; } static int ad7879_gpio_add(struct ad7879 *ts) @@ -472,7 +475,7 @@ static int ad7879_gpio_add(struct ad7879 *ts) ts->gc.direction_input = ad7879_gpio_direction_input; ts->gc.direction_output = ad7879_gpio_direction_output; ts->gc.get = ad7879_gpio_get_value; - ts->gc.set = ad7879_gpio_set_value; + ts->gc.set_rv = ad7879_gpio_set_value; ts->gc.can_sleep = 1; ts->gc.base = -1; ts->gc.ngpio = 1; From patchwork Tue Jun 10 09:39:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 895387 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 C793028B50A for ; Tue, 10 Jun 2025 09:40:09 +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=1749548412; cv=none; b=dhiOyvapQX5TUjw67xG8x9drHS+5sUjVcbbxTEgCR+O94nWPpoGZymbKdsiB7AorOAXpHJlsYnW4Q6qakKV5LUlaS22lils5dqjw+j6o/+41brFAvBXQ13GXAE//8eqhMOmDLgDVtIQyp1lYS1XcqtJouh3Z2WSoVHcLk1wNyNA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749548412; c=relaxed/simple; bh=4OzJPnbfFTAG/2npgoV8sSHsu/v3SbNkRCIb6UQqrxA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=naBRfKRLsXqHP3WsvqjpAa+N68YAb6LVLIAs4HYSH0hlqMnbm0joVYPaId2KFEHiZriw8+RVZuvSJoNIoVXZBbZltKUN2fbo0RRLJxefA8fIahp7PSZVjqYC04m9Qa7W24vVNJOYEMptNO/O+0VVw0VmnP8OtiNS8d/lsrg3VtM= 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=3V9xgL5F; 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="3V9xgL5F" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-450ce671a08so33079735e9.3 for ; Tue, 10 Jun 2025 02:40:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749548408; x=1750153208; 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=VU/OIVp1Ix9J2HIXNEwTULz0O5cS9CrQQSNEafNoGZ8=; b=3V9xgL5F2IxqswQyYBz/ihsi5fykm3MMZkAtu5gSwlcPwee6eU1BAJ0i1k0tTPr0yT bDxMt8fnKU8Psiqbmr9hTvawxLMjAIc3Dq/cqgIi/BZKMm5jm0Kw/S7VLtvhZH/mPgnP 0SNRYCZ8qmFQtZ/Hj4wwbAQsXJmg/enie1akGU/iby3giDD0hRD3nYJY6OujwJTWKPoJ MSCiKgyOoh/q/zRo3nd4zAYtnvvTnzqvoUuE/1FXeDkznj2m0at17sVQO2QVrGEGq9eK 1GuR8F5rFCHOPaIgc3mG8xSgmETwjs5pY3KsNJW8yAwqe6xCuzILjQSPjGjQzVhMxdLz PDlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749548408; x=1750153208; 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=VU/OIVp1Ix9J2HIXNEwTULz0O5cS9CrQQSNEafNoGZ8=; b=miMY+pz0hrChCXF5TjG3pua+LskeDh/qhyffJlqlDEZck7EwePrAL8uMmaMn8nlx0C oLyPcIqIBCoaIMd4rgrV0OPTaWQd3QQrZTGZSRvLbuXXX4GE3WcTznSXOCcLAFy5ur/X iPCVV1eCDqiCGF1Oah8tLOmZtzR3rybYfaWjAhjSS11ahmDxW6GL+oMYjDePHsWWIXyc EOLiMbKqLTF/IR6gReFg7axwWSnnF6AFMC+o8PEbkRZsVawW8JY5vIl0V9TNCBXV0n06 fdHsufqVlz/dMPOo7eHfukX1r2cXa6UU8fshAzqwyrHIkLMx80zoOyVHcK7qbMo6IASa KCfQ== X-Forwarded-Encrypted: i=1; AJvYcCWCw1WstUuXJLrzM4QQMD0KywutPoDtcwYGd5edDaGdDUUUxHTCtFuQZsUcfG47cz8r/iC+0rTPPYUB@vger.kernel.org X-Gm-Message-State: AOJu0YzK8JZM3H8pf0uRQiAUl0YJpfb4nzDKod/BsBgNyM8mAqfaEYTZ s3K/Pfdr3EQTCvfve/s1G7fOQaGIO4CJWdKvDa5Vb9qyvaww5bi4zz+Xny+ZxjvFoBY= X-Gm-Gg: ASbGncs/+A57PyM8zP48XU4ngP17rqxwoezzRzFaPUCaceWLeC34ylbqodbQ2FQyLsH E4v47oHXEcpFQGnfdUqluz9bkqF8UiKXS8r4zVmTl/1aNgAfadZ8+Zb/nBxBs0pLIMMfs1w1zkF 9Ny+b1qJWj17nwm+ZdpJBmPm+mJGG6ybGawZEli3722tfb/RYF55/9tChv0Hvutbs5OylrSYinM eqUmekwN9cd98vA3CilNnY5Q9Q2+a9k/8cC/gzYiRfCv6PosxROUSkMBm7rQi1UWvB7fp2e3ZQM PeQoBVs1lmBSoq5HP5VXIPLa1BXCBvddsjQHdPeRXBPyOs+Ig2qJ X-Google-Smtp-Source: AGHT+IHqr4QFKBekkAkLRtNcAcVe6DeuUz/hU7fpOo4EcWZuJA4X0CT7pCaULEQ3bxKSZR2prLHhJg== X-Received: by 2002:a05:600c:1907:b0:43d:db5:7af8 with SMTP id 5b1f17b1804b1-45201414a65mr121973985e9.21.1749548408118; Tue, 10 Jun 2025 02:40:08 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:4d:e52b:812d:eb7c]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45213709729sm134388355e9.19.2025.06.10.02.40.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Jun 2025 02:40:07 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 10 Jun 2025 11:39:59 +0200 Subject: [PATCH RESEND 2/3] Input: adp5588 - 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: <20250610-gpiochip-set-rv-input-v1-2-5875240b48d8@linaro.org> References: <20250610-gpiochip-set-rv-input-v1-0-5875240b48d8@linaro.org> In-Reply-To: <20250610-gpiochip-set-rv-input-v1-0-5875240b48d8@linaro.org> To: Michael Hennerich , Dmitry Torokhov , Linus Walleij , Bartosz Golaszewski Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1850; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=g2mEe+Yprwpzn/4/9kXNyjawagXdr1kzrPV+thj2Bh8=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoR/10c3qd40EIC2XIYd+GggMVnckEKZgee1x73 UaIfSjLrHyJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaEf9dAAKCRARpy6gFHHX chNuD/0ZjX9cH6gsCOH84FLosGXHz21Db9EPd885OORFVa2vnh0n45TNJt099NWxDcUcfqTfUg8 Ai+vWygQ6VeAEDaE6V2d7vYMAvQd/Kh08KEeLpmQiZmQBeBAXAmd1i16Ao2qQyUorzVUpkxBbwU AbG6rkYDFd3z2QnPSgOwBEfy3vz6pOLEeUcmjtfg10rSCRh4lnZAt0594P/ielQRyoeqhxhkTJ4 JNNVzEUAyRPeb11hXbkrSep9FmkDksnAeVZcA2tpt9krygy9OM1Msq67dhe1VxHODyHjt9o2khk F4FjiBtJYlWSlloRccM2KqZa/z/16KxHLOwofrDpMM6gx/mXJ9tjJ+LlPhuffCTYyvO3D8tha+N XeilZdpYUBQGal2+YBNqdmgymtD8JT3qWzKkO4RH7T+mx/QJ6ZUZ5EDXg6V54QN+degkA0mI+tZ U9LBbisClmKABFWhTv3BA6KrHt74blXx1zGL+I94S4irzU5eY23dTQ2+LWaU5frWAi9rezydoBD /UHSBdktYiHUIMNlAwoAD0t7bth8Kp8KBbmPvys6rg4FZ0xMOenwutozEXgh9aoJKkRW9QR4+eo QFhA5mf1m1bywVy6C7TQIHr8FjJb9LmQ/4yrkOhh2KxKI+70SOQMwnOkXduD/A5PXgmz04jdB8B PJ42QowSq108Mhg== 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/input/keyboard/adp5588-keys.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/input/keyboard/adp5588-keys.c b/drivers/input/keyboard/adp5588-keys.c index dc734974ce0687a6e850242b531979be8395b394..2b2aca08423a4ee658db56f77bae25ef5a18e7a6 100644 --- a/drivers/input/keyboard/adp5588-keys.c +++ b/drivers/input/keyboard/adp5588-keys.c @@ -232,8 +232,8 @@ static int adp5588_gpio_get_value(struct gpio_chip *chip, unsigned int off) return !!(val & bit); } -static void adp5588_gpio_set_value(struct gpio_chip *chip, - unsigned int off, int val) +static int adp5588_gpio_set_value(struct gpio_chip *chip, unsigned int off, + int val) { struct adp5588_kpad *kpad = gpiochip_get_data(chip); unsigned int bank = ADP5588_BANK(kpad->gpiomap[off]); @@ -246,7 +246,8 @@ static void adp5588_gpio_set_value(struct gpio_chip *chip, else kpad->dat_out[bank] &= ~bit; - adp5588_write(kpad->client, GPIO_DAT_OUT1 + bank, kpad->dat_out[bank]); + return adp5588_write(kpad->client, GPIO_DAT_OUT1 + bank, + kpad->dat_out[bank]); } static int adp5588_gpio_set_config(struct gpio_chip *chip, unsigned int off, @@ -424,7 +425,7 @@ static int adp5588_gpio_add(struct adp5588_kpad *kpad) kpad->gc.direction_input = adp5588_gpio_direction_input; kpad->gc.direction_output = adp5588_gpio_direction_output; kpad->gc.get = adp5588_gpio_get_value; - kpad->gc.set = adp5588_gpio_set_value; + kpad->gc.set_rv = adp5588_gpio_set_value; kpad->gc.set_config = adp5588_gpio_set_config; kpad->gc.can_sleep = 1; From patchwork Tue Jun 10 09:40:00 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 896425 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 C30F528C003 for ; Tue, 10 Jun 2025 09:40:10 +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=1749548413; cv=none; b=sYAwTMrcMyAy1CA/qLHUl4y2fIF045cfvnpDLr5MrGKQR8StE1CqOan9V6CTZ+Zy5IpseLI+hEE4pNKkQ+xbZ+b1Xo5FwAQJ1xCkwXcFlBqb+tnR1I0uLj6eg8QOn9ZGs2PvvAN9DuVgGJ7quxs1moYqE17hAmxdUOrYIFVLaBI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749548413; c=relaxed/simple; bh=FM9+FxKhkL0fgoYqO0FEHZpohQiYjQOPgOSd5xOlL60=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Yg0I8krFsJw4Vs3A6HM9bd2f7g5K7W+dFH424GC/1vOPzVnrH8R7oFCjyezRFUn35hORQPq68mALmjsP5NPvekxthK3mM6V4OxetPk27XvulBZniMZKoOiSc/0BXw5ZTJNwW49h5gdkCjeH1RDLMn5qNPqvi3WSgP9Owu48HlVE= 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=wlOetIRQ; 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="wlOetIRQ" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-450dd065828so35237315e9.2 for ; Tue, 10 Jun 2025 02:40:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1749548409; x=1750153209; 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=QuNlufTXDsCqvE1UM2bBXJxJXmhGQd5fXcs9xnB1YPk=; b=wlOetIRQWz56WjDbcUNLWObevICrkNZvuf8Bv4NhSKgN68UqTS38zNhIwn6fOm3fDH AXbpt3Z9WEfgHkWIhZvLgJDKEzbrEldutAQb0gaphw4UB8nGcLQqvPF8E4rSM6L2XbVT apht2yWnpxc29zVxxAxweAOO/F4Bz94ZNIsyM5cxtCinep98CevcNL6oDdA/EPY212sA 0/emH6Vu2x6pDgGQNnTJ6+Jd18l/79hEFfeVO+WMa84XGNh8QG7E9+EM/vTI8CHgHezh ypMx93JDCoeVUvieOHoy+GkmnttisAo3slwB5iJ7xgQA/nrIGiOl5DZkK+SSkLlu4Pa4 mIbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749548409; x=1750153209; 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=QuNlufTXDsCqvE1UM2bBXJxJXmhGQd5fXcs9xnB1YPk=; b=JzJNSgejqI7BuhW3JFkrn6J1pPCXWOrAcl8oaDcV3HcO6n5rfyguSp0NMThgzU9s0G iUiAbM+1uZO0gHhS9GmI44K58wCkQWF++cSgorDtwXOZCODWPqWPbrAJakcqZ2+tPZJR lU83eksHSafO4RG20c5uhFC7yB7SZbJLpv6KW2OlG2kWNT5gxQ7Q9yVWSgr58lUuVyno 17jHUB33q4U9aoDpw/BPOXyaeSrU7CzYiejg3AMeq2PU+SLDdKErWcWv4emJBtenBH+S q9s0BMM6+W4wQlH/Bv4ycsGb4PN/RNLRwAQRRjGtkFFVf/IOCaNXKiAisM5wJclFfA8R cGfQ== X-Forwarded-Encrypted: i=1; AJvYcCX5ANBblhBxGZ7CeBSH02VWyD+mNzPMd6mU1pdI+on5CjLSsAF7fbIAXYVUo5h0o43RNJ2MKtbrki83@vger.kernel.org X-Gm-Message-State: AOJu0YwRn22jwyHKrd43+ky9X2eQI/skMqlRfj7A8t0KkV9jCBoLwFbu 2Wvg2+FMkvy3sOGGzhe85fsWmMOJKRDzWeFn4RpQIWYPP9MOtKRGwuUZFO4paOIYYvBk09zZnoF lMIKh X-Gm-Gg: ASbGncuTd0INm3o3bzf24dhTIIvc2J79OiRQsD8qqgispgB3lNvM7a30dLuHkLIgy8U /TMIpIT56y7/Y2Ab899AbJYYyha+qthped990devKGox736iyd0zv+84RYA67k2khy2kbFqaun2 iJGxUfMB2u88aAnUfWcch+er7oIk64JwA+3sMGnAkeaBh4doC9P8l1L8v5k85m3UwRYRuXNtCiq wj6i5luXwQkYpW4+YQYTU+gJnkRphdr0X2l1I8vsIfjPIYcEmpz5+j54TBQVYC5xoaJ2256mTQb kx0pOsJqwbWEPzrrN/C2iLaIvrYwtJ+LBxvO7Cq8DGeBsL7HM793 X-Google-Smtp-Source: AGHT+IG+P8d/GG0ERmwI9KUQ4IgMhjLvDPM7p0ncbjo6JhLmbJaSUWNaP11Olo/wsh6igEJXujEKSw== X-Received: by 2002:a05:6000:22ca:b0:3a4:f55a:4ae2 with SMTP id ffacd0b85a97d-3a531abd890mr12527110f8f.50.1749548409105; Tue, 10 Jun 2025 02:40:09 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:4d:e52b:812d:eb7c]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45213709729sm134388355e9.19.2025.06.10.02.40.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Jun 2025 02:40:08 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 10 Jun 2025 11:40:00 +0200 Subject: [PATCH RESEND 3/3] Input: adp5589 - 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: <20250610-gpiochip-set-rv-input-v1-3-5875240b48d8@linaro.org> References: <20250610-gpiochip-set-rv-input-v1-0-5875240b48d8@linaro.org> In-Reply-To: <20250610-gpiochip-set-rv-input-v1-0-5875240b48d8@linaro.org> To: Michael Hennerich , Dmitry Torokhov , Linus Walleij , Bartosz Golaszewski Cc: linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1910; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=fvDEw15OiAsvKyldBKZrvmZGaVnjKoDEoEksuJuTlQE=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoR/10aQmX9TGylNk2QobRGpevvl1Uu2mKo8IPS oRxLGufeU2JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaEf9dAAKCRARpy6gFHHX cuhOEACHDYOEFa1D2cvZ9ft2DaDxXLvO46Y+7oMsLv3k0kI7hnRtVkzbvcp3aWskfZqFEx8ymaU HwJODA2Y+qUuH6t4BxlOiUMdcWc3iagzCj+UR8Y5UX8Bk3bPq4RPbT0jsNrL4pUGMxBl2Kf7qdj 6dR/0977BZiuV8tyg0ejAfnyY2wQoar2BiZaMm16sseYeYuOAvqauNUEnAzyLW4Pp9fHRtAH/uS atKEXRTpV+It8VN926SIu8eEbWJo/tH2h2GGmUjoXiT/+r8/1mfuGTD26VzkYKEKQ8hsJgAbtgN ZR4dwpfE/OwGTkf9dGqaY0r8rvmH4RkFWn2gmLkv5dhBqV4+G1EC49lZhGHkYFK8RjcWRUcZF8B Pz8hz94iae2ZhMTgDik8YbHoS43F8SMq1hRd0rXXnxvuZIaTrsIe8yRtWXs0mWPdeYcNh/eHiZn 2rHcvQrS++MFr+YoNJvWtFiyIlNgJ2LwQHFOAGZK2+jAbvXGUNaBy3xSCxxzxjCZhoWHjZCLW91 h9SjVrnzTbIJttXvKUZCDcAcDboQZNzMgBEwmkc2kDY0f1igpELcX5ngJ1Bls3/GreQcs27XCQf nEnFQ9iV0QqWG8Sd8qgliRhZBPAYCqVFhK9ExS7r5hLPbf/HvPIoZxjxA0IicManSPWNhDWgNkw +Oo3M5UZilcbbcA== 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/input/keyboard/adp5589-keys.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/input/keyboard/adp5589-keys.c b/drivers/input/keyboard/adp5589-keys.c index 81d0876ee358ef4b521f3f936dc2ab108bb4cda3..986a789f1ec3b3599dc94e1f6cd871e1df5e1537 100644 --- a/drivers/input/keyboard/adp5589-keys.c +++ b/drivers/input/keyboard/adp5589-keys.c @@ -404,8 +404,8 @@ static int adp5589_gpio_get_value(struct gpio_chip *chip, unsigned off) return !!(val & bit); } -static void adp5589_gpio_set_value(struct gpio_chip *chip, - unsigned off, int val) +static int adp5589_gpio_set_value(struct gpio_chip *chip, unsigned int off, + int val) { struct adp5589_kpad *kpad = gpiochip_get_data(chip); unsigned int bank = kpad->var->bank(kpad->gpiomap[off]); @@ -418,8 +418,9 @@ static void adp5589_gpio_set_value(struct gpio_chip *chip, else kpad->dat_out[bank] &= ~bit; - adp5589_write(kpad->client, kpad->var->reg(ADP5589_GPO_DATA_OUT_A) + - bank, kpad->dat_out[bank]); + return adp5589_write(kpad->client, + kpad->var->reg(ADP5589_GPO_DATA_OUT_A) + bank, + kpad->dat_out[bank]); } static int adp5589_gpio_direction_input(struct gpio_chip *chip, unsigned off) @@ -520,7 +521,7 @@ static int adp5589_gpio_add(struct adp5589_kpad *kpad) kpad->gc.direction_input = adp5589_gpio_direction_input; kpad->gc.direction_output = adp5589_gpio_direction_output; kpad->gc.get = adp5589_gpio_get_value; - kpad->gc.set = adp5589_gpio_set_value; + kpad->gc.set_rv = adp5589_gpio_set_value; kpad->gc.can_sleep = 1; kpad->gc.base = gpio_data->gpio_start;