From patchwork Tue Jun 17 12:24: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: 897778 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (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 9EA7122FF2D for ; Tue, 17 Jun 2025 12:24:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163087; cv=none; b=dkRambN4+rtn1YkXWPoRVB0mzqgAsmaBi10oBYkNhAaUyvYvwUPvkbz2tX8X7e9iIWIwtxUuNG89BqGF8P96oq8SJ4tCHkVGI5FijKaraBxVp2FFBF1M8HfieDkCiGF50Etns8dTf3nx+K2oFiY4+hDwAPeF1qDgIKNOE1p6blQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163087; c=relaxed/simple; bh=r8YR0XSxpNQwUjB1snBTCh+aO57h/fzpJl+JXwgznDU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=NLfX4Ju322oOYr4VBKlV/eu55VJoEZ6CfYwYuYR73B69d18D7N4VkfaO3fVVDz3GJBRD9x6cOBlgVQAbEMrhoJbS7HP+DAMOJNY5RCrPhfu1ZNzUnD6ObKOjl5UzWXKPYqU/tKnNzGsK7Da7ETsmqwLaGdG/RJLbEFSWHbchOhM= 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=gEXioIFq; arc=none smtp.client-ip=209.85.128.49 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="gEXioIFq" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-451d41e1ad1so48459125e9.1 for ; Tue, 17 Jun 2025 05:24:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1750163084; x=1750767884; 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=aoNSIKbOdd485smFmBnHl/Mm0pNj2Y6zx1eXoO1wxPA=; b=gEXioIFq9DT2/5k2J6doqNSlMSseFgijgOteALk5SlzJMWxJ39uSzHEu2IYKCTmGHx UGVGWdHlMILM4gOPSQf8Uo5RVIr4BzivKibWtShBLpOemr2x4jLQD4aJU53Qb3TbKooM Zi+r35beYXPuHpyDgPOVTyRf53Y5eeaYYjg1xuZ20sPhwykH2dmsaYPkYpf5kZ+Kfl1W xI1GF+FnY371Yrtqwcjz9gGTKmkMeUZ85dc062Y7XBNxF3c0BQUJbQJfPLMFLO2xijio Ri+Ko6/FpvIBClbQJwDlPEZY6Nk25eH1HGUU8GfjAZspcx0Yp6np1+9qXii2HRQMS7TZ ZjYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750163084; x=1750767884; 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=aoNSIKbOdd485smFmBnHl/Mm0pNj2Y6zx1eXoO1wxPA=; b=KjghBjf6WQerBA96VUAU6MAYEl8V+dvABcnGkP/9qhNI1Q2db39cTeo8ZCKwNuKQpr KiCf6bBfxkAecwGRIigqUCj8gXSJdvToXcsW73QuQhl4mW6WikImPsyv7daXerqU1kGN Xm308UwLPQfDbQK6cctcJYAYYkvk8pJiBohiN3NNWroAnOalpwxu9Ij0WZAXnvy36fnV MQIWVuPOPPdX/NTJRQ0chJxnjuuLfDis+kHHDyvL4hPca+EDySXRHxOafCuJXAXhpdhD SMCqNVEkFTIEW3YRzxUG/0d5gLiOVFZIasNiOMY/oot1qfFg7An9WEs5SvJrj28a75Rc 0TTw== X-Gm-Message-State: AOJu0YxzNSzPosBO7gHnSHRTCL0hYtejUUBKSLhi9Ez0cN+tKKWcFUbk CnuJV/ShdIDdXg+xjxB2tH4CG6vGj9Mnr8pj5JjQe9ho3judSacxQVJnUqQ/tdH7R3Q= X-Gm-Gg: ASbGnctF7COwB+E8i68koCp7wtIXrgne3Xxd5qsUMKwvKKqHcwh+LQWDgXfUdo0/mU5 0vEP2G0NkYQQ4yfDg4QB4ppKCGfYQoB45axVJXxzwa/3Y6t+CMmRonrB1KU5MA39qPnK7bf+Chv Nk+pXRzlWEnNbyL63XKeehs3z7fO3iM/ulQiqjJ5BSbNzBRWz39sBYHCvDSLChOnCVUIgEGlRRA LRC+0QCBozn8QNauOC2bsGFNG1fD2M5SB5xa0F9RlbnfF+jZsNxTn7uPEKK8mp2yN2G8ivmwWHA hglmb8kniJ/b3q0F8rvO71s5S+is4pMdAyTIdHIlvi7t9f7llfq+66kj X-Google-Smtp-Source: AGHT+IFjGWRgGD99OMAPMoLYwAIsTODZ+U2Af+jbgXlHRtQDLpU4RqEiIpXtgD7kFvIv8VVNBRGMcQ== X-Received: by 2002:a05:600c:4e87:b0:442:d5dd:5b4b with SMTP id 5b1f17b1804b1-4533cac57efmr142885005e9.31.1750163083958; Tue, 17 Jun 2025 05:24:43 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:90df:ded7:9cbf:4074]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45320562afbsm173816135e9.1.2025.06.17.05.24.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 05:24:43 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 17 Jun 2025 14:24:24 +0200 Subject: [PATCH 02/12] gpio: pcf857x: 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: <20250617-gpiochip-set-rv-gpio-v1-2-903703881fa2@linaro.org> References: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> In-Reply-To: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> To: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Orson Zhai , Baolin Wang , Chunyan Zhang , Robert Jarzmik , Heiko Stuebner Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2108; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=UjdVhHBdj/MT105x/Q2pFxBb2AP6k98PFv96j+C3ycI=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoUV6GFFklv2v6R87MrAXNHZyNzFP4WjIs26eeM jaLuHbEIROJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaFFehgAKCRARpy6gFHHX cp0pD/4jqSNOj2xQtdCVE8aUY/oYvVBdI0smTuI1wV5vjnOYk/XOkXPxvKf8cxCKJepJiLLS75O 9uEpobTggd4GQR20kr2zy6RaQ1C/oR5/3lZ1XIMmdei4517WPUhe04bBOwP66+tx9x2+QCUOfxb OiDQPg7BqqU9Ze4mcCV6OzO2wd20MX85sbGuxWFYNnKNLPiJECCNX0MUGR6ktbXHJbtHmeoT+1S WeKPV3ZTVNqqeEpizUAc0KyDaquEVYil9JFsAr9MbXMwKtT/v95oJEaMoQe38czxMsnTmnhclZR PpVpK2jejmCrdCpG8IS55/a1qyLTuE3SNcfHnxBZeyEeHhStByjQ6V7xLyJlZGeyM20g+oojNAy d5Q9OHc7sWW19ebIZdW1MJtHbpv4FEQ+h4M2lyLVqVMs6G9YagQgkFrJgQI1VhVXqYJu4H5fjoe nBbzp8EnwzOoqu/qNJW8eL4Vov1WkldJYd7Rr0dHWxsESRABq9OEeqRL0MdnMEUJUmtQcsrG/kW f5aKK2U+oh9dXNTgl2ZydapCMP/mB8LSMlIwR4cxuFbdTE+W393h3xmAAcARFBX42BeiJszBJg8 M4B52HDLRDWzhV7N9lrLgjf6FPQNmi4aM8vrs0vDtJLHo3t0dRpXziFICkKDKqTy+7NuyG8sBue U03dII3k8j0I+uA== 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/gpio/gpio-pcf857x.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/drivers/gpio/gpio-pcf857x.c b/drivers/gpio/gpio-pcf857x.c index 2e5f5d7f886598318b753304e7e0efca54ff8b69..a042036803336439d8e164fcfbd0263b0e84f3a4 100644 --- a/drivers/gpio/gpio-pcf857x.c +++ b/drivers/gpio/gpio-pcf857x.c @@ -171,21 +171,24 @@ static int pcf857x_output(struct gpio_chip *chip, unsigned int offset, int value return status; } -static void pcf857x_set(struct gpio_chip *chip, unsigned int offset, int value) +static int pcf857x_set(struct gpio_chip *chip, unsigned int offset, int value) { - pcf857x_output(chip, offset, value); + return pcf857x_output(chip, offset, value); } -static void pcf857x_set_multiple(struct gpio_chip *chip, unsigned long *mask, - unsigned long *bits) +static int pcf857x_set_multiple(struct gpio_chip *chip, unsigned long *mask, + unsigned long *bits) { struct pcf857x *gpio = gpiochip_get_data(chip); + int status; mutex_lock(&gpio->lock); gpio->out &= ~*mask; gpio->out |= *bits & *mask; - gpio->write(gpio->client, gpio->out); + status = gpio->write(gpio->client, gpio->out); mutex_unlock(&gpio->lock); + + return status; } /*-------------------------------------------------------------------------*/ @@ -292,8 +295,8 @@ static int pcf857x_probe(struct i2c_client *client) gpio->chip.owner = THIS_MODULE; gpio->chip.get = pcf857x_get; gpio->chip.get_multiple = pcf857x_get_multiple; - gpio->chip.set = pcf857x_set; - gpio->chip.set_multiple = pcf857x_set_multiple; + gpio->chip.set_rv = pcf857x_set; + gpio->chip.set_multiple_rv = pcf857x_set_multiple; gpio->chip.direction_input = pcf857x_input; gpio->chip.direction_output = pcf857x_output; gpio->chip.ngpio = (uintptr_t)i2c_get_match_data(client); From patchwork Tue Jun 17 12:24:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 897777 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (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 A804E2DF3D1 for ; Tue, 17 Jun 2025 12:24:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163089; cv=none; b=Xj3dkcGir5naYTpMbcubJH3ff7OK2Z+pvPVdOmZvbfIbnF+E1QvZMtvfhKuDWqHYibyuZgMem+MQSrxa0c6qUyY9w7uclPoyum0I+lIKcpfHQk1ALqqLpbkv+VtL0vGIyhgsyXk9sJxMfNLuXsqsp3L+fZJbp+AcFw6KgiU51hg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163089; c=relaxed/simple; bh=bxD8Wln+1c1gwTOx2BtC9yxuB8rPQnYC6Cyew1Zz7wg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rj39BoOqYv2VSIKH6S+Nbs0FZc1oHoFKKn4nyVFN2xrTcn9IFBzD3VUaHpM0E3av8DOMRiFWZNLYaPws4lInKEE7CkGcz1ATnv2gSs+zDZzuPd2c6/KFdsWXyD35bA4pAwd0ea5P/OlWutx6z+slMsuYJYC2cROT6VaOHo2ZRjs= 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=mxySF/Tj; arc=none smtp.client-ip=209.85.128.49 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="mxySF/Tj" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-451ebd3d149so37415135e9.2 for ; Tue, 17 Jun 2025 05:24:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1750163086; x=1750767886; 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=QYBRyPsDGU996dnyWDGUWt7Y308dv2asqUkMv7/NV4k=; b=mxySF/Tj82NdWyaYtRcuorlzqeisO5os3ZX7XakLbdXKbF39dWaeNFGV90x5ZcuUXd 3n+oCu1fOL+SlAQzkiJ+0euql7huwZrWBtNHsarIixiWl80ji7kmsg4y4Y1EKAzZPVrZ aXsALG+//gQC6CdplZO4B2Dec5mcDNCSQcMPgK8H0MAprxscgX7v3xKmEZd9AkCLq43t QKcEhnaWnNsNbYLFh+oK6aYhzluwnB3/d28C8cuHg71V61EqmqFZ5dRaLuCL8q5m+J87 FgsrOBVv9msRQz0oWohoABByvZF/v9Ba128Lk1go6nnJjnBaOvSvjUuxQaU6nSRYcVEx Hgaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750163086; x=1750767886; 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=QYBRyPsDGU996dnyWDGUWt7Y308dv2asqUkMv7/NV4k=; b=HzYtak6lpyutzA9K+cwqLqz/8Ef6bSjuvhhO2AbwKPQ4HKc8HcZA8DYnhy8VpSwBgH U+zdXMUmemaa96GPfR3SeapgwXnX7lbA9P+r5fcFG7WlIZ5+mwKYgXsWdcSB6xkWRhvD AVLrJK56s0TfWt/629XJjfjhRhc8waw8HhvuO4iXWjZDSsyfpOAt+dL6X1C+dzNhCpW7 jbC0307F8HtEl1tDvSQGN2Zp6+uOAHcN0C31mRbRrCubzWyxsA8Dx7nez4gBN1a9hh4q 0mE90SwzpqwL+c+NshUx0CUzC2J+9GCsR7FroX7hHdahXSpcKs0PmNObNREdm+F6ZUt7 ceow== X-Gm-Message-State: AOJu0Yw35jLuy/ZLmS8QXMRfWFT6FYPp0riaxZWOX7JgJ+uXosPO4F/U pQGktQs5ura0DQgMRTQhgdfOpr2Dw7rHoKirabl15yb0CVWBm/LguNeMr46FOyGZ5WbMPMTqnXw 7RI0Iw3Y= X-Gm-Gg: ASbGncvGK1qjCDm7ICfoikPfHgjGJEfOozby2HebC8hNT+6yVZZTdXLh/bD+siy4kla zdJwTBqv7yUV1fXV4XXMunnIxzU+EiJP8O5rPXlWvR2VpbBV4zfseWQ4q2CgEyv0wcwPZ8BGjQS dNZnCYqOpAoQPNHRMQjIH3lsfxlLJAHA7XsLMg6HN/J/GkMtxLR+J7b4G+w69gbD5apT13s2j+d 9ViVHIDx+RGpym25zhUayD9EKQ40sByJZ5L607lMs4PUGdMZg+4YnGdnfC/dam+NYkVWBtzqaLO xLX9Z42B0J6ingdmCoGg1977dUYSzmciAGuDlsg7Q5OJoAAr/nVLGf8I X-Google-Smtp-Source: AGHT+IFEY3qQ+Fglb9jg1ZhkUiIqMjijlbm8dxytbSflltEzbMtmudgpYXUBSqKCL5VsPPsVFxCG2Q== X-Received: by 2002:a05:600c:8509:b0:450:cf46:5510 with SMTP id 5b1f17b1804b1-4533cb53b27mr117448275e9.29.1750163085919; Tue, 17 Jun 2025 05:24:45 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:90df:ded7:9cbf:4074]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45320562afbsm173816135e9.1.2025.06.17.05.24.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 05:24:45 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 17 Jun 2025 14:24:26 +0200 Subject: [PATCH 04/12] gpio: pl061: 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: <20250617-gpiochip-set-rv-gpio-v1-4-903703881fa2@linaro.org> References: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> In-Reply-To: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> To: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Orson Zhai , Baolin Wang , Chunyan Zhang , Robert Jarzmik , Heiko Stuebner Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1498; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=a1x5aRsn4kpz4DTuXQ3tdXS/YzbAV4e8kj3b/qk6D/4=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoUV6GIgRCEm14nPNHr3CVnIwUGcS41bLz59WAs TXEwqwLAcCJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaFFehgAKCRARpy6gFHHX cs0dEADc+nUolHMR19/mMV5qvmdBmtTJhRhknvVpHeM0XbGqpCZ7wGj6z0n8OFOGOBrqIN3vXbi 0ZGL9wl2G1YDE42b2BWtFDJSjYhKoMMjx9KePbUSulFNhC7pb1fAxR+N3v31drUQ2jUO8Q/ZVI9 I2fdKO60nm0ExTLDeoJZfaQZoy7/3sTkNrVWW/9YtP/1hvw/QwqxGc3nq+BWozFQPcHoK7mOvew ldZBEzrS5qqC1a01nuQAgIEdB7DeeCvSo0EXDrrXutqcYNK2afxhfYZeUTriuhbXdp4qupp9err i0yEmM76PTVq5zfZD0xdQ4bKxH09NwMcaTZ4hwl0n3N8G1aFf76HGqY7INud5TBW/K2ana5kYb+ wEBuCD+sOThcDNDSc8TwqvLXb22tImhUfaKKr8ULqAbPvCE5YWzH7SkPBabm5T0VSJIEm3ugyC+ M37yUgz2E6jHwiJ04F9U4aZYLId1h/UfRoLZrOnSQNeCY2oyz2olOiCpwsH1Ctuxk6On6FQIXc/ SOK95xbuw0JifvRteSfWF9wqQjzNDJ6Lf9VoPE0AF8HaieKhzHW5BoTbsDo8nWpazpjGr03WvA/ DQjWBu7sHs0vgHmXxbyGw5kdDpzysV/vFPtzli1F3wl9G/irY+PTVBcR7sUbr1rmWTdNOmc7UzD sfNnPEFJzOHU+Aw== 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/gpio/gpio-pl061.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpio/gpio-pl061.c b/drivers/gpio/gpio-pl061.c index 1c273727ffa3ac54d0f1e66bd6efb784d2a8604e..98cfac4eac85295915b801a62d62c8d78f6cbc4a 100644 --- a/drivers/gpio/gpio-pl061.c +++ b/drivers/gpio/gpio-pl061.c @@ -115,11 +115,13 @@ static int pl061_get_value(struct gpio_chip *gc, unsigned offset) return !!readb(pl061->base + (BIT(offset + 2))); } -static void pl061_set_value(struct gpio_chip *gc, unsigned offset, int value) +static int pl061_set_value(struct gpio_chip *gc, unsigned int offset, int value) { struct pl061 *pl061 = gpiochip_get_data(gc); writeb(!!value << offset, pl061->base + (BIT(offset + 2))); + + return 0; } static int pl061_irq_type(struct irq_data *d, unsigned trigger) @@ -328,7 +330,7 @@ static int pl061_probe(struct amba_device *adev, const struct amba_id *id) pl061->gc.direction_input = pl061_direction_input; pl061->gc.direction_output = pl061_direction_output; pl061->gc.get = pl061_get_value; - pl061->gc.set = pl061_set_value; + pl061->gc.set_rv = pl061_set_value; pl061->gc.ngpio = PL061_GPIO_NR; pl061->gc.label = dev_name(dev); pl061->gc.parent = dev; From patchwork Tue Jun 17 12:24:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 897776 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 F0D242E6D36 for ; Tue, 17 Jun 2025 12:24:49 +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=1750163091; cv=none; b=JU8Al7jvUuxrrS0HjU8IYahNbDff3pCp3AUbbIwdMrMXGijofCFZG9pq4yrT4tzyTufvSjniyNws2r2cj4/+GZC1FgLqmhS9VdfwKGKFVslassYAYP3yLmY65JVAdFDs5kRrm9iz5LAOkr9fraKiDgZje5FQvdFaLLvlLoWNYiA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163091; c=relaxed/simple; bh=TIbLTydFbIxMUGka9nMFS3KxZgZxnuWfV2GjJh3DcXg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=n0vxntPcVsKEjs+Erh3wO+Tx4EtPVBHi6Da4856d6NBr1fF0aTkJtVyqonU6df6H3sCZXL0hgDOu9dddnc0hZAhVHglrzOnGeT9Z/iz8p3UL6JWY2V7DiY4WT7gG7nwXukedcZJ77bEgL0p7Ou/kFgcqDnqkwbTnPmbmmIM584U= 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=HAf+3WaN; 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="HAf+3WaN" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-441ab63a415so65092015e9.3 for ; Tue, 17 Jun 2025 05:24:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1750163088; x=1750767888; 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=rBA3kzrSkCDXqL/qmFtpqMrbH8iiG3hu1F80uNaFdYQ=; b=HAf+3WaNaIkeA3s5LTvHxIKpT4cJOjuIY79m8X8/UKuupPtj5giANzCX4umC3igcKq oOShmMpcIwZSXJEUXD/7VEE35CB/YPOGEu9soY1Z1Ihm5+pIIbzDQmMghLN4PZcubMUu U7/Mn8/QCXizn/yeFzqJCb3n+ls0TmyNU4BVVPNKExbst4zipJ00lXVe3vePT7qC2YuU eHo+lxt1Su3NXeNOdo2+JciDp28Z4jTxP26c+4af0ipd4nbSYWCrCtAkrXqefQ9qE2lF DQGCpp5lYnH9Kbq7l3RLBsv1Cr7dDZJ6ABenqRD1gVDw/5hXJaSXT4vegB9NtGUQL0bb dU8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750163088; x=1750767888; 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=rBA3kzrSkCDXqL/qmFtpqMrbH8iiG3hu1F80uNaFdYQ=; b=mtOGS08DtgDwrlh5SD/vc4xedIFN3mhd4fFm3QOXIzWf5wlurEIxhdlo1GeqD5BhgW XOgg1MBeYoIhPF5m3uk67exCO0AfpJpWxJ1ZTNXa/WnMSn+FW9jOl7EOHZkHecAWYC/n jtClWoppW/jYpQvmu62YjbIBTgKj/UaMyZ4G5ZgjL9za/cmOvtFBVknDF2yrQlaTATGJ wEyHTAfxocp8NEQDGZmcaTmcLZMonH6Y2CnOG9AJYhQlQLiEfy+1VeHJdHOU2lf+fbqR x1MSRV9Jj3CWn01F5ozVSrSo59KXCR7jK48Hw4PgS/ORJwS2wiAe9U8a0WDSOMOZUK4F nKEg== X-Gm-Message-State: AOJu0YxRDK52ZPIKxY0LCjg1D9aj4CuJP3ZJEpCTEqhnJL6CKwl+4Z9t JmWDls3TlpnjvsFJlkLj9UTcCSstcY/TIY8mv8h2XftdvwfiaheH6/RvgUvrTdeaxck= X-Gm-Gg: ASbGncvX71PuuZ0smPLGSe7/wOYsdMI4+eGPaW9pjiFqT6N+b3nOThJe6KAYWrnApbh 6ZzNEHamuk/r/LBnT5X5ATEByK3Dv9bmEr2etwdg1P1kY8rfpYhZHLW2RMV8OK3rl5h7H8q21rI 2jEOG7DhrX/uGELfXQMlkTee7paHRd6e9BMXB6EB843/5HcSPdZ1/rDEGHMNoCwVe2mCzRcLoAz kjGKLCe7wZisrsfBL8D30OHO7yDgj5aX+Dvhe9V9h8d81PGykn5K+2JyCC9/p9X0ew3ObmWLLMw xROS9ylEVsFkncjyQxQEgAij70GGAldynzp8LRYpqXY9jFoL2c7MqLSN X-Google-Smtp-Source: AGHT+IFM4CB6egWygK88t1cCzbwx8tBuCLfY0nKXhXb0rSxlnrlGoYbjnFIM6NMIfDKL54dPCw7nOA== X-Received: by 2002:a05:600c:6989:b0:442:e147:bea6 with SMTP id 5b1f17b1804b1-4533ca54d9bmr129406995e9.11.1750163088388; Tue, 17 Jun 2025 05:24:48 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:90df:ded7:9cbf:4074]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45320562afbsm173816135e9.1.2025.06.17.05.24.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 05:24:47 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 17 Jun 2025 14:24:28 +0200 Subject: [PATCH 06/12] gpio: pxa: 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: <20250617-gpiochip-set-rv-gpio-v1-6-903703881fa2@linaro.org> References: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> In-Reply-To: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> To: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Orson Zhai , Baolin Wang , Chunyan Zhang , Robert Jarzmik , Heiko Stuebner Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1502; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=B+Qz2OspKJ91xFNTEdAqgmxdOA/mnHzp8sm3HNk30eo=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoUV6H5nCXll2tmzt32qwVJ5b3oXA1BlRJjKdG9 qyMmbsQkzKJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaFFehwAKCRARpy6gFHHX crYrEACAJfGgkYJZ/u6TIzjXF0YEJwOtUfXB3u9+xQg83jnj0Sz1G2H/QIRldbaqCd8kUmXDI65 U0eFZ619I553u6CBkPVrChl3ZZpXtUKtGWeB6ManlL30/0d31D70RtVTKbKWHN4SkTFXOUwr61V us0hdDZcVXONIlywiB7f9yUPaJb+SEygs3L2h2URtZ9XF7mwRvxRQVJ9HKe1sSnkEGczZDCQ+82 Zi+gBEJnqqEK6cyMQmdBTYAPcSLi+GT5y6AHFGh50EKfqzjR9wEvwZ5E5GrfQM+SNxZVEXYL64v SbJH6gq+aHB9TwUiVoFRA6GI5ex4dq0Dx+R6b/k+ObpgcBKB0fCm5OCACmniQ4J0nHwpFNe69/Q 0/MXLF/xPeNfTqpMFjRSoYsHf5OJTFyidc9WUKOkPWLakCilxZVYLXovCTdgyaGpr2u5H01mNFO gaTuYuqpVkMmeGw2KEwr4qaQaQeb+yBpGBcKNt6ntqnpsRfMz1sIgF4/s9yJZddJ9NOA8xWR/VN OXZ2p/rlEhoTCRH1kmNm6TqTFs72FvtA7UXobCt3Ya+NAIr6F7X9iLX0CEaY0w78ZnJWqkUxlBJ EQQaPvVZWslahNf+l5I7HxiDZ3oB5l6gkBTIG66RkME6zNBACqjO0X8zT1wS4UiXp+ChfLA8HBF /Ooc4sXgrvhot6g== 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/gpio/gpio-pxa.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/gpio/gpio-pxa.c b/drivers/gpio/gpio-pxa.c index 131ab79ebce7555313fd93b3ebd80582d1b9327d..13f7da2a9486428bb8d1d44d2caf9f21f82cbca5 100644 --- a/drivers/gpio/gpio-pxa.c +++ b/drivers/gpio/gpio-pxa.c @@ -315,12 +315,14 @@ static int pxa_gpio_get(struct gpio_chip *chip, unsigned offset) return !!(gplr & GPIO_bit(offset)); } -static void pxa_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int pxa_gpio_set(struct gpio_chip *chip, unsigned int offset, int value) { void __iomem *base = gpio_bank_base(chip, offset); writel_relaxed(GPIO_bit(offset), base + (value ? GPSR_OFFSET : GPCR_OFFSET)); + + return 0; } #ifdef CONFIG_OF_GPIO @@ -353,7 +355,7 @@ static int pxa_init_gpio_chip(struct pxa_gpio_chip *pchip, int ngpio, void __iom pchip->chip.direction_input = pxa_gpio_direction_input; pchip->chip.direction_output = pxa_gpio_direction_output; pchip->chip.get = pxa_gpio_get; - pchip->chip.set = pxa_gpio_set; + pchip->chip.set_rv = pxa_gpio_set; pchip->chip.to_irq = pxa_gpio_to_irq; pchip->chip.ngpio = ngpio; pchip->chip.request = gpiochip_generic_request; From patchwork Tue Jun 17 12:24: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: 897775 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 362CF2DBF69 for ; Tue, 17 Jun 2025 12:24:51 +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=1750163093; cv=none; b=iSigr41Gfxq3zaArhorR+cEiJh/WtEMNYOGEbm8J2T2XvFQsWVAYxIHsJiRdO8TDj37rh9UFpOg2i5Vu0hbrkveIGlCzviddcqUKT8OqZHKurcShoF9geEKNL6Sue9rUT1RvKAgRvgBmSbHX2v1Y83rAVG8FUu8LtYB1rf8Y+Zs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163093; c=relaxed/simple; bh=9Zaxzyv360mf7Zwzu4QdvYgk1SpKcZsIH3LbMJy1S68=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=d3iQF5pjFzDggyWGbbLR3U2zXYwVdFroE+fkCzWn4MRG5O/if/+r3UBa84fVMXROWfD/5fBaAVmE8NtK7nvoTCNR3hAQtln/+9VGzl9JZ4lGw3LOW+Pn2pdM+VADD/zdwBnCYjCLmyeKJbA8W6W94tnQqsualw8+ra/CSOxu1m4= 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=Lgskz1BK; 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="Lgskz1BK" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-450cea01b9cso26220735e9.0 for ; Tue, 17 Jun 2025 05:24:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1750163090; x=1750767890; 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=AMHaAkSc/mi83kBCslhtD5+Hl3KktEIZpzS91Yh6h2M=; b=Lgskz1BKoW73PYbh135ygjCj0GIwLc5EonuJ/JdlUBLeGVZRo+cFHTckDkkg0S59qD G5PX5nCyFu16eCL8iaagBU1w78x1k66ujmLeuJkJmOSnBoiqrC4zEzz29sjDONAElo4U NxGz2yyzfGGEDuVKrlkCE+Y4vS3DvkOdhqG3cUlsqohl9nxsPU160YDQ9V2ukU/m+HnN hpLnjgKgfo3CnRVlNrT/zlZcQJEhf5pn4Rsc9v9okmFsbOVvcdxjtId4ShGKCCcvx2kO SU+MCmC4nEeLA7Xs+dWHhY3u89Yyx14utxtzVcoNlinBxJDi2HJ9pS9D42iz1M/zXHEK wGrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750163090; x=1750767890; 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=AMHaAkSc/mi83kBCslhtD5+Hl3KktEIZpzS91Yh6h2M=; b=Qrje4+Wuz2ZobPZ/giWWgit3d/O0OvNiNzRnM5oH0tWJBivfjCbiazss15PMQPXN/R kEqxzVgs0Eoehi/yXW9cDFJFwuZ65vp+7MXAm7PX+dIXdwlPq0iSUvTi9wfbfXqZjD5S PGLejZNFgKsb956hVJp/y3qWeOnOtCc1BExBqGpjPqX1QF0Bu8M8w1doaz3RudG5qBp8 0jzmXfRCY6406Mh0RS95BeoNkALJwmeeGmFaxOlZ3RtA9jkfSgVpgKyaiWFan4REyWSe a2C2xbVydGjdJOPo2Jot+JfbvV+C5OAdmXORYBm8Mt0es0orUzh1RXPhCxmntVafFtCc +KWw== X-Gm-Message-State: AOJu0YzUAacauhHs+u/+w7nmPO/nK4fDpxYe87z89J9KuwsvRl3Goyc7 DYjaNiohoGa3B4Zmm89Qo9q1P8wMdxJW3uv+GVnYWFMAclZL8gvT1eAcQ7pvI+AXcuvKfpmBlXy cQkVB4QM= X-Gm-Gg: ASbGnctMssYcakLIUNiZbRJpeXH2uCHw3UETICZdujvYIxTk7ZS8bo07rnlDJKLDYW5 3kLf9ggW4KqcmHCNXjRciz7Vj0+8cATuz+WTCugQHQQtUPDejvinxvwnhhG3BBg/jmT4aJSXese e9/1gav0zVg89q8Hfij8xrdBQ6T5KpQbeF67Fa/70y7atdUIBn5ducXI/ErP2IwD2YAKs3ueFl/ Wck/PtlwaPVY8w0MMPqP11gbqW2zBSagUA2LuzPR+fj9QOC959p0SOaoVhqHHVjHmJZC91lL9Ou zO4RFLPpNr8GwjHg+ATB3oVRRaZJdtWhUQBN931fU3vAgfLaVu75Hhvr X-Google-Smtp-Source: AGHT+IFmKyHtiTnK3f0MnCL25OY403d6ySVCu8IrYmqOaI/BNa9QItLKGnF8DD4RrTrk/qX7jMZHBg== X-Received: by 2002:a05:600c:6211:b0:43c:f8fe:dd82 with SMTP id 5b1f17b1804b1-4533cab86f3mr122978975e9.18.1750163090447; Tue, 17 Jun 2025 05:24:50 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:90df:ded7:9cbf:4074]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45320562afbsm173816135e9.1.2025.06.17.05.24.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 05:24:50 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 17 Jun 2025 14:24:30 +0200 Subject: [PATCH 08/12] gpio: rdc321x: 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: <20250617-gpiochip-set-rv-gpio-v1-8-903703881fa2@linaro.org> References: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> In-Reply-To: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> To: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Orson Zhai , Baolin Wang , Chunyan Zhang , Robert Jarzmik , Heiko Stuebner Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1631; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=/FTgaK1cWGc0DF5sQuXKwdEauaSqv0NFqrELnWAzquo=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoUV6HxI/Kng34JgzZDWKYQKf8SOY7GXUJq2cX/ QrIk9Wh/OmJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaFFehwAKCRARpy6gFHHX ckXGD/4/iUM3v0T5QVM5vI2RC3Ut9NdycYDtiCIwbZFmIIZxah5HGVAYFj4hHNnnDmHgbOPKpbJ fvfFgQvz45DeYQkCt4pQiGZv0Qd/SqIgbJyYhc5qEtrMsyae4rhudlBYsW1omeeWw3WKZbpYJZa H+ZxUmGbPpRYWJ00ByGxGN7U0XwLEnGzdN9MFBTbMF1l2Skr6JR5xW7GSYEd8W0DUF+cKhHGlkG tTM+8sTClgTZKEhTwPU4xRm5iPN7WOjcMk5DmY0mG1UEXbySHcesZPEJNmM21B1+92IRk2JNe2H /VAEi7V/WkptmnNksEJ69Il01MaFBxMz4pxCQitD1TitfnJFmPkLjrzKbdrn3TyYmUv1CS7Pwb5 53BODlK5dE7lx4Aa7oalaaEuB9jUi95cbAT1NggaAMPcYGEtV4/osEVsgvFJgHmjqaNyMdGR2iM u/8qM+PA9O3kTmWneQ3nO2PYpET16aDMNTOLjSCwKd2tTxzIdjoyuANw12R51w7RQtzXyGNmcKm JK0IqnHKNBngn1OgNpXIZg/JEi/UpIzFhPzRsekoD4UsX/FCcFFWQCHncvwQ2OxaBBGY6qcMZll HdBrKU+g5SxgCmCazOJbDue5kkTg2eLpczzEwQyUiVYZqmBmf669E2jH+28FaLh6L+A5WIdC8L6 E+2w4xVaUPZMexQ== 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/gpio/gpio-rdc321x.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/gpio/gpio-rdc321x.c b/drivers/gpio/gpio-rdc321x.c index ec7fb9220a4747fad5dfdb88e25e68d2a104e37a..a75ed8021de57db122938e4736c3ac994bcdd2d1 100644 --- a/drivers/gpio/gpio-rdc321x.c +++ b/drivers/gpio/gpio-rdc321x.c @@ -64,8 +64,8 @@ static void rdc_gpio_set_value_impl(struct gpio_chip *chip, } /* set GPIO pin to value */ -static void rdc_gpio_set_value(struct gpio_chip *chip, - unsigned gpio, int value) +static int rdc_gpio_set_value(struct gpio_chip *chip, unsigned int gpio, + int value) { struct rdc321x_gpio *gpch; @@ -73,6 +73,8 @@ static void rdc_gpio_set_value(struct gpio_chip *chip, spin_lock(&gpch->lock); rdc_gpio_set_value_impl(chip, gpio, value); spin_unlock(&gpch->lock); + + return 0; } static int rdc_gpio_config(struct gpio_chip *chip, @@ -157,7 +159,7 @@ static int rdc321x_gpio_probe(struct platform_device *pdev) rdc321x_gpio_dev->chip.direction_input = rdc_gpio_direction_input; rdc321x_gpio_dev->chip.direction_output = rdc_gpio_config; rdc321x_gpio_dev->chip.get = rdc_gpio_get_value; - rdc321x_gpio_dev->chip.set = rdc_gpio_set_value; + rdc321x_gpio_dev->chip.set_rv = rdc_gpio_set_value; rdc321x_gpio_dev->chip.base = 0; rdc321x_gpio_dev->chip.ngpio = pdata->max_gpios; From patchwork Tue Jun 17 12:24:32 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 897774 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (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 E789A2E92B3 for ; Tue, 17 Jun 2025 12:24:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163095; cv=none; b=cgeyt3478pV2T2GE8QVIjiDHcqqZuuu2vby1oOS8HkHVC7RQDIqCDXdAQYC2wgKEeik92bGsIN39HCsVudwdEiR2PUkO7U9cMg6eI6nTRDAcYONWuoSXz90t0sgg/BJ//7idxggaq1spZOct2NRN1029Xv736dXSovVNgzMfTiI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163095; c=relaxed/simple; bh=COE46zuDiGK6rLwTnt7+1d3gjUwt5RswqdYUD5pUbdE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=vGJIZTkfoso0QfLpxUj57wobOSabgmk/m7wAxa7ALTTCwWnuEYnOo5h9HMkiyCkgGFn/xE0/E9pzrdiciUPpWRQSArzq04ZmmP9yVvoINO3je2cOrk+uyGMIqTwMcsQ1MkR27Z7abtvhakGIDMC05iQBC43EXm7GmtAtPvyHKCU= 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=PvCGOxEE; arc=none smtp.client-ip=209.85.128.49 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="PvCGOxEE" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-451d6ade159so46910635e9.1 for ; Tue, 17 Jun 2025 05:24:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1750163092; x=1750767892; 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=fUxEFCxSV+En4LdALjtxQKt1K3KufAQa0J+EdQHN8Wk=; b=PvCGOxEEQr94a79NeUbIILmOsyGSMvHtZI6aYBFeaqFHxy3OctobRMF6ZA52CNaBrP xW1QCt3npM4azQ/k+1CEicTfhqb/ky3Af8M0RqW4lINOCOlVr1ZG7as+qXMjIhITE46i jpHdCClFNNmSOumybgaHdCjQsWTTmCS2VE3fmp2ZqQlfJ56xjPEDuCFayY8qGbNjRr26 8MH9L/uh7rvSAkwE+nmqzzRwBjowyW6hQ2oukxBoJVYTz16IdEtSz1znmUhnDaDciRbH vXMghfD1wbLlCF/9HXeSjSAnmEruvHn7d4uNntgAOrBYik7FCEMXB7+n0OwDFHJUR4+Z Wgag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750163092; x=1750767892; 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=fUxEFCxSV+En4LdALjtxQKt1K3KufAQa0J+EdQHN8Wk=; b=XOhR1lc7RqAsk8xRmnXVxKPvUq9//XNpW9BNM+IOWj4Z1Or+g8UuyozM8jYa4erIwN INdVr2waZWuV812aUP2hzVubzPTTn6Flplxr0LTmD8c6BKperzP7w4p3vOEK+emRpS7/ u6CaUG+amUuG/p2IZ255ckr+/6wrFhEPw+Il+AQKlyAkv/bB1mO87MQv9QcacAHx18cL UBdIc0VV4uUsWOB+SAk/XIrAtXNBK62W4cZYNzU4XczP6Ho8taL/y3tgfCDf9vuIdNkI B553/H+Lstyk+wqSKTdzdWeAFWx7nDo8M1xkYXOO5WPN5YErswPf/LDG9SmPMhBvCK7w sE8Q== X-Gm-Message-State: AOJu0Yxo8pW3tGR5ur9vq/Tx5OOxEH/ILVIG6iYNdHPNHiogK19sjR80 UAqU2UEKdGQphfjmOAbtAjY8+J2Za4LuCdZm8R+5/bhPQ99X2oRBm9iyfoj2kYcdFB4= X-Gm-Gg: ASbGnctz9Sb87fMSUN2hht77wno3swX+AvfktTzyoCENCcK+LaCy0JODnNW6B8/VmFt zd6AGvqPYTqHjPafYzDpgxQfK8BrqgTaEUoGCKIciO3W3MIrRZ4octa/rbx+OuOBUkWrIil8iAr CWbX+P4ObG1PtGDEIiujBd4jiHnqsIL6tfp5aucw89C9JF3SatpccS7ntIKNZQGPDDgtlrhVdTF MDQUm3YuqqEm+axNCe0xcNvOEyrHXs2XULubp+/SS7zqg+9kGvx7L6MsckG0fHmx8C24dG7H1dT y0NTa9dVWzjO91aiFjUcYUc6TCc2C5mrKYGYCzMjfZ8S0ngip8dXd5fP X-Google-Smtp-Source: AGHT+IGgYH+QDdfuvXiPaRleCGYB4hawdcNCoD+7SQT0TTGxbFuQ1U1ki3nSuWN7vTMRqEzg9ktwWg== X-Received: by 2002:a05:600c:4f14:b0:450:d30e:ff96 with SMTP id 5b1f17b1804b1-4533d05d802mr127973615e9.0.1750163092415; Tue, 17 Jun 2025 05:24:52 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:90df:ded7:9cbf:4074]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45320562afbsm173816135e9.1.2025.06.17.05.24.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 05:24:52 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 17 Jun 2025 14:24:32 +0200 Subject: [PATCH 10/12] gpio: rockchip: 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: <20250617-gpiochip-set-rv-gpio-v1-10-903703881fa2@linaro.org> References: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> In-Reply-To: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> To: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Orson Zhai , Baolin Wang , Chunyan Zhang , Robert Jarzmik , Heiko Stuebner Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1750; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=bJZscimERewZNLI5pGqQIjH00bD6YcA1Kc9nHnuKKr4=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoUV6INooTRzzb2rM2QZl1UnM7MKBZDkGH2R1+l +3ZOEcYOpqJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaFFeiAAKCRARpy6gFHHX cgACD/428t0VhbSsaD/sOpTRxYgjJixIbcbX+Imu1fnRwC0NDyjVSd1Ppu/1T/QJA8H96+5Hl4i IiSOqn30R4elqtKMEjyYjIKQO9nThTDDU82g94DWFqMA75uqXCEuzb27TrWkdI3y3BSpZ7InJln /f6EqcbSFl3ygCsX4e2zM8faIISbMgNsDH2E+imOPZSwXID0nYlh3+4Anct1sls0LJuJDb5CP5n feeX1GlDZttcB8DOTG4fh03a3XDE9mNvmjThVWd0uRIBWatKbT0NuMb/0V16FsSXSuUKFG22+58 0XIAhAJnT1oWWwblp9Hrz0nTqUc6LleqKCD7TW4cGeXFnKMO3xmdZliojYQLJpJG8pD4NhZhEdh g11wc9CTKxOapj+j93BDL4Z0JfN8YpTz7TBEM6MdCr5GncfqFWwc41/MhGpZT2z9WA+ILhc/mmP aumLjrTe0din4dpouMbsWDzxjCqoDPJFBass4ZvKADGq5vw45LXQdzGnzur1nWfuyuE1yDok5Sg bRZ/HgViajvE+2LHwm4Ch607XughI7JiAl9rVNlhUL2qQ5/cPjlfFa9MEI+/986p2yx/VljApYj LoFjiJ5p1flBGE5Bif0reNM2afmvMwg6xSA2kb7W9niSulMydT60OYDbBuSgXSkfBhs+IPI1lHR yUH3DYOL7hUuLPw== 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/gpio/gpio-rockchip.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/gpio/gpio-rockchip.c b/drivers/gpio/gpio-rockchip.c index 64700a003f9a17947dd38baea23a066e8c057caf..ecd60ff9e1dd1a090bfad204c8b86c4d7fb68ce7 100644 --- a/drivers/gpio/gpio-rockchip.c +++ b/drivers/gpio/gpio-rockchip.c @@ -177,8 +177,8 @@ static int rockchip_gpio_set_direction(struct gpio_chip *chip, return 0; } -static void rockchip_gpio_set(struct gpio_chip *gc, unsigned int offset, - int value) +static int rockchip_gpio_set(struct gpio_chip *gc, unsigned int offset, + int value) { struct rockchip_pin_bank *bank = gpiochip_get_data(gc); unsigned long flags; @@ -186,6 +186,8 @@ static void rockchip_gpio_set(struct gpio_chip *gc, unsigned int offset, raw_spin_lock_irqsave(&bank->slock, flags); rockchip_gpio_writel_bit(bank, offset, value, bank->gpio_regs->port_dr); raw_spin_unlock_irqrestore(&bank->slock, flags); + + return 0; } static int rockchip_gpio_get(struct gpio_chip *gc, unsigned int offset) @@ -325,7 +327,7 @@ static int rockchip_gpio_to_irq(struct gpio_chip *gc, unsigned int offset) static const struct gpio_chip rockchip_gpiolib_chip = { .request = gpiochip_generic_request, .free = gpiochip_generic_free, - .set = rockchip_gpio_set, + .set_rv = rockchip_gpio_set, .get = rockchip_gpio_get, .get_direction = rockchip_gpio_get_direction, .direction_input = rockchip_gpio_direction_input, From patchwork Tue Jun 17 12:24:34 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 897773 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 AD2712E7F33 for ; Tue, 17 Jun 2025 12:24:56 +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=1750163099; cv=none; b=TXTyAi/seq48wwmdxz6IaGgZNPzSHcSwTyGOIugzcKpsPKx3yi/imy6VcEGQX0ao4LXqcp8yrKbuTvx11iwtUIZmF7ycPMNaXX3Ej9csnQUvAxLMbWOKlEIF2hM/N/V0bqgwAIypUwGawAoQNZpgNwYL7NEn6FevAV8dGg6Dzjc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750163099; c=relaxed/simple; bh=eEv9Rs9Ob2RKbLYMX17232517BahJV9MYVei3h7Ywh0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=m4FSN+YhGudSbRW+yAx+kkT47JYqSIbCfY4NjcMwR3wW8efe32HOPBPV2gh0FuWI2y2KSZWc+5oZKFWcA+SJC45pMgATDtYBgHTrgZxOd2Zu3lo5lwDSwDHOUxHNogUrzS9dA37743ElVqFBCKy7oUcK3zIyGTQq7Gwdf5FQcRI= 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=CDmMpoXb; 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="CDmMpoXb" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-43edecbfb94so63144035e9.1 for ; Tue, 17 Jun 2025 05:24:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1750163095; x=1750767895; 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=QlDtpw6smBpfIslmsuGCGMOBJqH80dy6aXMZgZ8Sqro=; b=CDmMpoXbxEegq7QPOKmmcINarHvc8jcxc8YT36fh+03SQl/OO2MqlQxwX0XtggyF3e D+1aucq85xUt/desvwkZWRXMQAeUzCSCS+Lu/TKJSNhdPncgAS1VzJICKbzh9/vWc3Jb 45GKfuuyjpJ4U0nzaC0kXGpYfMmEQFUXroSnZ13eJ7gbvPG7XkpQ7DWe8Wl338FQ2Vm3 GHpudH1ktgXvvOaKhYjFi0uPRnTnO2bkJmkCYmkfcjDlnbWmGjCbCiLXSxXLABW2LJlF xl82wTqB8w46R8oMJwG3ZT8icTnMy4IveJokuwyiu5i5PXxrJZUNITmtZM+ZaYlt0RP+ 558Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1750163095; x=1750767895; 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=QlDtpw6smBpfIslmsuGCGMOBJqH80dy6aXMZgZ8Sqro=; b=C0pbDTRMfPSgwf1Q56EujaXig36Md2hHesOVvoXXCrD5W28B1z3CU/R1hO0qmv83Sb tOKxk1PSvNa//GkzVE+s9Bf/XrRZC4ThE7xzxY5QIM3H63Bc/kmnsBX+oTITcRuiV5XC wIBO+VbfWejm+Gcmcza0KM+eHSXnijd/yrLsFSY2GoS9ul1Z83eLHqZgYGIuNtiY5g+N ZF+HxVgsChKxDIrtj+p3sqam7r1cZxaqhEZgLDxsz3JSHo/lLChubNTO/JesjrY/DHwy S1T3RCO9qrJpIpCAfIXCL6elvZjo2eswKgA5GgIhS6SHk/U5jT4r1TOdwIkF7T7MjpXO 0jjQ== X-Gm-Message-State: AOJu0YwpGgSQaqPua7E2kOu8WJXi8uSfJDrXFkn/auKi+Q48GhWGMj1A c8IH/ikBpgHN4G1RUAAVT9mQJIq55dcM98VO3dm+AjHEumy85U8fY3gxBLUV2iftgmw= X-Gm-Gg: ASbGncsLtaUAvMhSMuB65xL+TlCcJ99jNIFO8l7hnh065J2DJqb3HyVBHaABmySzTEv T/Q7PknKqExBmY1razmaq5ROTZnHlw4nWTRSDfYUyCYapwVe9YUzowBAe9zvDB0XMNzvWfMtGHj /Vt4RgJ7BIGOWKHEt8BFtODkeDXWfIjvcqdmBvU9aOf1ZIjQx5Q/WTWvEvPntPjtwPKs6+rz4Fq PG+hTDMvARr52+j5EWjtr3pXARy0O35fYsu7bbdbuaH+SWtTjqWwoacTFqZ4xhk48Q1V00REV8k a+oIdTOvJECHlXwmx9kpKSSkmaUnZ4O1Z7VkcJzjifSNkaJ5ilC6qPKp X-Google-Smtp-Source: AGHT+IFsTWQIKZSJGIY/CXmS6lZIJ3ZenpODtlq8yK7uNveBH+mmtvLiQ+k6AgHQE4CwrhnHTwO8nw== X-Received: by 2002:a05:6000:2382:b0:3a5:3bdd:6cfe with SMTP id ffacd0b85a97d-3a57237e161mr12452604f8f.26.1750163094424; Tue, 17 Jun 2025 05:24:54 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:90df:ded7:9cbf:4074]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-45320562afbsm173816135e9.1.2025.06.17.05.24.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Jun 2025 05:24:53 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 17 Jun 2025 14:24:34 +0200 Subject: [PATCH 12/12] gpio: sa1100: 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: <20250617-gpiochip-set-rv-gpio-v1-12-903703881fa2@linaro.org> References: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> In-Reply-To: <20250617-gpiochip-set-rv-gpio-v1-0-903703881fa2@linaro.org> To: Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Orson Zhai , Baolin Wang , Chunyan Zhang , Robert Jarzmik , Heiko Stuebner Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, Bartosz Golaszewski X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1424; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=c4Isjx61IsXwy1L10lydMFlqZBELu3z3ba+yBwH+QRc=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBoUV6Ipp+OYSt+ikqj2UvGKKNMCmar+1zqMNgVE W9N6iQSuQGJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCaFFeiAAKCRARpy6gFHHX chTeD/9I14P9RY3COUbCjQedgou7h73GVSmQAfpsU1+oR9NX67oKSF9DMr17US1TFf2xZifaFyB +A7PUaOjWr19fNg2617gbOaCxUfM1fd75XPrCYVHaR6PUWMzfvo96J35H4Aq1E4rp3nv6j8oYnp 39K7mMEvi66do04dqvXYuAp3nGAPJ6+P7RXanRnhC0jbJ5JbGuJdG2pSH4gX8+YW3cc91WVrb7d 4GxpxIYGWe0bGcDqZ17neqzVyzrpEluCO/VrPr/e81YyaUppzx9GoGtYMBXtNCd80QGyeAzfkOr FavT1ZDpRsyWPsF7c+aJ5Lk2ADy5FyToc5wtk1/IEhbCOc0ecPrrl28VY8mITwHwVpRtPIb48LK 40+TDflwhqQkl4wvcZUGrZQJYaGEALsIizpjR0LRHe/nQxSHyjrudyn6DrrgfwWkzY9UBJsQMA8 skB+VxmtuPO4gOKaUTkFlDa+LkasazYamiCrWNrJvXwY6PWop8tn0K8svtQ6P8S5HWlzSK0N6UZ Rxn9y/tS3F6w2S7c6XQTEEvtzi1V53Z+wxP2I/VELpg0AZVFcM1+55C+GTwbWshUf1qcMltwGSP vupnX/UiKGo9M3TMglMKZkB2CyR3GvqKjQ2rjUXGTgNK2IXSeKzrZbsyRGkQiOJDgGbpYuU5p4B SKaO1D2IiPKNZTw== 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/gpio/gpio-sa1100.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/gpio/gpio-sa1100.c b/drivers/gpio/gpio-sa1100.c index 3f3ee36bc3cb19a7baf530def0575d2ff09dd3c5..e9d054d78ccb8485b9f662fcec385fe0d0edc0d7 100644 --- a/drivers/gpio/gpio-sa1100.c +++ b/drivers/gpio/gpio-sa1100.c @@ -43,11 +43,14 @@ static int sa1100_gpio_get(struct gpio_chip *chip, unsigned offset) BIT(offset); } -static void sa1100_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int sa1100_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { int reg = value ? R_GPSR : R_GPCR; writel_relaxed(BIT(offset), sa1100_gpio_chip(chip)->membase + reg); + + return 0; } static int sa1100_get_direction(struct gpio_chip *chip, unsigned offset) @@ -96,7 +99,7 @@ static struct sa1100_gpio_chip sa1100_gpio_chip = { .get_direction = sa1100_get_direction, .direction_input = sa1100_direction_input, .direction_output = sa1100_direction_output, - .set = sa1100_gpio_set, + .set_rv = sa1100_gpio_set, .get = sa1100_gpio_get, .to_irq = sa1100_to_irq, .base = 0,