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: 895424 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 DD94C28B419 for ; Tue, 10 Jun 2025 09:40:08 +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=1749548410; cv=none; b=KqYRjHjc7ldQyycT7/Ee1dBbjLbtor4PiwjjMpgrxC0Cd/zNtX8ZqFBJLEPNAesebE6afc22Dst53bjMSJZ2lvIgnpz5rUJY5CW9deqZlClEmdbp4iWjMkqwrzmtoRMbdyXd3Gx8RHlTiKa5FFoI7gaYuck0W0BGqeedFcXeraQ= 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.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="OzqChnGo" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-3a528243636so3131305f8f.3 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=Xr3hURM+gtJkBjSwkV/U7CJN95q6N9EMhwpViOtLSNiq3xzDAADE4szbW0bYViB2fd qUyMYHIBKPI1ivdGbys6hD8D3NJM11CvXkz2oN7g1p6UaJaT6qgZCEXZvk3Btw3KtGqf UgpMb28N63drP6hB81doEfjlxnzB0y9wuhALGNEgPB/lVahRDYA04S27F9V8yQMcc5UG IgGtUdKePe2ShJ5RE4LCSqBIWz4Qrq3fDzU08DQ3ZNaU4OixOqYbmSdS2prvVcTL+k56 uQPDtzfUlJlSLvAqQQ9krOoKEA10F5mlK0jbbKU//Fzu2Zi/N8KCzNL6Qa9X7NiVaAXZ GwaQ== X-Gm-Message-State: AOJu0YwKBMpAam7ePk6jb8tcGvK1B687/QcYR57QdZ7yg+rvFsaNiGUf LG1ygNns79SYO6xW3G/rChA0JTBJD1RFryVgJjIRJ6TnUZna+ciX5loDtlf5FH0l5Mo= X-Gm-Gg: ASbGnct9vCXzZF6K8X6rnmEfefWqfvrBSbFekJbcJNo9DwzAV7CR6KELofmK1wBdyhL rilDMy+wMZFFNNa1CvgD7Lzw4ncF2nLI9pmIfwSaGRffRwpwwCpw9GHl09KsfTeuNCokhH/hZC5 iD2Yk33N0TS8eol3QAg2bIbnhFk11AFV1nizs4Q0dPpkKvH2NyqcP0Yo7Ro2VnRzq9ihf9WbLLb Kddix6JBH+ckFLJTGdiow/YCO9v7uOZVC4Z0W8NnoTgnKWiaWxEDtdMV4Pxmyt30zcGCCWZ+b5R oIn8oldWuBJ0h+rNP0/UYNinO8pSMc3Qg7S49uHyLQ31zRhi+UzBbyuZtQqc5Ac= 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-input@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: 895423 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 D027E28B7C1 for ; Tue, 10 Jun 2025 09:40:09 +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=1749548411; cv=none; b=YpZ3gPzIZ4g7B9CXKylJngWuaZ+gzta9oTSVQHnQ1JA9az3TVfcif34dtA5zP/7gbwWfsHvNVv92dm3nzua0t7BRkHU5EDJ4uG9BYvP8Nii2rAp3nqXVWbByNAzF7DJ20dpugz17waopNtU/6hFPh56L/SCJI/MpZDr9E5EMdnE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749548411; c=relaxed/simple; bh=4OzJPnbfFTAG/2npgoV8sSHsu/v3SbNkRCIb6UQqrxA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qT2Z55fYoJk7WeLWE0M/6T1XaxBMqZBxOReLhhYEsWMwrz8LQVr5juoyVNig3RPulUdiTIHEh5pQRODFnU3m+/bxAEWs1RkuL5hi7m3PD1JuLIqPPb5Wg8Uq7E4xMUU0PuN16fpFuRj5tau0ddacxdZdsRHkaz1yOq+gpWb0nZk= 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.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="3V9xgL5F" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-451d6ade159so43874825e9.1 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=jupVYrGKwWCUVFMExRKLNlUhxDQ8eDKGI01TAdpegV+AUXpIrJ104Rkc5DPLMdRqIs 9F9D5oSS0ApUcIFFjhmDPelsiFEq28+lmjOlEHw8t65bm3FI1lQaxQcF0Bgc/GPH/c7n ylGwTtP+bk5KbEMIJHTku1rl6ulBfA0i1eRI4b13OQR2dQQHv0UMnH363GMw8MIPCPoe SL6yJrzJ5CmJFas7zaV7j0cH8pnAr6/8IBgaUf0XhBf0Zn4GCVM2HaYv8UUI7c144IWu 2g7d+70jTpuCSZDjPLpJXUuj0GzO3OgEyKKaDrV4Te1qmQWwQsI9V2LCrHLebs+/U+vx iRmg== X-Gm-Message-State: AOJu0YyMpC2sSFMEkbxpDq+EaYRKLQpNFV/ZDA1dJogpJWJ4HH3V1JMs NLf7JTjPJ3qzlHZF9H0GIdDJJodsew7ZmiFYDmOb4xHHaIcmTBV/+vlGQ4bNhX3GxMI= X-Gm-Gg: ASbGnctH+/Kor144fOglqDBwGzbylMO6aXeHUDrao+ZMp1qcPJk+njtLeQrIXGiDL3O kFs4g25tZw5QAjZkkoIBKjjEKs2kNRvynkoB53zIpGbpXX4X4s5gjFzEP1BLYUeJo6fPH1x4D4P 4QqueripP/EEwEYbX5MawRZlyRlnsL5CKDIzABFhTQZAm/tnsjQvDaD1ji8kjigrtlMQr9Zyedt +AXuMnfg/I6bCAbMQR9lu8RIpcSVu7cLPaAGjaaGzWr8DRmikf8uSrz+/u3jSg//GiteyyJ8c9/ z+XjE6GjXFG2eB0Lp+9Qcw/SgR+xynP8UFn7Zat1VabQzYKLK24q 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-input@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: 896508 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.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 CBEED28C00D for ; Tue, 10 Jun 2025 09:40:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1749548413; cv=none; b=FtN5KJjlIFl2uLt/6Nwdhy12ulxz9v6T1WFSe2edQvuCZ0GRP1+YdIDWJABoO+RZva/ksw9hvQwsoNRlqgad+DaVWhexnsem/L/+idDfLTaZ67rcUpAp0gmU9HbNr5d01HnhAVTXGA7mSsfAitENnRo3ozKXOoTSSRuLQERA3oU= 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.221.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="wlOetIRQ" Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-3a525eee2e3so3923924f8f.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=FYKrNJq//2q7vYHqNfvsJN4ACW476Hx+jeGTaJ78pSn2lBAgGHLKrQC+Cqqqaj9kXH 1BGflHTKx8BOU57uvUrTtYWBmm2PsfcnO6SIeuMUG6fLoa6iont2iD/PCVMvCxc2hiK7 0U+xXguHIcRufSigoYfd+Wy6HFawitXa+zIKxWCxn2ByV/L5Do3MfTYSmEyGYPMrKK1S V4VcIreAp0Ai/1C0h/EdX4rhBhkLKZZXgh/BLoBd2uoVIqiJxdOAw0PzyedvA7pq4WnN BywiasCFTa/iEY6gbFgavKADAh0IiZ9qVpBLcFnPlI7foBZz2O/dTfmeuG4Ne8FGfkcl 4OiQ== X-Gm-Message-State: AOJu0YyH3v50QzQiL6GaEj8GB0oxRXRHcWnr8xzJP7d3N8AW8pd/uaeE r7+uAZm7UEFbDjkGfY+S7eepVY+JH1Hx1gpTDuD8x8WmLLxxhXVNAaz7tPngg/KX7EE= X-Gm-Gg: ASbGncu7MbxE58l/vipmh9p1kvcm0KmlxVeTVsB8WHB+eYtXXHx2vHSW4948Ow/StC0 Jdizh5xdn2Gu50JfHJmUaGAzC7qEO1Q9UB4z889BBbDznuh3YW9LdOVMQiUtJ3LlmhiWqYzdzLG vzmXjz+rqwgmKeln9uPpTm1IT4QbMSAyEjF3P0LFvurJhQqICzl1phcvzQ7T9aHAczfnDuHP9D+ E9mmVbslepm0VrS4xFone8GiFExLv3MhhVRbqCN8BBLstWVNnVfmH3/nUo88aS7Wx1UKLo4wMCd 9cEQgVQD9HkGeqKe4BLhTwX41c2m7kmtP5xne1sozrPCNtC6E3oy 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-input@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;