From patchwork Mon Apr 7 07:19:10 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 878808 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1996122ACF2 for ; Mon, 7 Apr 2025 07:19:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744010364; cv=none; b=gfU4Ww1qCMWNlkywLUkSUKlMnw5e9OdL+a3QJ0KKuLa/wiaf7B41kqTcVCwqLfROp4kWeOcGVFdgG6qXS0qjmfGDwtnQ7XmlfviyRmBEpTNmWTM0ZOBqczK2vF5jnnhR8Zp72VSk7OwBjPKXG3CNPXzyQdmIRhV8chz6jYjDppU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744010364; c=relaxed/simple; bh=Q2hvduva6KqQkHASyRGukCcsvLKULC9rmnwEVzjrJTc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=WZtQHsLzli8DW7dwK1zqow+hL5FvN2YignApZtP/jEVYbbGUOAJ7/uWXVBsIXulzHledyCMWcgHnWYQw2baadV6YcB2MVXmdQn4l0bv23SMg8j3XFg79urM+auwB8TqvayMZWFSfk8HQEqtj0WZTTOzq6QaCB9/BB2sRwDvUw3c= 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=oLWxQaFp; arc=none smtp.client-ip=209.85.128.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="oLWxQaFp" Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-43cfe574976so26704245e9.1 for ; Mon, 07 Apr 2025 00:19:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744010361; x=1744615161; 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=ibROZn0IFJz5QzV4WaY8wi22jP2cRYC3gjXYgtkdD7g=; b=oLWxQaFp+C3VxZ46ZZNGEOfNKpcJtHTU846ls9eWtPRc6ZudtRu/S4xW6pmiDPxsAP 3Xowt/EEScMq7ChRnbkj7Gggyt6N0Ko2CHdHLeegxaNDcRBYscwHDLYL3bZRuYw1fEYs cBCOFtWXg0XBD79p22KAeT/lfKXWxkdl3Fb1Km3oRt3pB3LjAjy27xJq9ooUV3IbmvFt U/vBI+J3k9bI6vbrWM9xJy7v54Qj0HuFJDvthXHALNhNU+huO2OPD6tlm3FnUIM8qniH KPsT+WXu4WOb6W54u2iHaPLixAvcV+egaJVKB2YgnBcBrLwv5uxLOz54wgcJfcabit7J U5rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744010361; x=1744615161; 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=ibROZn0IFJz5QzV4WaY8wi22jP2cRYC3gjXYgtkdD7g=; b=ZQD6ttwHtzr+Up+Kk0JxienlUTVlwXUD2GT5rLKqFXcSUvC3F4dlsnkSq5X1tuSLcj 2im8fBV4tQx1Jl+VkJ0vgA9tVuKcYxAjyhjRdCWcSvGohmi7K1t/PTb5D+Gny3vXLbbk HIaUkiXcyvithvnAcHoy5guRax6GQQXzJcy0ag6rtK7LWqpbcqzdy2HLYs4hBV0nEasu GzgjmTMlWquC25L+PYPSWhmI/g03Ei2/md4G7cLaOt0FXQPQnp854abDuWVRodrt+pXP OzwFjEnudtXAJPPv3I71LixuKgnvfLuQcRNN703RvIaGaYJ1I7Fwic7tD+fP3WgmQNbJ qcDQ== X-Forwarded-Encrypted: i=1; AJvYcCU470IVc6EUXPwswSfB+6OJhj7F8G8HpQjidbOG5UyngRqc9KH1Kex50mYNH6xtGRLZulKWiwZpW0oR@vger.kernel.org X-Gm-Message-State: AOJu0YzjsDEpk3ppjIajfQQkmQNcknVf8eI45+eXgrBMZUAQi4hjz9nO xnAGOprPfpjSWtrR4WL0pbNrBpIB/WpShdyPVLSjXD+00giJFugANhAMi3Z+3J/X7z64KEoAjii u8JM= X-Gm-Gg: ASbGncv7BEpFB+dgCGqB1R1nyxqSYlAal5iAEwTGFP50cvTUr2he9Rs4wGhHhnj8Ir/ BlOtzFgiAapthT/83xU718deQPS4HuGPmpZKEknduLAA9ZnCXZJ4wHPv0fCG4D+3MZ4V4AmFPu5 PpdittWWWrlW2tdtHV/gIl/WHVomvGYh5kkcSDp3Jt+22+FJz9PQW6vlHg0qJpBlmg1ZiuTH/jD i5t3cMgpwg53azCqce3MKgxhtq5jMlM2I0+FNb9sImL9mWApQZBPs9NwcPyuyb3fFR07rMMmlhS 67yVXf3eWtPqh1jLYQOmBifjUvu3T/QRmwyAh1R/6I+UwoHd X-Google-Smtp-Source: AGHT+IEkHVJgOyU9xGp655NX5EHCzYygkvYDzVBi2Npjvs/0OWrQOPdns3JjSlF95Cj2KJnmKf8UhA== X-Received: by 2002:a05:600c:198b:b0:43c:f1b8:16ad with SMTP id 5b1f17b1804b1-43ecfa0572cmr131452905e9.30.1744010353699; Mon, 07 Apr 2025 00:19:13 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8c64:734d:705a:39a7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec364c959sm120215145e9.25.2025.04.07.00.19.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Apr 2025 00:19:12 -0700 (PDT) From: Bartosz Golaszewski Date: Mon, 07 Apr 2025 09:19:10 +0200 Subject: [PATCH 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: <20250407-gpiochip-set-rv-input-v1-1-a8b45b18e79c@linaro.org> References: <20250407-gpiochip-set-rv-input-v1-0-a8b45b18e79c@linaro.org> In-Reply-To: <20250407-gpiochip-set-rv-input-v1-0-a8b45b18e79c@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.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1714; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=foyELHbizbcWk/j9r8xiniRZm26jVuqeFRwl7mGDslU=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn83xvMsVuyrAN8UuFJvWiCgwJIhVanOjs5RyNU f6v6R7ldHKJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/N8bwAKCRARpy6gFHHX cjBhEADJTqfjnpnZK+R+cF6dWcfSD6GmueJNC9Q1SYVFVHW+TQvc3mi2GfaIHJIqqkmrqMSa7VV LWzNtodZD6j9I49JZvliGWrbph/MS2MniyULfTw/GMwmhPwZYpi9g5+4cwopCvfPbMUouldhvUO cp8vdggCPeBpOaWx/AmYIEeSB/Oy8RofO4vsuvh5/elW3GueigH8vQlas2CQYBndd0kk8OEgdZY e4/wFB5pNg5mKqxB7byMuFhmkDtdSEHWP+O1H5+66MQVXNJU/Iy++0DvU1fQJZumxIZxQPIFXCb k9yOgd6MtU4N3gcM5dtjsIt+BIVmmn+VDbGrlIvJrk6AmyD0JdtgwDITtnWE5BQTCLkbDtZXM8b q+B+ct9iHNr54/R3EPgziIWcCf7cW/FrGqWZE2g3gq/NVmo42KTfZxcY6L6BfW+N6QlI2UtiThG 62dx7KHW75jBQTWMU1nC6IX+5KC4S6XtY881B8phngJLNcmh3c9itLogh95f229if6u/ktqZIBK Mh9Tx8iQMLEyFE383FA6SQQYC2gghSl7zYDqqw5QZmdGbjpEaufAfPbZmRQC9a8pwGE/Dbf8Y1D W+9NBHCzUnLCeJtFZlh9Li4FwhHBoRNA1DbM1nJwK+1Br8ruCTsUWJ0mSgmUTC0INmrSfQsN5F6 wJFGm3Ml2SPjJdg== 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 f661e199b63c..12fc39f9e784 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 Mon Apr 7 07:24:14 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 878804 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 63697227E92 for ; Mon, 7 Apr 2025 07:24:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744010663; cv=none; b=PMDRjJwBsjxr1mKmA7bSRmlMm0IM6+n+HSkFD8bR7lcUpny+6rkgM8N3Ct68C4JKTpv3xdybOzSgmlqALHNEcWhR1fkzNVPNqG9SOmFM6THMOg6ONsX+inZ5qTdv5NxSwJkS5QvOdwiyvNSUkAJmPWpe3gWkGeGXibVmfGxKeDw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744010663; c=relaxed/simple; bh=J7f2eUTApbiWEcedhWmYKxUPKehC9pqeBkajVKzZWqM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=mIVmvdaBpcVlRpqoxTf6ctHr4RSSw3fJ8DeYitH7przrlUr8a9v+V/DrqMWpBgCTSMOU4LWfKRELdl7KdiElQb+201dsklSBgO4X+/ZfS1mrq1egUlNBExR2tdgLmTiQIqgmPdFFaEagZ0p0QoRNKI/S4FZFtoJ4WXF8lh1M1To= 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=ri7GuhxH; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="ri7GuhxH" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-39bf44be22fso2649056f8f.0 for ; Mon, 07 Apr 2025 00:24:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744010660; x=1744615460; 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=H8ZsxLGWS4jokMHzGTeIU5UFzwoJYJnzajiKuQ0WlY0=; b=ri7GuhxHg+7WwsXH7x/LwveYcx+j65PrEIOiMQXr2tR84zuz99VWTqy6pcb/p8trOt mK7XElHddFWs7IatO0gbxwHvLIyd5X7+q9vmXmmsvSKYdsHNoVA6SmT/zfnR2bOyc4GD mj8X2imr/lKyZWwQTAxgWAt27WGvGS03/U2KNeKEkl2NGF526LTSTIqMlVy/RjOzYzVy TAW1Pj9uahac8aucFohjoHcHBRvYtcVkf0IXNZj54ySG2VRtH7xmRe8x2/rfVuhZu5rS JBIJ0yfsqZ9b3BDC4+H3XvfGq7xc4PkLnhpfiQ3/g/iP9bj6GLhyJMRxh1EUcUZ6ilCQ TiVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744010660; x=1744615460; 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=H8ZsxLGWS4jokMHzGTeIU5UFzwoJYJnzajiKuQ0WlY0=; b=Qb34jZe7Wawuz6YjPlnJ2IjmXQKVGY2h9837ZH3Uuc0AXlwM8qE/Yv2D391BWcvclZ lXvpLRQE68dA1Z+H5yF6qGpreM8DeDnMletZbfdTpGD6b2qhZcRxYhwBABnpJySzayOa /1eJyPCTmhPcTHR5+1IQLXZUgiuBD4sr65uuEUL9Hkm3D/UHP/ukPD5u0dsrZAKk+aJZ bPnZW/Ny1w9IShEZQ7XtC/EeIUD5/VJWUHRKoAU7mX4I4H3QSanF8bqCndDJbS/zjl99 VkQYJD+93soF1cQDX+L8SfuuUNLYR3Hk7M0BtRgRkLAgydxryj+4DMazXXyc4dkXz6GB JqAw== X-Forwarded-Encrypted: i=1; AJvYcCWp+6XgGxcvXF4PEa8Y31TlKwu00QodTX4gCPDwWwwzQ5AgZonfRZ5f/P2psvgpfzHze/8lkmN8lHFX@vger.kernel.org X-Gm-Message-State: AOJu0YxRTUr+cafto6k0GdviQbS9x2WfvCl7K5LVpLJaopWVbZKCLgxk TSA7gs63RIZxO62PJpsWoX7cKgRQTlFDNU8i9Irs5n6F0uy9TA7MjmBa0gMfgPQ= X-Gm-Gg: ASbGnctrcIirEQg5u1eQ6WO0m21zURWEuxYZ79bbiACbqZNmISqa27daaqZq4Om7uYQ 3JqFGijCnTptjSBNTUHtabm2gHaqxgAOnsD46LdWangkUZTCJzU3h7yo3cqFlKZzuGqtNhXZ8JW Ma1s8pDfKJseMEY+5s10ADEHqaBtkt1qOZGKxRpo2NwFxyairukHItT7UXPeQVdg5zG7041xLKf G2NLcOWuoA+Qp67mD/uX4ys/zt4fXnTx+idAZb15VIRkDpih+H4iE/yAhx5eu1x4X2Shg2Ou71o xPAvtuzoNz94bRcui1o0PNf2ZDvQCfeBWEf55w== X-Google-Smtp-Source: AGHT+IEHDmnu8o2tM9N5GgWCGN1d01t9y2nKlBwNOJafY9H4tnxyVKYzGqxLBk349w1BiP4YorcOCQ== X-Received: by 2002:a5d:5f8a:0:b0:399:7f2b:8531 with SMTP id ffacd0b85a97d-39d6fce113emr5809650f8f.38.1744010659698; Mon, 07 Apr 2025 00:24:19 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8c64:734d:705a:39a7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec34bf193sm119855255e9.24.2025.04.07.00.24.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Apr 2025 00:24:19 -0700 (PDT) From: Bartosz Golaszewski Date: Mon, 07 Apr 2025 09:24:14 +0200 Subject: [PATCH 2/3] mfd: tps65010: 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: <20250407-gpiochip-set-rv-mfd-v1-2-43f4d86d01d1@linaro.org> References: <20250407-gpiochip-set-rv-mfd-v1-0-43f4d86d01d1@linaro.org> In-Reply-To: <20250407-gpiochip-set-rv-mfd-v1-0-43f4d86d01d1@linaro.org> To: Lee Jones , Linus Walleij , Bartosz Golaszewski Cc: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1365; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=dQlwl5PHLnR5U3eeEdKnSpeQk4aB5gzzRzjEGZ9SUOs=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn832gn8MmFWMAXd4hoFe2Z1lYY2mUhkyK72lTZ AD1zYT1cKaJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/N9oAAKCRARpy6gFHHX cvjfD/wPlFmkqP7wkuSptD71j/OYnTX51KWKxAYbW22mJ/257F6DjNpbwMoEudW0FozI0jjdi/I tXMK+YHhq3uyreCGTNP9a6DNtfLgRNVJvLvspntlrfliQrzcVXxnt0Hrzw/dFrU2mtd070IfJzb ABClbELM7fVdQHHMYSa1oc9lYbFOIdXv0uDNM0x+iC42FYyz1OEW4bt8uumtW5gbSAxUigUdckX LYYdIyG2dTC3865pgZ1GurJFf12gLO9cIBUDmp9hpNLgSku/EOP/YSiZ8mUO1VJutUeQPGZEZMX VkI9S77Kmd5la0ukUGae7tW4JPtlFdq9ELfNdvJeLj0TYyZt7SFheAzFvIr9sGEQu/tVKbgS/7B CsgQhZ9WIwx6peZASqJTBpkAgXaPZyGaz/vXeGp1IzYd1MrEP6Z4YGP1r6tZIK4pdvqcuEPM8Vv wA4hOIvBOA39HwaSvvUpw3kFjjlNrhJ8q10WQ3VMIFU7jld3qaAoY5jK8sw3xhWLyyhR4PolBKy bMLMYSLag86n6eM4T62fKU97pUWng+hk34IGp/lYmEKsyeQ5kPBQwAtgAT5e+mYx6x/DvVNRwW5 80t5sR95joX1LhXOXRNNLuZK7l0y7qfCED6cTLZMuleOCl86VSNp89yulpL1ox2uIPREUrW4djN dhIRxwWKaY0TF9A== 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/mfd/tps65010.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/mfd/tps65010.c b/drivers/mfd/tps65010.c index 00fb12c4f491..5f1d1e061192 100644 --- a/drivers/mfd/tps65010.c +++ b/drivers/mfd/tps65010.c @@ -446,7 +446,7 @@ static irqreturn_t tps65010_irq(int irq, void *_tps) * offsets 4..5 == LED1/nPG, LED2 (we set one of the non-BLINK modes) * offset 6 == vibrator motor driver */ -static void +static int tps65010_gpio_set(struct gpio_chip *chip, unsigned offset, int value) { if (offset < 4) @@ -455,6 +455,8 @@ tps65010_gpio_set(struct gpio_chip *chip, unsigned offset, int value) tps65010_set_led(offset - 3, value ? ON : OFF); else tps65010_set_vib(value); + + return 0; } static int @@ -619,7 +621,7 @@ static int tps65010_probe(struct i2c_client *client) tps->chip.parent = &client->dev; tps->chip.owner = THIS_MODULE; - tps->chip.set = tps65010_gpio_set; + tps->chip.set_rv = tps65010_gpio_set; tps->chip.direction_output = tps65010_output; /* NOTE: only partial support for inputs; nyet IRQs */ From patchwork Mon Apr 7 07:24:15 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 879168 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 6AB482288CC for ; Mon, 7 Apr 2025 07:24:22 +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=1744010664; cv=none; b=YrtSEnv+xc7P5y3ORfpmcZy/eQKpzi/mu08LE0hOFIfF1UeNpg4Md77zkMvjCB4TZcjCCZ2Bw8HZa/YfeLQawrz/LUWs3wBt0cNaLknZbahBc4UFxY23q3t6f0JfitEvsvVf/T3sYPFmqRY3TxqrzIKst13Lc1ltr8Q+Smv4Ubs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744010664; c=relaxed/simple; bh=46TsQHfMfuus2Y4N2Ujc0pUgsSG71cEeMP6rCE2Iukk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Xc8aux29Hf8So+QVMR8pdcAPWgpSPumb3Ncfp1vAULuMw0v2EvrwL9wYZGJQhJIkhuy5LHxdoWzTn2KniBtwqH2lL0Smervtgirk9lGfHL83EP1z7yQWouIHZFL2n/szEQEO9EO+KrfhlJ5YQL6VOe93qDjtt3yiGiwKMd4XiLo= 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=2v+8ql8o; 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="2v+8ql8o" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-43cfba466b2so39851615e9.3 for ; Mon, 07 Apr 2025 00:24:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744010661; x=1744615461; 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=/KkROuiXkCDKpcqyvio/9J/+1//CP2e3LnZSKP6f61Y=; b=2v+8ql8oa3C67rgEkAb3uEji66pP+rOQdUZjUm99XaFfBimxo5sTy303A2tPQAxdqB mOeYBsepcQXgoF1PM5GgK6pPp+DHg2Er8aMfOttnIAZPCAD8L84SmYMKxA/DYEGIjqa5 Mf5F3O3KIw//xUpqT79kXkruB+EoDIIVqVprur5QbBlzyIz4/c4zwG7xxlJDJ2Dmlo4q 6cR5h9jMIkj1pbJhuq6wZh30O6zmnu7PEskvvBckolCxy0qG13BI/Xln4WR5PzK1VRlN EwGULIc3HBskwfZ+iywbRPYW7I2N3x1B0GT07IVPxHsvJViSP5jWUOO/7xYBkJULtWli Aa1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744010661; x=1744615461; 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=/KkROuiXkCDKpcqyvio/9J/+1//CP2e3LnZSKP6f61Y=; b=VFzgl9y4Cb2aAK9CYU8nU3tJi72LZ+sDgL/yFJ94kuK7H2ZXplG19kLgpU5cSQ8Efx Psi+U/19a/lSmZ5i1dB3ChvpB55pl6vC8JH1XVFsKkSkDJ6WmsAZMwtxGA6c4xsZVNdq fqTiyNC1agNxRgaqIZcbLhAN0EFBpGfi1bmtDt60cF36lYdtWldQ+emK5d2/kTSQCoU8 HdEoliWHOfEmx1xUgy11LlVVWJ+jqh4zfu3IKxBnYHGmpDliuxTedWlY9DoqVvKBC/ra ISoD6PpTBFEle+MKxKiir0q1I5PurPHP90gjiUwnQAFz2vNenCMqNWe2Ci4fN/GOUS30 wNHA== X-Forwarded-Encrypted: i=1; AJvYcCXw9vVH8ASH9cC8ZNPoJHpVCdiAECc3MdIgvsxYUg74WukdV+KuZSiN9dmWUr/CwJm9ogBoqhxeYyei@vger.kernel.org X-Gm-Message-State: AOJu0Yx4l+WZL7QjbxqUqHExoPvKoQhT+1UqQzqX/d0+LMBLLgomaief iPXazt6IMwhnmix2vdErQAtLqtUoB61mQ/fAnVzXe5oEl6eyKP+/WoIVG83yS0o= X-Gm-Gg: ASbGncvsE3bpgy8CeA7myxcS+/uQzk8fdgPbVjUdFuXUpK+/8CYJYQoZro2CFrUjiQG yTs0t2WXGI/Z+9iu+6n7YChH2xYK/5T+ncxiBU+1AHBYQT8JZk6GBwgrPtLCW8G/Mecl/yRDzMu wBmQGi81XTFHZEvBbJpTETSaxZwcYIWdsnl6rReBjaKsP3LhQl2sUFnlxCu99gEZbKDIQkN/IEO soa6L20dmpNmZTopGLeAqkn63BGcrouiNTIZZS/609ZAL10tA1pLjzG6W95tl7kfR8mPP2YKlQ1 xZeKeGCN66lX1p656vFt7P9sktUe56Go/PHxTQ== X-Google-Smtp-Source: AGHT+IFtNLoH7gdKr+kyVE/8qt5O8vviG3nWzND179kXjnQR6oK2QV4EUTBGcSAr6Wgx1MkzEzIGiQ== X-Received: by 2002:a05:600c:1ca4:b0:43c:fcbc:968c with SMTP id 5b1f17b1804b1-43ecf842872mr94232465e9.7.1744010660778; Mon, 07 Apr 2025 00:24:20 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8c64:734d:705a:39a7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec34bf193sm119855255e9.24.2025.04.07.00.24.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Apr 2025 00:24:20 -0700 (PDT) From: Bartosz Golaszewski Date: Mon, 07 Apr 2025 09:24:15 +0200 Subject: [PATCH 3/3] mfd: ucb1x00: 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: <20250407-gpiochip-set-rv-mfd-v1-3-43f4d86d01d1@linaro.org> References: <20250407-gpiochip-set-rv-mfd-v1-0-43f4d86d01d1@linaro.org> In-Reply-To: <20250407-gpiochip-set-rv-mfd-v1-0-43f4d86d01d1@linaro.org> To: Lee Jones , Linus Walleij , Bartosz Golaszewski Cc: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1623; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=TF+EFt7bi6NiJtGjUB3SG25pVoTiUVHr1riDXGIMQcI=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn832ggGtmHWHRB0jo82i+GFL3aUN1MFDemCit1 rR5kPzXsraJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/N9oAAKCRARpy6gFHHX ch7JD/4sIxMbN+qp3taFnSwWjK3XqAYEI3jwbJqEC21sIokHaETEU9SdplBDszdGntVuqAxHbUV GF1tgivckvWyBcOQHnZAwz9CnlAdgPb70BfWpi/yyOokfzHmFFWIVPUvrag1Qo1g17T293SMn0r 0aj4x6AFrqDCfzEl3bxTQpZjcKa1qCThwmfF5DugUm+x30NiRmuQg0aZasa12aSnZ7lz+oqZxaE I4av90UzKS/bkcNz0B/fmlUrRE4RRxQxqTpvk56Nv+QykP9P+M68sH6mZ2DMgvjFYihYTNoDB/O G7ne/MHSp2NIlJRHislM657eqQYp1Gylr0OezdpE+i716faf3TKkqJonj/SlckwfnkqWsNpHR7T HwhWVd8f3E2L/gpOnDBd9IfT3TP/ncztWW6D5RXp87f5oUY8Jg6QNkmS/9PnJaL0HUO8kLZDDj4 Tp/FCPeUc491T+ynmZH5X3Nr4bjAr1PPeG1jEyLazqcE7vUd8fBWZoFTqqCn51CnKJ6FgLlmAUZ 8hd+/ILdLNsvUQJeLr/YPJ2sY5ItODk+iPhkTjwZqHtzhh4NCh24hH2qDBp0uVJfhJ8fcTbAW89 ZAECjTGyBcnxSTYOlQcNsQpMFy9t1gdTwQnn6LIg6VRzMUxhsIRqgFgX8xzPxoXmvP5LTKirWug H7mkyD0SRy4m5iw== 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/mfd/ucb1x00-core.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/mfd/ucb1x00-core.c b/drivers/mfd/ucb1x00-core.c index fc4d4c844a81..fd71ba29f6b5 100644 --- a/drivers/mfd/ucb1x00-core.c +++ b/drivers/mfd/ucb1x00-core.c @@ -104,7 +104,8 @@ unsigned int ucb1x00_io_read(struct ucb1x00 *ucb) return ucb1x00_reg_read(ucb, UCB_IO_DATA); } -static void ucb1x00_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int ucb1x00_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct ucb1x00 *ucb = gpiochip_get_data(chip); unsigned long flags; @@ -119,6 +120,8 @@ static void ucb1x00_gpio_set(struct gpio_chip *chip, unsigned offset, int value) ucb1x00_reg_write(ucb, UCB_IO_DATA, ucb->io_out); ucb1x00_disable(ucb); spin_unlock_irqrestore(&ucb->io_lock, flags); + + return 0; } static int ucb1x00_gpio_get(struct gpio_chip *chip, unsigned offset) @@ -567,7 +570,7 @@ static int ucb1x00_probe(struct mcp *mcp) ucb->gpio.owner = THIS_MODULE; ucb->gpio.base = pdata->gpio_base; ucb->gpio.ngpio = 10; - ucb->gpio.set = ucb1x00_gpio_set; + ucb->gpio.set_rv = ucb1x00_gpio_set; ucb->gpio.get = ucb1x00_gpio_get; ucb->gpio.direction_input = ucb1x00_gpio_direction_input; ucb->gpio.direction_output = ucb1x00_gpio_direction_output;