From patchwork Mon Apr 7 07:09:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 879189 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.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 AC41F2248A4 for ; Mon, 7 Apr 2025 07:09:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744009769; cv=none; b=C6XEYekuOMhx9Fph9u/kbITM0+h04d7mZZ2Y+Yokx3Nk9Ww+9fGH0kRG8HCHlNO/4VeO3383ByhEVp1w/SlfVAoWHd90Y8OIzGeCntrOzZE018UV5GaaM0AkBq6qBGhKjF9e8W1nn+ENXcr54Ruv7QlI8XpqEBdHIvDepSRAamw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744009769; c=relaxed/simple; bh=QDLHMBZTpiBivDqp5pKtEBIW4NMS9LwrxmbdzYFamjk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=pVKWAXGVoF7lp1TrjUbO1XlFTFh21c7SG4EqFi6R/ZYyM4MgrO60dbHKyfz91XlhxYzTwKi8fLrrzNwKn2ONyGFBwYcoxBK7iP53jdi2Ql5SQM7zMr0yCuWjHPB3dACKClPs3TPVPQrIbba+HRVQ+541Y3ihbqfExSJC8ZgXR58= 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=YGaokiYn; arc=none smtp.client-ip=209.85.128.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="YGaokiYn" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-43cebe06e9eso25252705e9.3 for ; Mon, 07 Apr 2025 00:09:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744009766; x=1744614566; 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=1oJEkpaKzk7KM5O+yA10t99Sq6/Y0ezDYdwYB3ESkdY=; b=YGaokiYnQNNRQaZous63gK6mZCrRiczGNpihvLSBeSeP276SOW8ULpL9P3+y1e83PQ vwd6pbL46AIUdkZSKmeyopjHsfOiok91z/HYST40UwZ6/4ZjdmI9ncffITh2c4AYSgWa 1baBq00Yhd3elKt+6JJAdXIpPJ6HsHTIdbN0r4ivdWKF5Rw5Y9RjFgt4DCyEsep/eDVc kc5zZXxE9XQQ5kuZh6b+TpYpJxkHDAsepFDhUFrTn1b84GBBfUqLCSLHSS2d0jTd7zPW 923EgzBHZwuuuCmOjqP7T7Bbb715CwvYklSMMzFq1XvD3up91Y4MQjCk2eF5zkVZ1p7h xytg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744009766; x=1744614566; 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=1oJEkpaKzk7KM5O+yA10t99Sq6/Y0ezDYdwYB3ESkdY=; b=vibaWnoBia9L9PR9gMIvh4Dh9GVzn95E0kQSMv6zW92KvUOCo0c0jW+FV3E1wn45pr vOkTlpEpagImOCQ7gmrvDmHturVkie6AhsoutqnrD63BHpf1kfez+sEJUmQoj+jIqKZd SrASCo5Er4jOrplCOsXnyszHGFXnr5JZFgnV3wETVFohSlH+IJWIo1hBteX4yi/4VD/n mlSIFXb7usRPr7BbH0IFNR9UvaAVkvp5F4a5A8rLIa4jdkhTWfNknweh8EQv2ZO7soIZ LSYcRWff3mSAP1Exm1W8/l1+Gg20XdH0LeKHUnjd+CaOg7lLAAMvNi2OtObI85nRTqFU VQNg== X-Forwarded-Encrypted: i=1; AJvYcCXS/H5dO4HArdwwPRD13MYWTZfnmYxz3zZ7ITGA9eREWBTcKpVGqYsUpe6+lLdjN+aho/zB2l0aymoP@vger.kernel.org X-Gm-Message-State: AOJu0YygmrPlFe7QchVLy27HPVrUbISPOU4Es9b+yDHh01keeBn8xFxl 5zWUMI8C5X/eOWtS3WS5wdlxuPdAikjiihnKVHkkewRI4SYZOJtYoBqbfzpTdeA= X-Gm-Gg: ASbGncucRJL0obdj3XTWniKTtDjzwCuq4cOrfcYitz/gEdZgLFrSze0QKVNnlwK90si yKbpVYYia+GKfyJVBOQi1ide1YHZpn2MPOY3+cxG/I1SLlwXwB8SER75mgjJC06gFctsNp57vFN nFk099xsE6KCEY0KF98J5G0wShScx9FmwU//aTnFwfGVdpf1PDeUjGUUTdXh9twgglECQ6HgO0I HZfELlMYJXUZeRdHfA/sIUyLt/rN2PZLHXHFL4+AYLOUCi9OvJ3RH3IvGD4+jHdMG3WpCWTgrih ME2GmvFup9vnEfmC7FEMlgv+yYwzcgmEnw5x05fk6tXl7e4A X-Google-Smtp-Source: AGHT+IGFE6oyFiQ9CpLcLlV+haks6tvvNCLBB+aF4dXus3yMP1Llx4O8MohrwYM8rVwVT69R0foFDA== X-Received: by 2002:a05:600c:8719:b0:43c:f85d:1245 with SMTP id 5b1f17b1804b1-43ecf8e7321mr124503985e9.17.1744009766064; Mon, 07 Apr 2025 00:09:26 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8c64:734d:705a:39a7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec1663060sm124622795e9.14.2025.04.07.00.09.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Apr 2025 00:09:25 -0700 (PDT) From: Bartosz Golaszewski Date: Mon, 07 Apr 2025 09:09:18 +0200 Subject: [PATCH 1/4] ARM: orion/gpio: use new 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-arm-v1-1-9e4a914c7fd4@linaro.org> References: <20250407-gpiochip-set-rv-arm-v1-0-9e4a914c7fd4@linaro.org> In-Reply-To: <20250407-gpiochip-set-rv-arm-v1-0-9e4a914c7fd4@linaro.org> To: Andrew Lunn , Sebastian Hesselbarth , Gregory Clement , Russell King , Linus Walleij , Bartosz Golaszewski , Krzysztof Kozlowski , Alim Akhtar Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1612; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=6854LsY/CEKL9LDW7nLKKhBRDGj/vD8F0/gksPec/Gs=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn83ojv0NTNspg6Wx5Fggczg/6It7m8U2gT0lPo rxrHkr6h86JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/N6IwAKCRARpy6gFHHX chutD/0cndTpas2Wdg5qBWP1Y3VKSiVXC6hIuu1om0Dd6+1pvJPesqjLF2JFC6zXuYLNkg0+5Jg rGlvPXMOI1t9FgiAdbgKurXOq+HFhT4k2qSnOquBOC/PNHNbPYOOlpJuZidhiPkiCKltu3o92pr K7HivuuUnrD3r2PaQXoLjhIhZ+jnddu7iDYZQQYgSjAF2FXJVs/TOgQY+fnL2rRRAXZ4kfA/ll7 6dbIgHm1IM735m+b5kQW+9UuDG14bt/y9uWTJbvgK+xvtRhl5k9jyTWi/P6P3K93ceJolsL+zdC WUj/jWB0+TrXlKsF57cr4miv9xpRtfcFOM68jyZJYP/8RT/B5CCxCMHxW7L7SpUkcHnwtwhj6p5 Iz9NnHrsLZdZsytg+wpvHk5roaSVuWDVE77oA8uClfW6LB+PcAYTI3kuSkoVRVI7dfSXJWSLVn/ ouOOd1MUVkGTz++pCGaCtcnKe176tnqXb5Wm5MNK93LUMpg2F7KMVNZUW0NBY47bKkYN3Wz9ANJ hLKVuAzR5UxbPRdG3dHLIKEHknx3vm0Ac7/z0V1wh99rz6jMLZWAHXAY+/BJPRpl9jTJQEazQ6e 7nKzWccg6Qhy55gudCDhtyMQvrJPacNqZJ+cdOXjly/IYjPEwBorwqoF/42IPiZqADwOvawnQ1U Ns/4rCW8lnZP6Rw== 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 Reviewed-by: Andrew Lunn --- arch/arm/plat-orion/gpio.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/arm/plat-orion/gpio.c b/arch/arm/plat-orion/gpio.c index 595e9cb33c1d..766036fdd792 100644 --- a/arch/arm/plat-orion/gpio.c +++ b/arch/arm/plat-orion/gpio.c @@ -211,7 +211,7 @@ orion_gpio_direction_output(struct gpio_chip *chip, unsigned pin, int value) return 0; } -static void orion_gpio_set(struct gpio_chip *chip, unsigned pin, int value) +static int orion_gpio_set(struct gpio_chip *chip, unsigned int pin, int value) { struct orion_gpio_chip *ochip = gpiochip_get_data(chip); unsigned long flags; @@ -219,6 +219,8 @@ static void orion_gpio_set(struct gpio_chip *chip, unsigned pin, int value) spin_lock_irqsave(&ochip->lock, flags); __set_level(ochip, pin, value); spin_unlock_irqrestore(&ochip->lock, flags); + + return 0; } static int orion_gpio_to_irq(struct gpio_chip *chip, unsigned pin) @@ -540,7 +542,7 @@ void __init orion_gpio_init(int gpio_base, int ngpio, ochip->chip.direction_input = orion_gpio_direction_input; ochip->chip.get = orion_gpio_get; ochip->chip.direction_output = orion_gpio_direction_output; - ochip->chip.set = orion_gpio_set; + ochip->chip.set_rv = orion_gpio_set; ochip->chip.to_irq = orion_gpio_to_irq; ochip->chip.base = gpio_base; ochip->chip.ngpio = ngpio; From patchwork Mon Apr 7 07:09:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 879188 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.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 20772225760 for ; Mon, 7 Apr 2025 07:09:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744009770; cv=none; b=qCdTm4JQCUTsXE6fln89jjWsXmWiAeyupq1h6FGpmMDY8Mg1kWg4sII3WbH5XqalPk4l8/gqHjGErHYie8EX61vDPqVGCIoB1kXh694aDws8ddSMgVkBRLKuHTIt6md8rEcajEeUAONAuIfrFyWhDUD0hDiLzl29KE+ZW1wI59w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744009770; c=relaxed/simple; bh=ozAN40jinl+xXLgyl7TwyrqEYX1yW7hYhTChwsJoIiM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=jLcX5FRmUT/JIl9p7a7oaUnFLpqi9QOwqF2s9w9aRfw/OIzZUfCxx9wggYtMdIkpLKCvL4xBIwKGidCCJz0fbwEl2VgkZt3t6T8xD1iypIThw7g5SEBlbP254L5Dht2/LhjZT3z9w7um95cQnUOycr8D7kei82rYbRZZTFu5c3w= 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=Zq78gfjk; arc=none smtp.client-ip=209.85.128.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="Zq78gfjk" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-43cf0d787eeso43859785e9.3 for ; Mon, 07 Apr 2025 00:09:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744009767; x=1744614567; 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=P54VA/QfQ5VWCZa2DrfOM44F5qJ8PR9WzkkmyLvWpKo=; b=Zq78gfjkMdK17dFmwMiWgGWIjk4vEMM/LqKKh8VCfgXh3Uj/K4CGZ07sLe0Qkl2FxD UHUa3lBW2P7H3qph9EHUbpxCJ7Va1l7PgI8WkoqR0DKSTDnE6pf3FiwC373gKP13Stis tCOV7Ux774VYH5a5415qCH1u+zu9D/Omgg1cqCaDBIKWdi+hgQGEFIyOuh864PCg6Bqh dJ83o3QU/hKFjVIvBUrdOvZunHrbDN3aC9hB04ZBVgyalzIgiWGZ4+wGOSMnDmKeCxI8 KT/u5CASQeKFPPj2liovOnloK8xP5rTuxCxGFEkWog03/9JqdiZcIAEO/oHl+2uY36RS ry0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744009767; x=1744614567; 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=P54VA/QfQ5VWCZa2DrfOM44F5qJ8PR9WzkkmyLvWpKo=; b=ZnMciRZAu9ZjADUXLMmP1YTrDuxlrejaJaUZN3YlY3KCXpAhcL64Im8wSnAxs52NNr foKgwm9GNbzhzJUkwdX9iyqr3l8qwLGn0iqNcN0ni4jz6YgnQifd7J/vvSgH/cKWHJX4 oHDA9MaWk/0g3V144fe9Fy4xMkK3adP6COZGdssznJ8jrkVK9EXTWsMCaHcrVzYbLTBZ D0WAaFWnAsSq9EGTnS56jZw1hoeJXtp+BvuGpyR2vK6wTE5miN1RJf/FnWSaoahG3+oO kXkzny37IuKSkB83W6zhvrSK4xprgZxvgB8883wyv7o6TK8xMjqkGmrgTYXQA8BJdq+b N5Rw== X-Forwarded-Encrypted: i=1; AJvYcCVn8a+FbZj+B/K+Y2ZRSQooQuV5UxiJuE8j0W4c5kHDmwFU75t2Iww9TTvpNQzcU5VpnavOTp445vxf@vger.kernel.org X-Gm-Message-State: AOJu0Yzj9vPMMGNMGjg0Cih7+SuzG6jgSXqKmpf3XtYD60QuXWgSHKwl wVlaVjiAc0BCpubxMm0Kmpkbfk3ce3b2viOIF5BHM77XE7k3K0lPVa0WmNCYveY= X-Gm-Gg: ASbGnctPDLrxGN1nyO+u4L/rdXmIVd9W6b9DvKo5xbuqs6EquBoLMoYjkQLHSCpXJTw 51bPsOXVvVBFv3kYkSS8yKQBerMUeHewo0f77iSa3G3UoRBcO48U0ZMI25xJOtbD8oXRznC8z5e w6A093kDslV5X8Pwpvwuq0t6gYNesV7Ncue3lQiN45YyyXVtVZQRtJe3li+zBSBXrReIIpY4CME j7xpneck5NaRXbeDFYphdXz6b14tTtnoDbWu7F3wN3tP5K9M8KRAK6qY1MT4amwBYNdW2xFoz1l aXG7YrXEfjLw7JdD3gncln8ifpZx1Qu1lr+BHA== X-Google-Smtp-Source: AGHT+IHlbYVaSeQ4i6pCJ+5QwB6SPB1j4w0/Dq7AFXUieSOfltPppg5yQl42lc4SWdhOL/4TY1MnaQ== X-Received: by 2002:a05:600c:1912:b0:43c:fcbc:9680 with SMTP id 5b1f17b1804b1-43ed0d98e11mr66774425e9.25.1744009767393; Mon, 07 Apr 2025 00:09:27 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8c64:734d:705a:39a7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec1663060sm124622795e9.14.2025.04.07.00.09.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Apr 2025 00:09:26 -0700 (PDT) From: Bartosz Golaszewski Date: Mon, 07 Apr 2025 09:09:19 +0200 Subject: [PATCH 2/4] ARM: sa1100/gpio: use new 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-arm-v1-2-9e4a914c7fd4@linaro.org> References: <20250407-gpiochip-set-rv-arm-v1-0-9e4a914c7fd4@linaro.org> In-Reply-To: <20250407-gpiochip-set-rv-arm-v1-0-9e4a914c7fd4@linaro.org> To: Andrew Lunn , Sebastian Hesselbarth , Gregory Clement , Russell King , Linus Walleij , Bartosz Golaszewski , Krzysztof Kozlowski , Alim Akhtar Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1726; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=xsWx6NHlIxnhL6jtmZVFoxqhJ5i8IDr9WwAEXelZLcc=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn83ojCLYV8dzwcSNLnX4bkKX+gH1+RDkz/zjfu UvxHKlCXuyJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/N6IwAKCRARpy6gFHHX chMGD/9WaglQntxBb+rFUYx9pTpsQhM2cuIhUhgxNCX/UTl/3szgAcD06UaZbzpECecUIUvcZcf xHvg9m/8zUqjvoulvOdHUUhu1M/64mJr08Mc59L7LYUNUP5DJgPZnDIFvclIIyXxgl2/R2TD2gb W1iJTaMePwcZgWSB00BZBRYxN/q8f/2O6XISU6cNUdJ0zYvgkW9M9tZhSzGQ65VB2MsoracdfiO Isfwpu60HyoH7bKqnCU3/NT3fn472ynWuWAOAKCLl5g5Bkv810i9mWpnLDn+db8t6hU86JhbldJ l/BNF2J2U4O74bHUDEVQwSDyvbHN1YOYCsTfOLgvQmlU7umqx+iCfPGsaqpp52oYItloneBpuWv HKWWkhv2YftZY44ytOEUa0y1HknhvANP18iKzjY+k4ZouGO45TXtsRrtHsYDOLk+c/DhqwwOmPF aDX2XQ3DsiwI6Jx3zvTNp5vT4FYSEwoSroABjT7ADXDkrS0mfbIwAAPYt60KWKhIQgj3OWAXJuM 0a7oF0P4c5rvq5KFVG9hl6GsbYufNkx6PVx+uslfrKQBjHZuV0EL7wCO8V6y10cEZBBeeUTTK+n kGGs5+XXX1fhdeD5Y3suIaahWADJWI5MkDd+0OajiUpvCEENwVBvEsmdNIW0nm3nk7OTSTKfVTD wjA0QNCPuSn2sHA== 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 --- arch/arm/common/sa1111.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/arch/arm/common/sa1111.c b/arch/arm/common/sa1111.c index 9846f30990f7..70dca9937644 100644 --- a/arch/arm/common/sa1111.c +++ b/arch/arm/common/sa1111.c @@ -563,7 +563,7 @@ static int sa1111_gpio_get(struct gpio_chip *gc, unsigned offset) return !!(readl_relaxed(reg + SA1111_GPIO_PXDRR) & mask); } -static void sa1111_gpio_set(struct gpio_chip *gc, unsigned offset, int value) +static int sa1111_gpio_set(struct gpio_chip *gc, unsigned int offset, int value) { struct sa1111 *sachip = gc_to_sa1111(gc); unsigned long flags; @@ -574,6 +574,8 @@ static void sa1111_gpio_set(struct gpio_chip *gc, unsigned offset, int value) sa1111_gpio_modify(reg + SA1111_GPIO_PXDWR, mask, value ? mask : 0); sa1111_gpio_modify(reg + SA1111_GPIO_PXSSR, mask, value ? mask : 0); spin_unlock_irqrestore(&sachip->lock, flags); + + return 0; } static void sa1111_gpio_set_multiple(struct gpio_chip *gc, unsigned long *mask, @@ -613,7 +615,7 @@ static int sa1111_setup_gpios(struct sa1111 *sachip) sachip->gc.direction_input = sa1111_gpio_direction_input; sachip->gc.direction_output = sa1111_gpio_direction_output; sachip->gc.get = sa1111_gpio_get; - sachip->gc.set = sa1111_gpio_set; + sachip->gc.set_rv = sa1111_gpio_set; sachip->gc.set_multiple = sa1111_gpio_set_multiple; sachip->gc.to_irq = sa1111_gpio_to_irq; sachip->gc.base = -1; From patchwork Mon Apr 7 07:09:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 879187 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 270A9227B9E for ; Mon, 7 Apr 2025 07:09:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744009775; cv=none; b=sTLX3zgPi8hqT4Wq9ITAHouJ07sQDXiYmqz3XxoJw3z+uHkWQLGYr9+QfmtuKlkGrcWswK599rEAUC6oePgZ7jvLaQQPEkW1AresDpvfODnitO7LTqoUUg7V8LvJTVPB73bhiXZ1JAEvBIbfvDB4rcxaCnqPd0K4tx6loOdXEt8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744009775; c=relaxed/simple; bh=Xs8kT13TgDgVr1qQQSggiPnN5GRLN0/V9PojPokFU8s=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Hyv15ckJE9uYr4UdPS7YFXFYS5LXBQCkpMtybXKIMt2Il74sRk4tnx2HFFVcngsf8Hn9Ul2yh3Dd7nSbEwnAf5Uz5G/VuRlhPyilyZPVBjALgViwuLtAZ/n/wwivrd+HOeDPctjXdTh+sfwdGXxyzlrLaWwQ0k6FFMFfmRPeh7o= 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=y9qsAOZE; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="y9qsAOZE" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-43cf05f0c3eso24074035e9.0 for ; Mon, 07 Apr 2025 00:09:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744009772; x=1744614572; 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=HsaSC2HaVJRroJP0HwzWYTmvmXosq879cETOeyvqI4E=; b=y9qsAOZE3aXcGVeE+keirS7xSue1e0qBvX6PiZvBhYZ5MnHNWyETOlBiSah0TbqTzZ +aPBX2p+irUYpJUmgTd0GhOtp6GhjzgcU/409BQumWNt1/3lPu+NqkL2vy7l4WWKp99J BQ7IVAy1R6bCTbsUSJhzcfWfJKtedUrszE8IMZ2/k0Ips8k1/NBFhftdhilQWc09pwOa aywRrHm6qwqaHXfGiWQaeQlq5y2vUZMjtrX/02MdvgLpzk9TBquOg2lIVZyv5IYbncvo DjXmNapHLAptvOqew2jVZgtCAbHRRFGurCL48sAN8bKQ5kxSAaMFPLNuFmO0MkGGsumn JSvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744009772; x=1744614572; 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=HsaSC2HaVJRroJP0HwzWYTmvmXosq879cETOeyvqI4E=; b=dECJg/5khsrGzJ41F+jEk9aqQj0+TFOvMi340W9fk2svZ78c58gE+DA+sJYX0PfiZf PdrzCunoPs8uV221J2FT2nUlMWYtxxAPh5gykDVFkrCWqTpv1k+JiBhi+2IWMp3xBdnm 3lINMzNfRNzZYkOL5HsKdWZdJzL4nUcFEqF+sm2+TsvHMtNSP1OdmJAwOQXz1jps+pI0 /cJrmDPWvo3imeQWxkWyPMqaxuF9tsPuvkLXQM58HqJjRzuGTzrIFjnroBU2B+yQtj8c bBHmB8SilIYM+LfXwmCQu6++lgOi6gm1JMOOEPCnLic299UwL6J07ttJwypFnqFTwgi6 8qoA== X-Forwarded-Encrypted: i=1; AJvYcCXDLsC/tYrNemRxCV6rJPZn/8iJxWB1RaGPJVgrM0G2QccK/a1t20OevPa6iF8cUBIoWsW9s0Mb/nct@vger.kernel.org X-Gm-Message-State: AOJu0YwJb8wyzpABe4qCw40ilkZuMd+V1qJiUl4JHOqLptLlspE0/SSe JuKMqf1XSGWPGh3bKPAoIuetGnxyHqbmhCNQxvbP0ABWFi51+bEVPKhv8jftRJA= X-Gm-Gg: ASbGncv0gqhUrrCKGNc/52JCuO/1zBEx6TJmI9tpIvhupIwE9a4RWe40C06KR3OXVY2 9nydArw9vAgM8aF038lgs5fFH6vOT5NPVZ/Lhdl6Bw1Tx8IMcsYDvXUgI26NJNxL6aOIQS5u07r ddRgd69qvfVxVQBxQ9lYGASAN7WkEQAFaKUkFAWCFllM7a48zoN83dhFfeizgPI2V+sYY9o54lW C83pNmr+/a9y0SGSOy+c1hC2Qa0ejCrDVPvqYzSEaYCt96YHK4EP/xmqhtdyZVPY/MWqtCz3qXW KZY9aShU9iMp1EkS4nvE7GjoqgJA1G0qcoRlWg== X-Google-Smtp-Source: AGHT+IFoq+Y3x3L+TzUAPfnpayxhMl0EXTH8ChvoeKZsiBjolFAg72wzCsqeqv6HGqtEWqKDzyAzpA== X-Received: by 2002:a05:600c:5394:b0:43e:bdf7:7975 with SMTP id 5b1f17b1804b1-43ed0db4aa5mr81239825e9.32.1744009769231; Mon, 07 Apr 2025 00:09:29 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:8c64:734d:705a:39a7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec1663060sm124622795e9.14.2025.04.07.00.09.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Apr 2025 00:09:28 -0700 (PDT) From: Bartosz Golaszewski Date: Mon, 07 Apr 2025 09:09:21 +0200 Subject: [PATCH 4/4] ARM: s3c/gpio: use new 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-arm-v1-4-9e4a914c7fd4@linaro.org> References: <20250407-gpiochip-set-rv-arm-v1-0-9e4a914c7fd4@linaro.org> In-Reply-To: <20250407-gpiochip-set-rv-arm-v1-0-9e4a914c7fd4@linaro.org> To: Andrew Lunn , Sebastian Hesselbarth , Gregory Clement , Russell King , Linus Walleij , Bartosz Golaszewski , Krzysztof Kozlowski , Alim Akhtar Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, linux-samsung-soc@vger.kernel.org, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1523; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=abv30zYA5XuyGwoeP1ru48ZEwjgixTtNG3nmu6YE3a4=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn83oktedBQx8pZUxbFWhdPQr1mhvAceAMNekvM eg9/SFm5bCJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/N6JAAKCRARpy6gFHHX cr4uD/920+W4HTn/DythHwMtCVrHef5JpB0YFglUyOJ4l+wrZNhV0VZcDRiw3F4l9uygDSEhyso biZUtfnWodZkYBVGq/dILl7oXl7vF8oWyBJBOzWK3dQxlFdzjiwjxS61wFDTiJtDqrwoHDBGvTP cdZzcOKwYrcWrxD1m8tsHEr4sYBaocCBaMA2DwOBsmTMuwLcnEhYE5HaoI7qjMdz+F5QjH+F5lT F4ogzhuGDbEZ6J5R06tmUkVr48izLrPyCCplJRhaREIq62mx+mTilrFqFpqxB2iDdfr46vmCzuJ 7xIvHs5P4COrgPm6/I5bKr+h3+1VzO7HQFBoDKY2Xuzejttwa3sTTD2RzFuKJiHYYkQM0Oxw178 Evb4gwQE/VxyQWocnlavibF52tIaBu3yLnHlf677OVaESjEllEOiw4lWfYVjj0vfVMDeR1OMO1/ +KBoC+MsYFiv2hkzvDRonuAMQITxCp1ygc3x2w6s9X7KYWS1CkudDWlCs/NRSMobunZUcYUkspl nsvorsS0oxCLJ07Oetc1JL7Q7A9uln5YELWlRQEIIT8hUBtLX7zVdJtvH6QwPqg5flDaNLjrTz/ O4tqaQq1mIozfl75z4Xn3k4+O6OudAZzvKN7VnXBJAK8HhrKrll2cDu2DajhxBcH61elXnqtFyn KFr7Ne2L2ryXdeA== 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 --- arch/arm/mach-s3c/gpio-samsung.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/arch/arm/mach-s3c/gpio-samsung.c b/arch/arm/mach-s3c/gpio-samsung.c index 87daaa09e2c3..ea496958f488 100644 --- a/arch/arm/mach-s3c/gpio-samsung.c +++ b/arch/arm/mach-s3c/gpio-samsung.c @@ -430,8 +430,8 @@ static int samsung_gpiolib_4bit2_output(struct gpio_chip *chip, return 0; } -static void samsung_gpiolib_set(struct gpio_chip *chip, - unsigned offset, int value) +static int samsung_gpiolib_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct samsung_gpio_chip *ourchip = to_samsung_gpio(chip); void __iomem *base = ourchip->base; @@ -447,6 +447,8 @@ static void samsung_gpiolib_set(struct gpio_chip *chip, __raw_writel(dat, base + 0x04); samsung_gpio_unlock(ourchip, flags); + + return 0; } static int samsung_gpiolib_get(struct gpio_chip *chip, unsigned offset) @@ -515,7 +517,7 @@ static void __init samsung_gpiolib_add(struct samsung_gpio_chip *chip) if (!gc->direction_output) gc->direction_output = samsung_gpiolib_2bit_output; if (!gc->set) - gc->set = samsung_gpiolib_set; + gc->set_rv = samsung_gpiolib_set; if (!gc->get) gc->get = samsung_gpiolib_get;