From patchwork Tue Apr 8 07:38: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: 14042341 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 4BA86263F2C for ; Tue, 8 Apr 2025 07:38:28 +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=1744097911; cv=none; b=j9pT+HmPxVPHhSQlXIoxSkN4lVrWoplIptUa+Zx7GjXLemeDoW3MyVGIHD0ZhbZP0wu6JfP9lq5m0EN4i9nJhQ1wepSz/IjT5T6yl9+KMMS0QSjaEPgeWDkxrpCE5CjZY4nBDAuBi3mMDUBysIZ1alcS49kmGJFqv2TdLDar/nE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097911; c=relaxed/simple; bh=H1/r13cT2Qzqk1U86sWdRYzAebCzT/guHQtTx86LWdU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=YHFgVrJH70qzqV0m+DpuHL4ddWiIP4c8I/DqlTd/EPQhz4esl18yS3T+D0cVxQeS682jD6hR3teyScAv00aoB7pNnAZH3enmEUTamhGF2VpnInPwVmFGaS/WCFmTQY4x20eeVSyZ7kBBdvrnRPpsJ52FUNHxaooqLhCJMrSfE+8= 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=ylP8jOKj; 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="ylP8jOKj" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-391342fc1f6so4575243f8f.1 for ; Tue, 08 Apr 2025 00:38:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097906; x=1744702706; 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=dOnP59hUnqLwlou/8ixKvgPYKb1YxP7pgKnSRZqR8uc=; b=ylP8jOKj7WUDvXH8qBtaGThA4HArqUj9VAd0pNZoW8PpuTBRFHY+FRzvML/sn8sNQZ 80qb4wEov3kmjvJfPYsaA2wgfjX0y0cXva96BfIlDLuxL1NAD7Zt4swM2zIU2OQRJjFs 9UV9QwWUWlCuqUpBcucSGl94NPBvMDXo24LE0BAi8K85P6caGAR1GP6ClTIzla/tfekt rMOFjDrnA6BQ0VLm5tGX9kPC35f0Un/TUyeaaoZ5MCMbWd9/yjMD5UFXX1AXaHOcdf14 mxZAMn+8rrasAu9nDaoIk1vtpjcTlzzc8xzjzwaltWxaUzfYbmxEztaanM5MKFGX/5wW ZStQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097906; x=1744702706; 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=dOnP59hUnqLwlou/8ixKvgPYKb1YxP7pgKnSRZqR8uc=; b=BS0sV/0PIecWGzVan0C3BjDOtQJrBD0kmItZGyka4mov8jrEK/rnnrOHGhZEDJqiO1 KDdX5OeuWeqA+L6B2GLk0qEKgV6Byl8mUifIGNx9y2OFul1jE970oXpoKKAR/NNkVN/r elMIi7aMqS87yreraS+dUMxdo+TGCTEGA1n2KqOu/jjOCZYiBXOmGbqh1PrQ9Jf/KiLI 9ZrsfyYoFbRLtvgXVFhxjqkgHZJM6w13ZGY6+gPjnKfRQoIY1eWUF8BIN935iwWse/Mn 4DKZxOXqHiBCIeAdVgxY0hqnSxMPp9jkDHfOoFXI0oJzKA30gd0DfKwCwhbtTNpWVPxc qSeA== X-Gm-Message-State: AOJu0YwnZqli5N8SV/BagJ1rnxjogvAIn/Mu47gX1OZXKF2ZEkPbeEmS dcpvhslhioVEVzoSFyWSD5m+FfZ2yPqp8dl30JTpyt20cKHtOHaKDK3quvSmy+4= X-Gm-Gg: ASbGncs7hw2/eBw4+0phUxir3/gdRjVnIUiKOS6kaxQkkak59MaMIjRebn8ikwUMgn6 OTOWII1+tTJl3TRGG4pw14nm3SX7yPMAQCB90tnXiBypDDURi1msrnVdep3kQ0v7VX7HRxIF3cx Et2jASc6i9UC4VmAqVU4kAJBtmpurLaeuBxEWmT/8d5tIEDGARUIfuQm9m4EBVXhEcWqUzQNpQF 8Td2IMx0cgyT4PS0I1w0TUC6u5sNpMmDxyzoFT0//3ITQsTryzuXMPl8i79Uy/QzhgykBevvWQ+ FMIYOwv9BoDkrWEKCAYdpKoYSpR+k0eTnM3tmQ== X-Google-Smtp-Source: AGHT+IG7DQDDtJlKr0AX5fXm/0LslLDepU2Ul+w64BukKBUcPoEM95MldvgUmHprJ30qamN+W88wuw== X-Received: by 2002:a05:6000:1844:b0:39b:f12c:385e with SMTP id ffacd0b85a97d-39d0de17bcfmr13214832f8f.20.1744097906542; Tue, 08 Apr 2025 00:38:26 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:26 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:19 +0200 Subject: [PATCH 01/12] ASoC: soc-ac97: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-1-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2057; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=+s84gxi24INum35RXpjv/Lah+LzIeKYxE5tndjwwncg=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJtls2wjcS0sj2b+6sSYrrAjLpD1ASs4aSuL YELPn9i8CqJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbQAKCRARpy6gFHHX cicrD/4p7G7svsv5v51KuFQmsokFKj2MMyKpLwVKzvPKUR3jJgiiG5jmmC73rdn6kP3B4c3WeX8 ZZgxYEdYkQGY7ctLuTX72ERBUTwGVCuSmrWMJU9qTniEUBObxetXWgGXXFYjCm0VSGF7EV/VPVo dYTGMASWkugoa9q3BCaSobmbCA5T7lEZ0+tU4lNvlBzOFNLaQ+qw4aW7WftW90+h1LxvJna5thl OGyz4C4UdF7og62Qec1SwVv6ciKTNBUf6ZZQJKMhpSgGvgfrHT+qZhfbMaan2H8gPpWsxbSLRFh oVRAz5kmspkuf9VaUNHQ65dI9SR0+9BCgj8fguGQmLhuuoxo/NwV/aU5Vw2XYXYy9nPntrkF2FN oGOgbL+ENh7l4qfjtv7lRX1VEjSqjelGNeLP3SA1c03l09xi2og3veYHlmoFpqyTfK2Aq6rHHuf 04XAWRIWBw/l/+ueNt35bQPmooh0zSXKg0YEaZI/2T1GbjcQ9GJK3RAHrEPqYeeA1xirxknPXpj Kca75P9W/+M1okpl+lgCcCn1qR4wYRXIIz287CYg2FZYX/P5GgBLdqzwWMoM1ddKapjdB/lRnjz 7v0SNq1VDuWhoGZOSA9hTEAwyaFcOmQA1nivp1128qUknVGOWDZaMmA3Z++BWYlg8nwsAE/Jfqd 2LTFtlJV7s0CGsw== 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 --- sound/soc/soc-ac97.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/sound/soc/soc-ac97.c b/sound/soc/soc-ac97.c index 079e4ff5a14e..29790807d785 100644 --- a/sound/soc/soc-ac97.c +++ b/sound/soc/soc-ac97.c @@ -87,8 +87,8 @@ static int snd_soc_ac97_gpio_get(struct gpio_chip *chip, unsigned int offset) return !!(ret & (1 << offset)); } -static void snd_soc_ac97_gpio_set(struct gpio_chip *chip, unsigned int offset, - int value) +static int snd_soc_ac97_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct snd_ac97_gpio_priv *gpio_priv = gpiochip_get_data(chip); struct snd_soc_component *component = gpio_to_component(chip); @@ -98,15 +98,22 @@ static void snd_soc_ac97_gpio_set(struct gpio_chip *chip, unsigned int offset, snd_soc_component_write(component, AC97_GPIO_STATUS, gpio_priv->gpios_set); dev_dbg(component->dev, "set gpio %d to %d\n", offset, !!value); + + return 0; } static int snd_soc_ac97_gpio_direction_out(struct gpio_chip *chip, unsigned offset, int value) { struct snd_soc_component *component = gpio_to_component(chip); + int ret; dev_dbg(component->dev, "set gpio %d to output\n", offset); - snd_soc_ac97_gpio_set(chip, offset, value); + + ret = snd_soc_ac97_gpio_set(chip, offset, value); + if (ret) + return ret; + return snd_soc_component_update_bits(component, AC97_GPIO_CFG, 1 << offset, 0); } @@ -118,7 +125,7 @@ static const struct gpio_chip snd_soc_ac97_gpio_chip = { .direction_input = snd_soc_ac97_gpio_direction_in, .get = snd_soc_ac97_gpio_get, .direction_output = snd_soc_ac97_gpio_direction_out, - .set = snd_soc_ac97_gpio_set, + .set_rv = snd_soc_ac97_gpio_set, .can_sleep = 1, }; From patchwork Tue Apr 8 07:38:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 14042340 Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) (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 4C8E0263F3A for ; Tue, 8 Apr 2025 07:38:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097911; cv=none; b=GqhYQr55FpM6IhcWig6p+nGzZt8bd+73rSPWhs/edD4lt6CjHGzbTEv+sR1ns+tH3EGGTe2Iwy+eBgYqwOrbfEbmTI+UY9KwzGieBu3g7vYhmSjCzkJyCNTTvPqceABx4ZFPYSsd3LybqDZKeaK9vXq+RuNs2KoWK2aIcmQPdWY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097911; c=relaxed/simple; bh=odvVZUrS3dbzVw9lDvpqQQ/85WCUEdMbQVAmeGMYZGc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=UFXTuAQCI8cU8jtljQkCFQrTsNgcNW9UEE2wrC1HC2c6IGuInzJwWvm4blNbWbLu0V5LJ7MVUI8ia4STfqrfTj4H0JZgu+kK5M7pSb27RG0e9oNKemGTrxeVwscdGC0ETIflD2VlopXOL2XcspTuFqxX/wSY6v4/wXegLuo9nm4= 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=cS8c49fc; arc=none smtp.client-ip=209.85.221.43 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="cS8c49fc" Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-39c1ef4acf2so3074556f8f.0 for ; Tue, 08 Apr 2025 00:38:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097907; x=1744702707; 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=vM8Qea3FMtrgDWi17clkzSyShy7K/VLobQ3OM+BTpzw=; b=cS8c49fcSq74m4mT1naL6gWvEmKjSeAr7iW2/xt5Nk/3Lj30pEIpnZW3iAnFq2caxV ecdhc0IuzAgjU4zoWZvdre7KT67w4aqAlVl4NAcVn/tjQ/jYaClaBbRa4Qd83AMaMgYQ W4QmfWMhbblZ37x2z030M80yUu1ue3qYQEf5wHpL/RAtWC4DhQ56KK5xeL0lqcpf2pGo 57ab9YayAFdA55lIcifcJrLl03yQqwK0UQ7s8wOJEJeUSs6NqgVhyVC3f/VP269W0yE0 plWxOUxkbncvsFVS2IahiXM6KYc+lLbc+Nr8jTcgfWQifIU7axjttaH1R6N7zcIh+FNT E34Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097907; x=1744702707; 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=vM8Qea3FMtrgDWi17clkzSyShy7K/VLobQ3OM+BTpzw=; b=a8/4g2q6AJmJat3qw1yipQJYwO/4BjxTIwYR1XCoJ6A9e5uZUgkhm97uZIwCMWhJbN X0ibXuh1v2PIDWJT1pLrhXW68wrUgBU9FiDqHNtlUl1qSsSikbqHH4UTdSSE5s4RgSj4 dvPEIRE/NAgEa93ufqxPxRZRTqpCKaw1M5Yo05v5IOQzCzL792Hema1RxR4DjLHNvoiv B695064sbB7yAPDkkWNBEoS/7mQIm6j9OYgAR6cq8fOgV1shaYij0eB8Xfg3FfIyjRST gDMOWLbnhhJvbCzpJFI7bt2a/M7FOQIIr/Wqiw4M3pt6wbReTQYQTyWznuLahfpB93iP dewQ== X-Gm-Message-State: AOJu0Yz6/GTHG0TeFI6rXHYm4zDyJXstMzJyADwA03mocOINvCzqkeVt cWwQ6pEb6wJA+GtTMtcNIY5HSxzlI6AK1SqBCLFdcNeB3pP/+wfNL8BXQta3YBo= X-Gm-Gg: ASbGncsOLxxRycehblYmOM2oDn6294EfLj9hc04bdhXTtg8Ty0xkgjPH0EvnClMu242 wybxMTKUeUybJkzW3+nnCsormSzepMGb5kyz/NlVRkoRYFhApHiW86FEvjVG2umWvT13GMZICSx 2TutvtXIHDT04Gx1/aL/7nnfvR6I4nKzATkG6VtOURp/tEKLxS0upyL9NoT04NqD4bXKVI6akce YdzYkp2W7QNJVO7zV+IKhPbKtye/li2O9BrOr1ZqH66H9/DRJj85JbcK/6hPiHMP3p1revD9fGI 2kE/IeFOB3PE4Uf+TlNgMplHqL5Fhint+2Mr/SE6agFzteWp X-Google-Smtp-Source: AGHT+IHG4Z/ZuFphLMM4BLXvIJni9vAF4RZfbvwi7RnlWhP+eHtEE8msr2+s9dSB8JIiVDJomM+vzA== X-Received: by 2002:a05:6000:2512:b0:391:253b:405d with SMTP id ffacd0b85a97d-39d0de62927mr12155263f8f.41.1744097907542; Tue, 08 Apr 2025 00:38:27 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:27 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:20 +0200 Subject: [PATCH 02/12] ASoC: ti: davinci-mcasp:: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-2-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1670; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=4r1nNQSWxtmth2sTRGpaUPwZfF0gETP2bZXWejf1QY4=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJtxz6edE9QBclqAj6Xs4+ohVR6fblexPUix T1DRmXYfQCJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbQAKCRARpy6gFHHX cn5dEACtbJfAMR6blmJ5wZcZOFlii3iInTRZzxbZjFSWOCktnBrvaRB+jeqQ3IZxcM4fzKhQHs6 N3KJTejg3lD5nx5JVxxA9FRJDkXlDOzpJa/5/eobsWgmQOtYyD2edbPb//P1qw5f0F2G6k+7cET CQ8DZFfEvRtULbVjWYkufogdf6u+2oPkLlsicSTyuH5zouYuKanlMmQXwaZntrm4QgRhe7m8q7b adhDH5smg3VjX3GqZBA4BsfI0fLWJHpp8gtVn9ck85B/l4hXhaoxcAv4EaOZiDSamljQOk6+3l7 D8m7hQTMuB2DmVTypZe4f6hptW+oiIqnrhcO/8dAZZJFBgCYnV11Wdbx9tZjiAvT2yvShU9H2ae GvMZTUu8277850aaeuD6Ig438+uY3Z1F7TtVBBRs/gurlaEcl+hHP9/OfOWVeKf0yIlXFq4H0FK jUCe2rYGiEzQRrJUHgAAj3tY9t0Jge2Yev0Lv9LebKQVxNzB1xVdM418dKMTQOh7xe4meV9YMIU asJa6U6nBxsZyJs4ZZOS7TWzLJTUssSXguWW7ITmLEAwavxzDfV2OlMU04xULphX1f6QaOibmjt +kkXlVFP/GA+1mfY89eommtJmf2iBx/O7Z9j/vKwN9LfxJS9v/hK57pPhqXVat/pH6Cg/ATvSJX RlU2bZozo648+fw== 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 --- sound/soc/ti/davinci-mcasp.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sound/soc/ti/davinci-mcasp.c b/sound/soc/ti/davinci-mcasp.c index a0b8cca31cba..caf1887cc9d1 100644 --- a/sound/soc/ti/davinci-mcasp.c +++ b/sound/soc/ti/davinci-mcasp.c @@ -2157,8 +2157,8 @@ static int davinci_mcasp_gpio_direction_out(struct gpio_chip *chip, return 0; } -static void davinci_mcasp_gpio_set(struct gpio_chip *chip, unsigned offset, - int value) +static int davinci_mcasp_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct davinci_mcasp *mcasp = gpiochip_get_data(chip); @@ -2166,6 +2166,8 @@ static void davinci_mcasp_gpio_set(struct gpio_chip *chip, unsigned offset, mcasp_set_bits(mcasp, DAVINCI_MCASP_PDOUT_REG, BIT(offset)); else mcasp_clr_bits(mcasp, DAVINCI_MCASP_PDOUT_REG, BIT(offset)); + + return 0; } static int davinci_mcasp_gpio_direction_in(struct gpio_chip *chip, @@ -2216,7 +2218,7 @@ static const struct gpio_chip davinci_mcasp_template_chip = { .request = davinci_mcasp_gpio_request, .free = davinci_mcasp_gpio_free, .direction_output = davinci_mcasp_gpio_direction_out, - .set = davinci_mcasp_gpio_set, + .set_rv = davinci_mcasp_gpio_set, .direction_input = davinci_mcasp_gpio_direction_in, .get = davinci_mcasp_gpio_get, .get_direction = davinci_mcasp_gpio_get_direction, From patchwork Tue Apr 8 07:38: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: 14042342 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.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 6F086263F4B for ; Tue, 8 Apr 2025 07:38:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097912; cv=none; b=LcK4gL6/K5KG/YcysZj3rwTgBscK8Pekf4UyTvIQ78HJ7GkSiy8TS6rdgAJ0UJg0UHT6PYsDy2iM7UiJMBMEftGxd9QJTmVhcYxyQGQ4wANjnjXrjoI3UceEa49+jI7YiO19DIjYEyBEwO1j+eLNQ1fGmKmpsc0431ecMgkPkU4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097912; c=relaxed/simple; bh=1IUDawPuMnzL1syBH36aZZ6k9aIzZFFvZJrc5M9W+h0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CXT3UamP28+g6WFbE4QKLVwZzqHal6inpWn1PHsid41aESPvjKr0AJ4CpH+PdS5EbtVEnld2ChaOSCTdy1fFClVgXScoz//ySyQxQnjpS2ujLvmmzmg3Kr55QaXGxK0RfimyyvBPmhhVs1nok3STYPJUH9qi7nK9wDG+dBhIroQ= 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=MOhg8jqE; arc=none smtp.client-ip=209.85.221.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="MOhg8jqE" Received: by mail-wr1-f49.google.com with SMTP id ffacd0b85a97d-399737f4fa4so2786335f8f.0 for ; Tue, 08 Apr 2025 00:38:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097909; x=1744702709; 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=/qLbnSxZuvxxqgDY8JPrap5c14Fhz4xBCnHroQ52eE8=; b=MOhg8jqEjcQpPV6BaiKAsgGYgaOkkNOP2X1EC6trdGOqOP0dM9DHTYCAjyIufrvGgk idFSLSLXZqvX3CkI8LosZLf+B6345iZSF9BwYLs36LFcG48+Mwo4HT7wwaOKz7iEr/Tt O89Bz3NAVP2dOKHFcVRZjm8OS89Z8OmNvZDqQUQyg6FsJoh5JJfgVw73z6uysXXUO6hV JCyPlO6LgfuwQVqV7QPlst+nrtN7AAjlhBg5Y//WZXDc/KewzqPb61G7bBuvOkJQKdC2 0hDkku5TNsn2UisDSn7HPIU+iFuqmbIpPfFdkZgMFznYChoEw/Xn1bGXvJwzZN4Y9CQ1 4oXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097909; x=1744702709; 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=/qLbnSxZuvxxqgDY8JPrap5c14Fhz4xBCnHroQ52eE8=; b=Jga5BonVrRP/qlECJe2HS/ovXTUwqjdP4bV/UXR+NZDUc9YhBPtRyGLTzt0hUgyfup QMR1OJrm/2qjW01k+FRoCxtIk027aHrVUiU2nhB/b9EGNSXbKjB+nu3620tUbTE9lQ/U FGsEafWygV7K9F6PTLU3la7dTcAf6J2wI3OKd/hAXvXhbPJLSh2d/n65JULvTg2jdlN0 kUsjXR44oigger5Z4coTJcSH5zAwsGEdGcPIBPlUdyaQcG4Q/nfvRJJJJfhtIrw5xiPR KME231LxvF2XSFy+Z5chX1OYR2wmRAggZBFLVg2EISvlGUKrxgJJ9KKpNLXgB9YBGZwN gqBA== X-Gm-Message-State: AOJu0YwKelB1pEMeIoBKyDZjA/qnGb9tAe/k1Hfh/jSSr93GOZivbFwa iG6/tig21baL84M67e8a3U4/NXR1GKo6/8Hh5aDWClLU03mh4AhXruChueR0B3Y= X-Gm-Gg: ASbGnct8pihzYOaEcBBhTD0HteGPW114AsUVWyerB1x3sM2GrLwhuL+uxku4El6gX8+ SfWeGgOokfQICLYobzmWzRWMi86hd/ZgVU+tj+uqOjTLNtw3Jn/45Uw3ysZBEYCFA7fYgl9loGT xvQetuzTf1WeW1VEYLQmfumTn+ocE49GgnBWqmOR1zvFEHwZ5Q0nIi0njzT33hOjlvfDFRV6ziF 5AK3INIOmyi2lBNWoSmu5ItY2de1SNidv0SEDlbmNhkMOHXIsX7NoKUn+0Y7bJYyGoZPSKdoG2K 6iNsJSZG1qWbkydrVRL/2TkJED5eW+8mIbvr1w== X-Google-Smtp-Source: AGHT+IHvYGfZ7yR8oB9kGjMs/YRCRLgRd8dQnkUz0sLZd+LtxfPulakxOzObaL6yiBQuQ+UU4Yt92g== X-Received: by 2002:a5d:5f83:0:b0:390:ee01:68fa with SMTP id ffacd0b85a97d-39d0de2564cmr13657198f8f.24.1744097908651; Tue, 08 Apr 2025 00:38:28 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:28 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:21 +0200 Subject: [PATCH 03/12] ASoC: codecs: wm8962: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-3-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1574; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=0wuGbBgNgomJF8AO9tExLloUdiNGvc37irSst6MvvQg=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJuYHJbAn0GFK6r9Phd4nSelz/JqRjF/cNIt 9N6Zr862BmJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbgAKCRARpy6gFHHX cucsD/0YLwi1Yh3e4x+YoiY7EbbSTHrO2YjLooW+nxXbIpy0FsF78TIVsyApbTfSTVUJwWqc+IY qpVzaaJ6IvAnFgcQYh1jhsEvaypV4KbuVLmDMA/dCx+h5KORRTFitTI8E/RdtRHU7KoSRcbrRLU uTFkwsamxnrd2bUU4LhNpsD5pqNRKsWSGbGwYKBlniTUApUl1fVW8ud/Jzji8sNBP6YXQq1/4kl uwnB6BOO2HmUGFKItvFHT9d8Y1sxzHFr0XAb8ywWuSedircQO2/Gd2B3n/L/045cL2I86JNxDbk 2aUt3egi0UQFkpMt0FYJlptnT6Ym184FSm3uEYBPSroON6khC38Vgw1FOw4DxhdN/Hu/NLTJ5Y5 pJnKy2KnEGlqzN/fsQRM3yZGcQe/SIu7Kgn+XQifR4jzU+QcNcy5kRIikigbSMenJcQtgKCMGoI PRKeXNUaFgnvG6iKYu0FdVoJfJQDfEchGz1vyRG1yHcNGVtPvHaQLuig79dLq5iSQzs/0Z+mySJ QjPKB2KRBFF4KVYZ36wK3ycwLLDwH+Qnvh6W6bfrE33fi59dFnEw5fgQZ2GABHHBEHuLG/8Ge5Y KJ4pSxc7IzpYr6yYgbrBWl1FwStcl5ofwY0TGQdl4zC1d2IW9Y4PFbdBtQXn9lTKyy9B8JZo/HM 0ExCgf8kRRRqdxw== 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 --- sound/soc/codecs/wm8962.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c index 68f746626c33..d69aa8b15629 100644 --- a/sound/soc/codecs/wm8962.c +++ b/sound/soc/codecs/wm8962.c @@ -3407,13 +3407,16 @@ static int wm8962_gpio_request(struct gpio_chip *chip, unsigned offset) return 0; } -static void wm8962_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int wm8962_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct wm8962_priv *wm8962 = gpiochip_get_data(chip); struct snd_soc_component *component = wm8962->component; - snd_soc_component_update_bits(component, WM8962_GPIO_BASE + offset, - WM8962_GP2_LVL, !!value << WM8962_GP2_LVL_SHIFT); + return snd_soc_component_update_bits(component, + WM8962_GPIO_BASE + offset, + WM8962_GP2_LVL, + !!value << WM8962_GP2_LVL_SHIFT); } static int wm8962_gpio_direction_out(struct gpio_chip *chip, @@ -3439,7 +3442,7 @@ static const struct gpio_chip wm8962_template_chip = { .owner = THIS_MODULE, .request = wm8962_gpio_request, .direction_output = wm8962_gpio_direction_out, - .set = wm8962_gpio_set, + .set_rv = wm8962_gpio_set, .can_sleep = 1, }; From patchwork Tue Apr 8 07:38:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 14042343 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.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 4ECA8263F48 for ; Tue, 8 Apr 2025 07:38:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097914; cv=none; b=vANV6yGgXcg0I9+CfCAsvc/MfhF4dUaTXtjQhwkDMwIDTndoulgigw7I7ULmU0dvFIfea5GTlJi8LynrqIOQ6cxLMVR45nrzWlDDsS2VZAXCsqV1w9Vh3yqsq7xEz7fu2RZ3Y/WrbRs7bd3Guv3K3W1J7Tsv2nSY85zlL9TwTnk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097914; c=relaxed/simple; bh=L5T41Ha3vwVgec+LKuywfKYPQFYp4488ZbqdSqHolQc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=FuwyIsfcRPD8Ta51dusXovesh59IA0DJqvgrkx15ZM4iNjCyWDvgbBXNBbaZiytAAho5LuulpGjHjsHNDvxdjpyUlVrRBjoh0ajPhG11duXi+9EI+CzdnbDrac0aYHwIjwh56K7H+2NCOPh7NpzuVkcsWpRPAjlrwFLykWrE178= 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=n9k4Zg8F; arc=none smtp.client-ip=209.85.221.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="n9k4Zg8F" Received: by mail-wr1-f49.google.com with SMTP id ffacd0b85a97d-39c1efbefc6so2989747f8f.1 for ; Tue, 08 Apr 2025 00:38:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097910; x=1744702710; 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=kfNXJpntX57p6p2HBzuwOXB3bKScNMDPqsKUXLptGlk=; b=n9k4Zg8Fzv9TYnpvkcRX5oZwtq5Gg4ZgfwQAQNr6Xh2uwyqAYzTIMObHXN8qCfbMnW XAZMAPleouJhR2ZrBo3yMcRJHvaHQEXqBuMiVRQ+yljhn7/1yh/zLDJKDOby+rtF4bJR y6RqJMHVOO9CSuZaPqgNn1RbS6y9qhnizMWfEU4nHNOHI/BtDGZuMyG/0StcD9ZRRKWo MmHxIjRusJe45Gj3AYeZjyRLOuOUWsD+4hnBXKJ1lvKNCYz42Zoc7GjSR2EzQ/lMLlpk di0/SPUoeUHnxA7ux4aoMVUBomYVx8brC6KfHgLoDNb5LJTbGMu6orM/GFv5X84i8NQR Zn4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097910; x=1744702710; 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=kfNXJpntX57p6p2HBzuwOXB3bKScNMDPqsKUXLptGlk=; b=k1wZuCQ1UvbOqeu7oZA2CrTRCrqNA9LGSzzfznUFoT9rgpShK3SyOpYZCVePRfBFKq 26uoq3aiGgd/EVVae/U2cxMAO//iLBPTgVwJr9udF6npMxlcRjWZf7q4hsB6zg6bDyG4 4Aq6HiLwSCi9wxZz3BdfJsU7Odn6khTnj9bV4NWamIZi5HOIpgCPdebaCmh6POemave7 wwtrh0qjOz4BkzGwGaLlcOIb4DelalJZKNnfmmppr6JxhiCWc1yiLu8H6cVcJDu76rNE 6gm38glPxv0up6A2kVXE2kskJM1cotDIBrDFgrXlyGJhA1aj8gQZ2qLiNe91E5Kz6bmp CRaQ== X-Gm-Message-State: AOJu0YxaF8/6TC3iARcn61jveiWm1c0XJDRn5skit+GqskwvrxK038xn 9dNeyhPoOu+J4D2WS6I+/kQv52mdHIGZqG2wNXx6HpXVZgOG5SheZbXX92LsBjg= X-Gm-Gg: ASbGncuhNEL3XtrM2dbYaM4WZfjQASx7SRuwkbIq3zjAqvSJSpQRWP4fI7NPzD/wJnR tvD1Yo/W7WAtWEV89pP3s9arJ/AbLaC77RiRDC7k2WB/3KwUcNnHEMFalrL9wDwHxViQl6i3TXz UJDSqrXrykD+0RBuewe0U5je2DAq3cOqn3yIgSX94rkdyjMjUhFSvyDEKUymn9f2RnLB/5PriIh sfjkzNXDG9tqwK7BTduhi4vtSYZtzgclL+fBy5AeIbWH/TKTsSBkxCaym63wP5CMBho6L9WNAof YPzPSxoRhqGg/CCfA0QEAyX2jzCjSKdB4uV5mBEyAumIRjGK X-Google-Smtp-Source: AGHT+IGai8x6sYMmuQjTZlOAl2dV2nu2vKt8bzQLfSxIdLBY64Nk78lnf4JieYJi/KN4Md8XEpVpoQ== X-Received: by 2002:a05:6000:42c5:b0:39c:1258:2dc9 with SMTP id ffacd0b85a97d-39d6fd07bf6mr6383862f8f.58.1744097909723; Tue, 08 Apr 2025 00:38:29 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:29 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:22 +0200 Subject: [PATCH 04/12] ASoC: codecs: wm5100: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-4-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1536; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=eCAzJxR7BEmKW+OrHCqV/0gcI/0bn9PMYKCV9A4MflY=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJuHFaP+AQBZcqqOWYXn8VtjZ7+6YS5jQ2Yv iSsM5UIbTKJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbgAKCRARpy6gFHHX cgTPEADGyhEutaHz5HSjjOvub/MGRI7gGFYns34ZiHnExD9RqTS2SmEQGPewtRQFwJNhqTdeSAi S1IFub04yf5rbWpFBOMWY1qWi7I/mKy0SfiLVDn503ZVYP0CXdluH/CtCjuVhMq2lGvN3zWSJid Bq1rtg8FjHY6PP2EN1aPEMhUxPeWI0nGfDAVarK/pREI8d872aah8LCRD+z4kKOy877g7aU3lL7 Uh6pvQ4uCM0G/rC50TiN3SxT7lGkPLLR5S50MTzXqs5D7xh9TgT4QDilyP4qWkFcOlLPb0l7tWY Y7GQcn8TwJNCO9V4e8eeDtV0xT6MuA/FK9o6GWx/8kRwpqiLy1GbmV1BLAfbwqMGOk9/5RsZB39 LKyp7SGgJqXBqNP3zYIzxHnB2WxMYhqFDM+2BVz1UQ72h/Tq/jGhWhvr8LzKxdm/bMRVQGixRWH nbW6ePGGgPuHKs1ZPh2vbE5PqpwsG7tlAkdCrpsrN3WNevF3t6E6yZWng0oA/bZ2K+eb9c+daCN oeIjo9NkSsOBnYsYdSMp+nOf3kIKmcUtOqc97wpPJASRfrPZO8TC3fAbc8UjXW+JrcNzsDJ2iWz mEumGp0stghYdQc2IYVk/Pj1+apmtveSSjjDqUCi8l8e2qwZbXLyWNx2D+DkI7VicdvKjyeauzG rSJ+aCq0NBIq+OA== 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 --- sound/soc/codecs/wm5100.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/wm5100.c b/sound/soc/codecs/wm5100.c index d9e5762324df..fb5ed4ba7f60 100644 --- a/sound/soc/codecs/wm5100.c +++ b/sound/soc/codecs/wm5100.c @@ -2236,12 +2236,14 @@ static irqreturn_t wm5100_edge_irq(int irq, void *data) } #ifdef CONFIG_GPIOLIB -static void wm5100_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int wm5100_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct wm5100_priv *wm5100 = gpiochip_get_data(chip); - regmap_update_bits(wm5100->regmap, WM5100_GPIO_CTRL_1 + offset, - WM5100_GP1_LVL, !!value << WM5100_GP1_LVL_SHIFT); + return regmap_update_bits(wm5100->regmap, WM5100_GPIO_CTRL_1 + offset, + WM5100_GP1_LVL, + !!value << WM5100_GP1_LVL_SHIFT); } static int wm5100_gpio_direction_out(struct gpio_chip *chip, @@ -2288,7 +2290,7 @@ static const struct gpio_chip wm5100_template_chip = { .label = "wm5100", .owner = THIS_MODULE, .direction_output = wm5100_gpio_direction_out, - .set = wm5100_gpio_set, + .set_rv = wm5100_gpio_set, .direction_input = wm5100_gpio_direction_in, .get = wm5100_gpio_get, .can_sleep = 1, From patchwork Tue Apr 8 07:38:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 14042344 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.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 6ABD1264617 for ; Tue, 8 Apr 2025 07:38:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097914; cv=none; b=DI3ArFnfRWxae4wVJzQYThLIK4dPjo+R8nW8nDFAxBAHfIMyiDu/sr6Es3Ei6KpyIVObiymNkT8rgN7O34TEKwGKmAXXuL+a6Is6icp+rLImgWrbLiF645wCvyup/FiXxbXdq5+6bfxFD7tn5n5IsxDvJp/QTGUJuGuV7wG9l/U= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097914; c=relaxed/simple; bh=gnxLULCAyuh9NQsbezqTT7XeAICs/jSdAV8dBui03AY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ud2gWwR2w0EJLDVfJttKK2xY52ELiCLLhDVOT639yaJzLdbIIhuFqeFpdIF8s7blloByYPLsjaYmMquqJ7nHy9w0Lkd3ZyvN0dS5sGD1tdWgUktnUk5IWypEtQTCrKEgABC09PUJVERyXMgYhSU+Ovklvbt4hRRGayxLPNhlQL4= 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=Zz8ItODr; arc=none smtp.client-ip=209.85.221.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="Zz8ItODr" Received: by mail-wr1-f49.google.com with SMTP id ffacd0b85a97d-3995ff6b066so2830042f8f.3 for ; Tue, 08 Apr 2025 00:38:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097911; x=1744702711; 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=aDax3Ws05YZ8zmDA6rC1tfgqVxvQ1cnKk2mOaqzS1/I=; b=Zz8ItODr+iek7sistyaWm9uOHGLFGzwiCzZqY6h698pvEiBDAA69ZRpP+4SXCizoKg /C/TKZ3zMZRaSuENpRx1K55P0MXim1OLralrQYVtqwXruZdAoE+vzfEWAaJJq2Ux5pWY 1OGSznWL1t4ykOzYE7BA0GR3fbovH+jDJ6PJlc4q9quO5htqnyS5M6gZRZpD3jduci3n NQClzZhf+cbGyxWrGImXHddpv2kkE0o6iMcUQmjW7CYHQN21ne/RKSI4eeqi0clWPdk1 MQD/C7MOquBdTVQgRWT/Wq8FnClbEvpZrJrEMoTPrrKOAX4t/fv/U9AjtfWZGiD/JRrT xGUA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097911; x=1744702711; 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=aDax3Ws05YZ8zmDA6rC1tfgqVxvQ1cnKk2mOaqzS1/I=; b=HIsjgOVj8ILxTeZqd2UwsRzS0lw4Us0nWAjut6jnQWb0wQGjSn3/oaFHNv95Bp9DiU 3sXrJTVb8gCVzHaXxOrHQZo+5pGm2Jy8mHo4CK2rTBu0ewzYr6TT26TsNgGG90pA3hwE 71eHfpCm8zIBf2T/FMn3mDhRwLrx4y4sPJBAM202vDsSELDc+0mz/XYvO1bwU07E1v8w v30dTKCV97S6fkAk/Y71NPFBj2gV7klkE8Dje3gOAyqcMUJTCMnOjxFIkcWzIYlatHI9 INEi4Lj5wnkrZUiAGIlI6ysZr5WZfR6kTujzfAkcuOWb6HaKwWnfgBAPIa1tgGCbyhHE 91Xw== X-Gm-Message-State: AOJu0Yxl4Cp+GXkqhLy3QZOK6MutYJKMIqyaLjPMaoeOPbOByeRLIbDQ 5pkK33Fn7yWm/zHPsZtJk8QZR2L9nHqoVvGe3kmHlrzn4x4EgcnL8/3QW6OKfBI= X-Gm-Gg: ASbGncuNXFGQVKnzqpCfh3N0w2nA3IFpq1Edu7WBxWiAC6R8sQ0C6jC7Wqr9accea3O cS4mddjOCmb6wToC/UuPpiG5xVezqrBr13bBevtiPI9hBjOXvya49oVSXubhmKDg5NbpC3ahtNt jLI8rRF0ccFw5AIS8iaojDhjnGjoEYPhG0OyH4wEyVs1RjRqQrb/RV2OAXIjgVM9WCt6pWL1S3S MK5zz31VSrzuI7JKLLhoexkCExkd6B/R40rhwdald0fc+k5W70OjZvs4Di9OGY/fi2kbDQRQdEj uEXoTOhj+agCOALFUgqt/4dCG8LTXRiy3oPT+w== X-Google-Smtp-Source: AGHT+IEWN9bYde/xMBfOkHQNa6HTYyFDHb28eVaUUMXpnBBVvhESil1QEAAwJj+1rOSrQNH6YQ+0zg== X-Received: by 2002:a05:6000:1867:b0:39c:2688:6edd with SMTP id ffacd0b85a97d-39cb3595c48mr12927726f8f.15.1744097910752; Tue, 08 Apr 2025 00:38:30 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:30 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:23 +0200 Subject: [PATCH 05/12] ASoC: codecs: rt5677: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-5-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, 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=zqMzTD4a9F77NzTYV5GJminLBgRVL2t9zDj4XQHtrdg=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJuPhUyJQBxaca+q9M4yYolMhou4yTpNTZ4z bBZeOmVg++JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbgAKCRARpy6gFHHX cjTPEAC1m5Nhh2RvAgn2Pdst2uBxBgbujINKZhSTjhjkRq2GEmSbijkEPVPhf3lTtSgh831MbWY /u0gfFdKiH205VrjCt/8wzP2IL4IMpSaWYwt2Q2JAIHbbCVfDnJRL7y3hwEnoxArxbkJytcOKis FzezC8j6QX/iHLKZT/aBdX0ldbqSsKmyQYRMVMKm8sJjAS3ytnxsrKtuvjXt39QjGz+9/rJ6U3X +P5nukSNs+yzFNVyFIk6iGrXCC8UEmzVdAe+D1naSqPiirI7nnYt5fcie0iR04GoHq2IDEJaDRu 6hJZJJNBBiLZLIcEQMSs45Xwts0A+SrnEbcXOBgrs+JdkQTJ8zwWppLPWPfbBfdtUDAzOwF9nhR a1fMazH4gjgsVO5GQboxTzs12sAQyUyBKTsWmU/6C1koEFip2C6I7oJJnmqTMtnUgbL1RWHYQ2k dUwigXx6LBL7gN59RUhnnViGXAWoWdibP7VWrZ0YCm+zXd+Kqeoli3saaMek+mza0XqWSyZgcL4 G2KDLyBbxTUWfHj3Wvybh8SBenScb9aaAyCfnFFl43VlOsRbnOieVGSaFPQ6UMTbjj4spNmsfEn qHnY6WkI0X1nN5hEOof8Ym1FX5XGI6rpQDm8qDZ2Sj5QCuCNSeCkDbUvPsjK80aWka4sZj5El99 62Jw0Pdii81VBAA== 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 --- sound/soc/codecs/rt5677.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sound/soc/codecs/rt5677.c b/sound/soc/codecs/rt5677.c index 6e4774148566..69a0fb8d7f77 100644 --- a/sound/soc/codecs/rt5677.c +++ b/sound/soc/codecs/rt5677.c @@ -4725,13 +4725,14 @@ static int rt5677_update_gpio_bits(struct rt5677_priv *rt5677, unsigned offset, } #ifdef CONFIG_GPIOLIB -static void rt5677_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int rt5677_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct rt5677_priv *rt5677 = gpiochip_get_data(chip); int level = value ? RT5677_GPIOx_OUT_HI : RT5677_GPIOx_OUT_LO; int m = RT5677_GPIOx_OUT_MASK; - rt5677_update_gpio_bits(rt5677, offset, m, level); + return rt5677_update_gpio_bits(rt5677, offset, m, level); } static int rt5677_gpio_direction_out(struct gpio_chip *chip, @@ -4834,7 +4835,7 @@ static const struct gpio_chip rt5677_template_chip = { .label = RT5677_DRV_NAME, .owner = THIS_MODULE, .direction_output = rt5677_gpio_direction_out, - .set = rt5677_gpio_set, + .set_rv = rt5677_gpio_set, .direction_input = rt5677_gpio_direction_in, .get = rt5677_gpio_get, .to_irq = rt5677_to_irq, From patchwork Tue Apr 8 07:38: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: 14042345 Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.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 92A0C26463F for ; Tue, 8 Apr 2025 07:38:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097915; cv=none; b=tARS3QS4R44vy5jYOzZo2OLy/6rwQ6ssV66GrQmXcP3l/blGZsOD7pY3Q0N0dXcAw0hJeEZ8vPvzC+Udg0/bI5fZmhVOD2Y+73MfsoakSTq/pmRsUqV9oQzGqt+ee7T0AiKz6mPylfZnUjaxGjqRtq9/hUt93aqAcBjMw5BaNxk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097915; c=relaxed/simple; bh=gmKssN881RyaMdbX9IDKos6vpe0C9x5lclww+lbf4e4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=D1j9h7rMMYeAsuAvAUtBRW0/dgUAz3QqhjAKiFqYp9HGZ0buPCR44Jtj24sZEF5WU/00hVhNMPFbfh20HIgLrO7O3RYUFG1eEOYL/zjuLV2Bz0b1DUTV7mLoCFxycX0QOtwtFfrf4tWEO/5sqcQIkqUT4/LazNCOY0uVmMWq/so= 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=zpKGol//; arc=none smtp.client-ip=209.85.221.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="zpKGol//" Received: by mail-wr1-f47.google.com with SMTP id ffacd0b85a97d-39727fe912cso2230099f8f.3 for ; Tue, 08 Apr 2025 00:38:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097912; x=1744702712; 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=LQVmUT29V2vBtC9E+gdEFAxcap/8e4R6NNrtBDHE7iQ=; b=zpKGol//Mt5OILiY9yqXj2vaJ4bvigJlZ+KtIIfWpKOHQIcibL7AT2h5z7nwcgNBWf 664teir3Gl4Y+XC2chp7oqu5MwKcEJpkoGImMKwdPKUhyEhggXNHPfKocpHhEj/NNMWa WWTzwkEH4DeHWkzXlHzFkoe/By8LA8rJazGlXvRvcJjDwLiBqEXmOLdXIIM+Soh4Mqi0 xzZvIdyuf7rfCDsjmciLWlS8OrSN7sdmSQU79mk8TKshaj6oNJKFz/IdEbw+v7dcNKxX btH6xZa0ieEurCxreWDCsYvtKVwVSzEVkm1Jph86qZuRn1z6CBxVlTUugm20roSMiN+d FUeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097912; x=1744702712; 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=LQVmUT29V2vBtC9E+gdEFAxcap/8e4R6NNrtBDHE7iQ=; b=a41A96yEbdCRSX+I1CLuRbForABD2qAW+Z8PrGOjrDlFSOO53Szfx7Ny6iTyMoc2r0 qfT561JTLnBZAl067zKgEp60c2Y2huVW2Hz1CWM/VRqIml07YPr6QDpSrnOQOCIIps7/ tmhQ9sd6kaFeGV81WpAANBDQFrXcF+MG5kRQyykn2Vsx0p55ykNELVxyF9PCKyo+OUZi O4+Q8WLAadLu/vrXGGfHVnUB2u4RBgRzbNicfN5awxYDb1sHX53zIXhnIWqLQL42Fxdo Y5fVpnjhZjw6Egi1zUrEjTO1si/DssWg/RCJeicEC39fQft18JwOygUCwN5VqnEZvm4j CJbg== X-Gm-Message-State: AOJu0YxTXzV1nUzUCUcLYvOm6AneawrHisKImgQnZViA7Tmg9O/Iiu6l Y3tADQpZxNujbM4zVKAMTjowddoWM5u5Hhc1fTtv0QWzV6Zq6+tj60MCrzt2bNc= X-Gm-Gg: ASbGncsleyVDYX3UEngsfnK89v3VWNwdOfYoRUvRa37VsAbv0/0nPk1N2jfa0puOpRU FSN1aCohQ7gXqdYsS3Tf1gQfrRS2DBYzA407TL7A2FVIRXm7kleV8Ztn301ZzVR9e+Q0y1kk67X zYuUZBbeKzkg81kyDeZy2EC+gO5bLjTQ8EpHXeU5iAtMM1tbjoGDDZLdhIDX1cqssh2AtAGFBpH shNcyv6A517Az82VEJLjGZ4prKxZ6Y79P5zFukm3MhuUloWg906zkH5WwQ8YkcxQ5vECJ4+vefN NuPoV7C3GHMFrqRC+HcaVj/f22YAxqi3SGkovA== X-Google-Smtp-Source: AGHT+IGUJn8Zq34HDc5Dha7/WV8HrI2iZCosrT+ksBpGa3LxTqmcQ7HJ8H3bhYBFYza4iwBG7cA9tw== X-Received: by 2002:a5d:59ad:0:b0:391:1139:2653 with SMTP id ffacd0b85a97d-39d6fd06913mr7779430f8f.52.1744097911839; Tue, 08 Apr 2025 00:38:31 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:31 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:24 +0200 Subject: [PATCH 06/12] ASoC: codecs: wm8996: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-6-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1551; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=J+UXKSUM53U2y2pHQ+9DPWteN9/2otTFvDTKRKmiZUs=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJuvYmZB5HOytKdjpF+bXv0ibp4qgHi/JhNO UlbOT9UwHiJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbgAKCRARpy6gFHHX ctRxD/40q9HVEWkMEU1CQ2bpA1xLXRmNnYTvAA1+Rh9v+2slXDl8EpukoU/ntP7Zcb1HZqDmdHB As0sbr1Xthx002nsTO2ykfLst8E1tfhiQpGo2/YiirvAx5S4g9CAECLgVNBa3vpm/bvdxqP0ZB9 YliQrDQSyolU+tdSU7F0ZDjwLf/9QnQMSEUU2NJRHe/XhUOJ6Dn31c/sAVhCD3/w5NjkPqNwD/R kgXonWNMNi0DvCJq83xI8bdTwID9JF/BdSM6mur2PPpzhnhiPYBAmoUWecdLm8VDKgjbdK1UF87 rtIQJBU4lAbtxRiyn3p3qHPTmLNYDbnPI0hYRi6Mi60rAoqLZqIrXqmjkC56vDzVg+tajH8C9+k glVthIuYXvAblFH2dVsuWzFclKI4mCCtUweAbyQXhflJOD+XNdqkAgIGnQlFsY8nQ0/gYhZa/v4 uGG6YoTTDJaO0cNlWiqGEtJVt/C7CZcaRJLtTek9DYqWHap+kr/vCEjP02Cv62+z/IOdCty3WwS mIEfGgYqsjeX99tBd6rWTZUIVqLLDoNjCHWgp5wZBrG1zu0PzIvpeCe9rTV1MgZdmtIrjE/8eG3 phAnYyMls+IsW2vudz+FckW5zGScBZgs4t6oPuRhEXE2vnTP/6IPkkFQmyHCRAfOjl86CNz9gxh pnSNCdM+uwGQMgw== 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 --- sound/soc/codecs/wm8996.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/wm8996.c b/sound/soc/codecs/wm8996.c index c2af8d7ecdd8..e364d0da9044 100644 --- a/sound/soc/codecs/wm8996.c +++ b/sound/soc/codecs/wm8996.c @@ -2136,12 +2136,14 @@ static int wm8996_set_fll(struct snd_soc_component *component, int fll_id, int s } #ifdef CONFIG_GPIOLIB -static void wm8996_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int wm8996_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct wm8996_priv *wm8996 = gpiochip_get_data(chip); - regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset, - WM8996_GP1_LVL, !!value << WM8996_GP1_LVL_SHIFT); + return regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset, + WM8996_GP1_LVL, + !!value << WM8996_GP1_LVL_SHIFT); } static int wm8996_gpio_direction_out(struct gpio_chip *chip, @@ -2184,7 +2186,7 @@ static const struct gpio_chip wm8996_template_chip = { .label = "wm8996", .owner = THIS_MODULE, .direction_output = wm8996_gpio_direction_out, - .set = wm8996_gpio_set, + .set_rv = wm8996_gpio_set, .direction_input = wm8996_gpio_direction_in, .get = wm8996_gpio_get, .can_sleep = 1, From patchwork Tue Apr 8 07:38:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 14042346 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (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 D5798265608 for ; Tue, 8 Apr 2025 07:38:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097916; cv=none; b=BTj7+9mSHafIFR1RTNW6RN3y8WtG+LOkieUt6AUYKJEV23sgjluQvSWs/HZCID1/Oa59glzGbcCSVOGpkJdEWBcNO/Ggck7W7aA+Ur72zNwsE+Js2E+ZZwTYVhrPqyMY7yY4nfcxXf+bxE2jzghE2im/RiwfnByG8q6Ki2MziHg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097916; c=relaxed/simple; bh=R/A3ylqOH9M0lwaSSat9OzcHkaRY1rHj05MI244k0Kw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ul4KEq4mcf83mhNMh3Cyj/2mmKP2ML/glBl1PuAzA9h1DVcrGvWD/vr0eZvGWWHJ9jZxmnMqr7CHvwmQx3YlmkRScoj1Wtm34aW//rl3u5Tan5JqtnBYDv/kMI7dxKZTmK/gfCTuNbX++A4yo2P1kS1Eg/HDVlfA/Q9MJk7SYog= 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=RXt1wO2c; arc=none smtp.client-ip=209.85.128.43 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="RXt1wO2c" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-43d0618746bso37338505e9.2 for ; Tue, 08 Apr 2025 00:38:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097913; x=1744702713; 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=B1uFhkuKxlLMwl31+Z0D6QqX7Bfo4gt21QMBWz3jFqM=; b=RXt1wO2cCD+aZTO0dw2wUq5CzOHh+BbDPxSOPi4P2PYgKLen3IQsX+e7D14nM2HLRi veRzBOuRWDgz6GhFYGQt1c+X6Kk0CKQtUxSMtzTIUCJJ5U05AEpkVNqp0VW2ZVyeC7hd bK1qK3Bm6K7jb+fvANqKuBqB84GnUO0U4i2o7MvEFOXLkohzX5+aQ4F3DVe9ArBq/7c8 3EnCqFsffPU/VHM25Z5tVfr1J0wVjyiSGWpnYNKWmNlmBPhYFC6pNAcasqqtQNNgV1xO oGiE42UnfQy3VQPd0N8fDQTZPtB32sSot50v6NQQUL7SsYVb7SrzXLIhW0WInvh3gBVU neng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097913; x=1744702713; 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=B1uFhkuKxlLMwl31+Z0D6QqX7Bfo4gt21QMBWz3jFqM=; b=DxSYTlHAbUNZabqHFhtxQD2sX2izrwLGwIpZ6ZfoMECVu5pry8oh+IUDDYIGSGOKYP GMNfnT4jFDRnuf9rhxHBeQaYbv0RFjFAZawUjfPbFe3YT86P4HuaMpJi642I7oh+2wjo bza7SLWv+mo8XCOSLqUA2xJSQedcsNIGff1dSvM0M3eZvWw8uBWISBCUpRtYhl9L6st4 4BpOMBW+bd1VYSOK8LdOZsNTAq2lHNui6v+WwxevO54WcAh6rzvMkzTlSbJEbHyDimFe oS7jHBni/ISUPK1mto82yxda3/sKvaONOYpXUUtZ+2Cugc/ylVWjecNj7mu2V+/Ky+e7 lBzg== X-Gm-Message-State: AOJu0Ywqc9/2Fbr5mtD0aoqd57PAAY2plDEtdauTwVFdaaoN65tDX+/C jZ3Cq6eOELLeNUpa1yrIKJ/EiOfVAHZy85zrkFRU3oEjpk8Ba0heIM8JSUk0/P8= X-Gm-Gg: ASbGnctPww3zeO77ptUcl8GuZYA/TnPm7QqMiTUG8H4eXEesDlPPmxxcdL0XaygurkU MMYAv4gPxJIkcNxNcvKHVb+DWm0HFosHtJr0oImBKPolm4+/LGDcva7zWvfMSPr8MVuyrlgL5Ip t8THkw3kdHpSzAFT9NyUTMTQ1c526p+HX25rDiisJ4Yws+pdbaVq/Uf6JWR9KefVGHvxpaDJZB0 2XapVVSD/0En4eZ1VcZ8JoziOFyLQxWHrFsF7hpUy6kd4hF2pHMprVUU3neKt+KhrvKYXSn+zev Ai57KD7nnD09VEqfCm9mqpi5Vy4N3WzUpjmKlQ== X-Google-Smtp-Source: AGHT+IH7iNRt7fIB3NK4furLHtKGOmNKWjDvqJqeUDP7R1K5uKGIvdDe43Tv9iw3hACcOH9nLmnqQg== X-Received: by 2002:adf:b647:0:b0:39c:13fd:ea9c with SMTP id ffacd0b85a97d-39cba933220mr10732675f8f.47.1744097913203; Tue, 08 Apr 2025 00:38:33 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:32 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:25 +0200 Subject: [PATCH 07/12] ASoC: codecs: tlv320adc3xxx: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-7-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1473; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=NsqwcSofKcQmDaEngiuDI5yN4QKWQmReIXbN5GWUN9Y=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJvYdFcFg+BfZgGFSOp+Nn+UTNQcd/DMKJ7h sDDcwF4HqWJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbwAKCRARpy6gFHHX chnqD/wJyAtjmyiPPpsVt7o1nDHpXRZY8sLviChhI1phvTSvnrU3BpTQiBjb09lyDoBqVReMTnK kstdJfb+JXw8xJhs2Rlyt/X/AcZOvHokd/eJWvRB8zjlkQOCvzsgle25YtURSJkg2yNsIWL5ZUM hJGoMqM6pM7lXQ+NRiBs21v8f+93uAreL8pNwkitKdyn4td9CC+rfdVi6s0Gy4kMqQ4VuXyaq+L SIxV1W7LhXWlxlbSsjMJm5IGeK+4z6mEnyoid6WZbshAWIhN7L9JOVmf9szQfGQMPwPv8pFrnmn Tt8vXHJ1uTm9SHP0dS2trsf9Ef4EppfmIDTXJlXYr9I9NBE7Yz7g1Q2egLzs8FBLChjWPeK/Kr1 TNi4KObYXv5YfocxPwZfHX1CTzv2ENTOOXuJ8tJALFhltcYF2wd4CDXuuCRtE5ScxtdJEkHJL0C R/ZvmG2gwORLBGdwxOKixxAAqn91RPfwcJR1q6FWSqzQsapjJRXJYAVvmIoMvzy8ESYE++4H8j0 JpwUKJ2cSqOcRe8uF+EukAC5efOZKyCRc6F5sUSAtKU4/JBXN2cp8HBcEYPyMW7E6XRqMB2FZFl 7DIbjxOObh6kam3uoBLZa8xooV/Wz0V8e8RKmRFsLY/4ureE4MCHDPdO1ths/duwx+muvrG+Syc pZw7RuDmPiH4WdA== 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 --- sound/soc/codecs/tlv320adc3xxx.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/tlv320adc3xxx.c b/sound/soc/codecs/tlv320adc3xxx.c index 191e067ed1c9..1035ba17dc5d 100644 --- a/sound/soc/codecs/tlv320adc3xxx.c +++ b/sound/soc/codecs/tlv320adc3xxx.c @@ -1015,10 +1015,10 @@ static int adc3xxx_gpio_direction_out(struct gpio_chip *chip, * so we set the output mode and output value in the same call. Hence * .set in practice does the same thing as .direction_out . */ -static void adc3xxx_gpio_set(struct gpio_chip *chip, unsigned int offset, - int value) +static int adc3xxx_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { - (void) adc3xxx_gpio_direction_out(chip, offset, value); + return adc3xxx_gpio_direction_out(chip, offset, value); } /* Even though we only support GPIO output for now, some GPIO clients @@ -1052,7 +1052,7 @@ static const struct gpio_chip adc3xxx_gpio_chip = { .owner = THIS_MODULE, .request = adc3xxx_gpio_request, .direction_output = adc3xxx_gpio_direction_out, - .set = adc3xxx_gpio_set, + .set_rv = adc3xxx_gpio_set, .get = adc3xxx_gpio_get, .can_sleep = 1, }; From patchwork Tue Apr 8 07:38: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: 14042347 Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (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 ED61B26562A for ; Tue, 8 Apr 2025 07:38:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097917; cv=none; b=JSVeElya3Qr/hB/lGzEVlAlDG2eR5oh63RNHkcvV0JFElSunw+KTmCRchjLc0hAerLXXJnpNqkF/VTK2D0Qn4lG1sWxsXBe9A7P6zuLdzmDIlCVPrZdfM57KTpyHZXNRxaeCj+oma97OP9+J8CNw9neLotj3kdGGWbz3mKxA+wc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097917; c=relaxed/simple; bh=fY+pWVILXqb5/itiCqfMZP6GT1wrAGbxEdKCgLUSImI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=GeK1YBfbChoVV+5k2gfQFoiwbmLGK5RC1NdCa7J4A+pfFmxrzHdp7AHemBHKa23wjqkWyhmpYQgTC2HbcL6/wr9cQzq09itlbk+ImnsRSWtJZkfDxlkvPIJ3nR3V6xuefYsEO58RRKikW0g/i9dEv6Jf72rg5sfaULDNh8wQXg0= 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=pR1kh0jM; arc=none smtp.client-ip=209.85.221.44 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="pR1kh0jM" Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-391342fc0b5so4056767f8f.3 for ; Tue, 08 Apr 2025 00:38:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097914; x=1744702714; 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=ZBoBUt087bpPfgkOHFFjzVkIh+yz5QA3imLs9YI01iA=; b=pR1kh0jMaSHRGOEu5hNXz0u+MAyf9MFYaUuYEX5V9gWwUla0RfLyQ/xPIob7bTdEo8 90IY8VfLQNGKwBHONqlok3/gnmMFF2Ri481Ztq02+USCWKTO+iiBkRBlJ7LxxO3oUHbt /7M7mait8DxmbxihJUmxPSvBoFJ7OMl6IhOYaAngxXeOtrCivzusGB9Rk7s4P3FhUQs7 8yYXUEeH8WSJvivxjfAFlCP6x1ud7geOdlQo29khNbzuptAqio3GeswnJR7S3hQz30es 3257T+xsr7bPfikv3zwFj56mNAzzuwX4gSnpCdO8k0SXZkx/EV5ComDSbBogjsW6tf1S fJkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097914; x=1744702714; 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=ZBoBUt087bpPfgkOHFFjzVkIh+yz5QA3imLs9YI01iA=; b=m2VHg0fz2x7O4LfNnRTfIO/CBt0fkAin0rZ0TDxmdOAUSVzA7W2o/jN280kNLBEAZW NdwXMcrHY0ziTc6kprNbuf+rd/5nsilsnq/nse7UrsweFQSxzRhAxLT614pNXcsPNV5B c7M/XHqBlNm1Th6FdFRqBHtSb3Zyuk9vABXhXZZKJDGYuO6uIHo0L9pYjavjeclB1xfV NG1CpVJslR8tWs0WgxGGOB6gTMQ3Swmtz4LI5L5cpeY18fd6B/G/TApOdIjYTIvbUi3j 0Ju52byxTHDDTyQuJQdH8NVfLqH08RPCTFCj8DNLLGEjt6dIr+DjvgFCmz2P1oVlhY3X b+rg== X-Gm-Message-State: AOJu0Yz6objWlMXe3WC9lzyq9NBNdFkSXGiNsBejhQ7uDxYUmcKFaPRe DccnbYT9E5qXPBKUUxltm51PbF8TeWLV2bg5+wkkZpbCxxJ+t8bRxGX37/LyGF4= X-Gm-Gg: ASbGncv2ypexaNmjhDEa2NU1imhFPDyTdSetKyWIRrslck1C0r0vk8m+Lt/2DNmh2J6 MsdsHagU4uWDd1E8E+KWfOd8gOsOy6kIJwulIkCem7AjyhwmQO/Rv3rVKll6B2DHr1rK2zXDOii NnQrsUMD9cYu+UF9rTqMeyxNCVXEbxfwTMzd781F4Bf3oA3m8LSHilIXahF4xgSwEdMOJnn665M Vyo2tyZM7we9VVM/F8rFQRG3rNn7IvZtgsLs5KLUK5x+35n4lrqCHt1HZ4k9nipehUxSNOpIG4R 3Y2N66nOtuUNmT0OIlyRXqCF3FnrxIMwyjOcPA== X-Google-Smtp-Source: AGHT+IGZzWPqum+g/fh0DG9ZeMxuwA7hGhCymtHVGUiGXAbEqjqT2osxcevrD/xaQ1rQvP2TSbkLzQ== X-Received: by 2002:a5d:6d8c:0:b0:39c:1429:fa57 with SMTP id ffacd0b85a97d-39cb36b2a54mr14794973f8f.3.1744097914304; Tue, 08 Apr 2025 00:38:34 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:33 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:26 +0200 Subject: [PATCH 08/12] ASoC: codecs: idt821034: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-8-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2498; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=cgS6T7BQF961sKz8ax21RsHAauAs2dNcFyYRBwkQxTU=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJvNVwa+w21sExX3reksODhxqsavG/ZikzPz C1DStlIuC6JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbwAKCRARpy6gFHHX cqyvD/0dEy+efm6u6Nh8gozJACwedpwcG1L9GEZj2HrNlnETPemPzBV/eINPvN3vGDouJyJcQ+h mcVbVmQk1qeDyNm6vLLDdT7fOppv9yyEJiAEFI9tXbAw0wXoEDNO+wBH9n2Zw4IBmZ2eTn42seB MGZYb4bGFPo51kIYtzUQh4+w/XoX+0tH31w5jnWYEJwppxc5iaAVDC7HgtI+bBhx3cRKpKx5rlI TXQgDc0ixZEtE/VnxrBovtDsoOvcr7qG4xZHPBGk1zVtR+OBCmgattvW/xxMOwt8JCcv0N6mOPC n0GqgeKafgh61RwboTgtDYKpzOiS7TeDkQh422AbQeURJfjg7LK/PCJiluprXBhyn59bFJHFumW xWSwXLhBPwluM1Ku7BxyfUBYswwBcRDeUGaqKQMYyjBiw0dR4cNzMuaRmnRv0Tx+8SD3M8T3Cw3 Nq64hJX/4LsjI2h8dO9xEJRNFMddYp8/NM+tNTdVW4DDN59cegxet9MPt2JVr6/zK3miWQWiBuS BI3lG6bP0W9ZIZnbD5vSAbA9SD5VOH3f93o9CWe5CODtOQs2SQ7w140dy8g4diVc3EMNwuqJk7Q SrCfeYdVjCV0Mpd9IlJ6TK+6WoQUQ286gbR/+GyuKZV0i+cC2uA8u/zt/rhxNlBB8tof79z2s5w b15sVZOUPaOJ/7A== 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 Acked-by: Herve Codina --- sound/soc/codecs/idt821034.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/sound/soc/codecs/idt821034.c b/sound/soc/codecs/idt821034.c index cb7a68c799f8..55e90604bbaa 100644 --- a/sound/soc/codecs/idt821034.c +++ b/sound/soc/codecs/idt821034.c @@ -957,7 +957,8 @@ static const struct snd_soc_component_driver idt821034_component_driver = { #define IDT821034_GPIO_OFFSET_TO_SLIC_CHANNEL(_offset) (((_offset) / 5) % 4) #define IDT821034_GPIO_OFFSET_TO_SLIC_MASK(_offset) BIT((_offset) % 5) -static void idt821034_chip_gpio_set(struct gpio_chip *c, unsigned int offset, int val) +static int idt821034_chip_gpio_set(struct gpio_chip *c, unsigned int offset, + int val) { u8 ch = IDT821034_GPIO_OFFSET_TO_SLIC_CHANNEL(offset); u8 mask = IDT821034_GPIO_OFFSET_TO_SLIC_MASK(offset); @@ -973,12 +974,14 @@ static void idt821034_chip_gpio_set(struct gpio_chip *c, unsigned int offset, in else slic_raw &= ~mask; ret = idt821034_write_slic_raw(idt821034, ch, slic_raw); - if (ret) { - dev_err(&idt821034->spi->dev, "set gpio %d (%u, 0x%x) failed (%d)\n", - offset, ch, mask, ret); - } mutex_unlock(&idt821034->mutex); + + if (ret) + dev_err(&idt821034->spi->dev, "set gpio %d (%u, 0x%x) failed (%d)\n", + offset, ch, mask, ret); + + return ret; } static int idt821034_chip_gpio_get(struct gpio_chip *c, unsigned int offset) @@ -1054,7 +1057,9 @@ static int idt821034_chip_direction_output(struct gpio_chip *c, unsigned int off u8 slic_conf; int ret; - idt821034_chip_gpio_set(c, offset, val); + ret = idt821034_chip_gpio_set(c, offset, val); + if (ret) + return ret; mutex_lock(&idt821034->mutex); @@ -1112,7 +1117,7 @@ static int idt821034_gpio_init(struct idt821034 *idt821034) idt821034->gpio_chip.direction_input = idt821034_chip_direction_input; idt821034->gpio_chip.direction_output = idt821034_chip_direction_output; idt821034->gpio_chip.get = idt821034_chip_gpio_get; - idt821034->gpio_chip.set = idt821034_chip_gpio_set; + idt821034->gpio_chip.set_rv = idt821034_chip_gpio_set; idt821034->gpio_chip.can_sleep = true; return devm_gpiochip_add_data(&idt821034->spi->dev, &idt821034->gpio_chip, From patchwork Tue Apr 8 07:38:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 14042348 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 1174A265608 for ; Tue, 8 Apr 2025 07:38:36 +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=1744097919; cv=none; b=Tuvkj4d0RQl8LmnT7FqliazgVYGXbPJHdTafVuqu4HR1josU52Wja1FkBGAv01wfLwz2j6PV3R+5dxUAKW3tkPgwDEtKPpr2mZ7giyeWN+8mIHZX6dInmkPtE+Inr3E1pwrNWdCJPmu4tAIq3H8CMqT2vci1VYYPbH2qq7Lsh8k= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097919; c=relaxed/simple; bh=QyM9Y2T9KFk9FIF6coN2uL+8ky5fWHdeo/FQXvejEe4=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=hwn3qKlH9xcVmh9DVOlWAKG9t/4HPByUFL3D4GUT537GprHyWlbrmUJwtbuFo+wrJ7ZTukGN5hdSTfueYXbVl4KJ2ZWmToT28+okaA2aXjfaQYV9nFPMMZFPFOWYix579iGw8SrgqfrULJQ88NRjrTLZ5AkzntPFm9oSirgvZtA= 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=2/vmbU6j; 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="2/vmbU6j" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-43d04dc73b7so56908395e9.3 for ; Tue, 08 Apr 2025 00:38:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097915; x=1744702715; 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=W803SFoPErBgnl6+mnZ477H39AcMJ+KI3OFr89zmp24=; b=2/vmbU6jcZCKPgKVxlMnyBjQaArjIFx563FFYtOta6vvij/7yLmQP9TMuCPFuRNfhx ZnoEg6kgeeHJHCu0ezsOFTr1K3LOA0h7nuRynVM8I4WruiLvNivhvRNqIWOrJUh2nDTB txv9KGsnozLmySpIM2NiuQoBU7TSKdMYPSvDVbAtyTXHSm44m93pYplyLFSlcp5UTQuc ps7q3fmuUIHeRvZ3hxmgn7XWnxxUfq/Ne6yjhMhbrBCdLJD4Ot40YBoAiVb1G2ZCWBJJ ekbtORcteRp5OmJm8zTxiLXaWk4q3wAVNXD9857OPB/FvCcEy/Cmf+MRbmmdJubmRFs2 DrvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097915; x=1744702715; 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=W803SFoPErBgnl6+mnZ477H39AcMJ+KI3OFr89zmp24=; b=nC2gKiXSvDQGPvqVl/Bd4z7CQ9isxExbYlhy1xGm1OKaaNqNLToz4i/CFIfm/aEq/e 1Q8HtIJX94ihvkZEgKlhaYQcreInb2uqrZlvYdSjFiDDr2SgaO37Xe4We4HfA4v0Sa1a aro1qnDNXDolEbKQ3BAqG7q3fQZoc8uK8yyk1haH5vnVUO4OC0l8CD62gmlE3sQ1tABi nLzMBV+a5yefpzHbMhEwZiD7qVafI4HLahkHEweFBhc/Q0myxJN9JOlRJvu4GuTfWRRk 0l17J9V1wdJRNrLWygkxp4l25ScbZP4gxeUMjQsbZkdHhzzB/wlnX/oU/Ee0oosYxcZE nyYQ== X-Gm-Message-State: AOJu0YzJUf4GAkVN1mTvVn6qKCN8194SQiItbwCEaNgxUh/e4hqrnUeH fMqW4jXYI3LwIb37v0qPqC+ppcgBjk8sPhonRGg9LAt0sQkvRCRSfyQvdvggplk= X-Gm-Gg: ASbGncvk3CKP8UL96PUs0pZ3BCCj3Gr8gg2LmpXSzHsRznCxyza+M4/DQDWoJ8Rqqcr s1TWY969P5u5hbIwFWDmNhl4EYBX4m1TjiNIr1SmT2U7teiJAcvw0pl3elepiNd1iuYLFLrzCus Kr37zodzD5ExBGNaROehwCP98Iv6Dx7hTskNifRnC5eLnOAFHA0DoGBFVHZXcMAFa82jWevlGAs Qqf+sTnOOR8gHJ98emQIZmi3NRdkvi1CL1U4uosJ6HPiSbfn0DRLpLib2NkWetoLhs2juUNdViN usMZjczWSScVV8hDHBeDJREhFe2UskoBNk2Uow== X-Google-Smtp-Source: AGHT+IFu6lZjvoeA0BI6CTAms2fH8tDTh0Ob12qHNOFNaOg2B+9x5oIaqW97sCHJZtmtAyMcmFnsjQ== X-Received: by 2002:a05:6000:4212:b0:39c:3108:3746 with SMTP id ffacd0b85a97d-39d14662f19mr12870082f8f.52.1744097915381; Tue, 08 Apr 2025 00:38:35 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:35 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:27 +0200 Subject: [PATCH 09/12] ASoC: codecs: peb2466: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-9-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=2569; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=y4V5c/YLi6h6vrcHaV9RorzHXNL2yLbtaONpy+VaplY=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJvxXG45j3PQaKR207Rl+yciiaJhmVkwRAT/ peItlc1PaaJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbwAKCRARpy6gFHHX cuilD/9ZQ1TM0g2o7wCTvTxqpJDnIQT6Pidi0cJW+3Ak5pKNfe8AkS/6gI2e9hdn2ERVgBV4yg1 3iRb3J0oWGBqMnLH3fEHdTTLPAaH4NBy9tDHDuow5zKbrwQSNk355uNwBnOXx+rW5XkqWvrzZ9F jyeYEUJKNQ9TMVVbU/WFKJBwMl8vxHq3IOJSU2QV7I0bkk8w1Ntocj+PsdiJVPgytTRBtCtricw QzWo6sQNusiRtXVLPM/3cxsCV2akzeIsQpOn+w7qZTl7a3azVd8TN4FfY9bZ4HLaVTXwiHt5V2s 2OfbMW5KopN017da73uNUe21evhpmliBIHDza+Jf5arY4wiyhVnZOxAZCNwvASuFtRv2fxTybeS GWctWsOnLezDNmT1BCAsO2qzB60wwC9xENqhs3TQ4oY2/LKX+MrdGJCuqbkNYSwQ7uIw0HEqwEv fPg3ouPHfvGNZ9HSBe9mw7cyY1cr6Xw2jvp8+NA0uPk4toUq3mjAC5CEKmwS7mFaSAR9r6k4VbU RDvyIPf0/9iKSGZeFtpSgZgoHyOB9jN3KNeK6uWi/pG7LJFggJqrgOSvx71C9GMJlfLyFcEVgBw Ouc37XqH6Cnhn92YG3fBTw//AFeQ+Ooa1t+/m2seLwXYz1VHee2IvocOtyjoQ4kwLHO3O/iP63i /GqnHGx5vxkI7zA== 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 Acked-by: Herve Codina --- sound/soc/codecs/peb2466.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/sound/soc/codecs/peb2466.c b/sound/soc/codecs/peb2466.c index a989cfe058f0..b8905c03445e 100644 --- a/sound/soc/codecs/peb2466.c +++ b/sound/soc/codecs/peb2466.c @@ -1726,7 +1726,8 @@ static int peb2466_chip_gpio_update_bits(struct peb2466 *peb2466, unsigned int x return ret; } -static void peb2466_chip_gpio_set(struct gpio_chip *c, unsigned int offset, int val) +static int peb2466_chip_gpio_set(struct gpio_chip *c, unsigned int offset, + int val) { struct peb2466 *peb2466 = gpiochip_get_data(c); unsigned int xr_reg; @@ -1740,14 +1741,14 @@ static void peb2466_chip_gpio_set(struct gpio_chip *c, unsigned int offset, int */ dev_warn(&peb2466->spi->dev, "cannot set gpio %d (read-only)\n", offset); - return; + return -EINVAL; } ret = peb2466_chip_gpio_offset_to_data_regmask(offset, &xr_reg, &mask); if (ret) { dev_err(&peb2466->spi->dev, "cannot set gpio %d (%d)\n", offset, ret); - return; + return ret; } ret = peb2466_chip_gpio_update_bits(peb2466, xr_reg, mask, val ? mask : 0); @@ -1755,6 +1756,8 @@ static void peb2466_chip_gpio_set(struct gpio_chip *c, unsigned int offset, int dev_err(&peb2466->spi->dev, "set gpio %d (0x%x, 0x%x) failed (%d)\n", offset, xr_reg, mask, ret); } + + return ret; } static int peb2466_chip_gpio_get(struct gpio_chip *c, unsigned int offset) @@ -1879,7 +1882,9 @@ static int peb2466_chip_direction_output(struct gpio_chip *c, unsigned int offse return -EINVAL; } - peb2466_chip_gpio_set(c, offset, val); + ret = peb2466_chip_gpio_set(c, offset, val); + if (ret) + return ret; if (offset < 16) { /* SOx_{0,1} */ @@ -1940,7 +1945,7 @@ static int peb2466_gpio_init(struct peb2466 *peb2466) peb2466->gpio.gpio_chip.direction_input = peb2466_chip_direction_input; peb2466->gpio.gpio_chip.direction_output = peb2466_chip_direction_output; peb2466->gpio.gpio_chip.get = peb2466_chip_gpio_get; - peb2466->gpio.gpio_chip.set = peb2466_chip_gpio_set; + peb2466->gpio.gpio_chip.set_rv = peb2466_chip_gpio_set; peb2466->gpio.gpio_chip.can_sleep = true; return devm_gpiochip_add_data(&peb2466->spi->dev, &peb2466->gpio.gpio_chip, From patchwork Tue Apr 8 07:38: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: 14042349 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 08353265CC5 for ; Tue, 8 Apr 2025 07:38:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097920; cv=none; b=W9/mZj98dIHR+CW/ZIbSGn6RKLsG4nDBUbBjc9/D/KvHVbS0tScn9Q78A1cT7FtMJronddDdw0NS6qSy8ZxvvaFl0alXfRaBKDFXITCusDsMQptpyhcOEFspsKZt+403j7fYkn3H5Vglpn4HNchIwpQndXtTyTgmUd7gENawhKY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097920; c=relaxed/simple; bh=iHrkXe5h1z4tzTJGa40kk8YaEGYYX+YiF6Amd3et+z0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=QytYpM0acdH+1/QCMv/XWs1euosplDH8Y6PCggglBotFJ1u3W4gWhwH6hn1p4M9qoQO7pUaGcz19djdj2UFlgCiIOP65E5JHket1i61ZYFdKI1sI8j/LSbg2qcWz5npKUlasXRX/iGYhZjpMZSLgY66lD6y2m5Rv+oqlzWwSfco= 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=Io6LPklX; arc=none smtp.client-ip=209.85.221.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="Io6LPklX" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-39727fe912cso2230148f8f.3 for ; Tue, 08 Apr 2025 00:38:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097916; x=1744702716; 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=YvcUl+FgyXEa0lssAY7sah73iVwNMHdHEiWjXEgeur8=; b=Io6LPklXSugcHJXry6JkqK7vN5Vac9Q4znVUco4TN6pQboAViGk1XAsmeKDtM3V/9B O2UpwDIs9rupazFuHTayHUsN1sruvXY8YOdbPR6baXhJyVVnQJPtzIVbykSXjz+Pm5WC 7o3p9AAuOlT51wNZS6KcMpKJ53hTMZsvyZLb19dz2/CUuThqlUzGk6Pu//AUNJqqCIp4 M+WV9fh5Hnh3e2agcYxdbwlEXmWhGmjsKdTRXRgtIL/Yh4eBZhOu5LMUk3YzG4/YK5Bx y3lwU1ETZ2eJVeItTzsoNomggAVOYLgJ8OELKFGb2f9g5nFGIZJYvWGvmI6iCn/uovlo 1/ZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097916; x=1744702716; 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=YvcUl+FgyXEa0lssAY7sah73iVwNMHdHEiWjXEgeur8=; b=p5+bQWtGehtBdN5Jc/NjKmn+f+1aSIbsk9zvH6Q1c7KDMIIMDlYfL/euw2V3MGbBH2 TTgY8ZzpQzLGPSQzj2DjUMZb9bDQh4dnHpKU6TApQP9XmK6tc0TAFKZ+ndrL3I3U7PPa ZxyA6vX0P3WeQzd8W5kGTUIvUA+W9Zyss3ZO7q4RWg5p74eCG6kNTgbEELiXSzvJjT5Y GO3ipv7vXJkmAyVxVrMFwThYArQJ9TAZhvehgWw9cq12QGWcoN8hqR0kKiTk8W3RWXc7 CkokIePxgwVS9C83YxGj1MWXnyaKjsRe+xfvVCJgSlhdGpsw0ibfEDNHYfPS5Ka1EmSV cb3Q== X-Gm-Message-State: AOJu0YxnZmKHv/LUDwmgvww5wYYOFGDJi6exUrjHYjakPRavPyj/BEAY jlTlE1MuzR83PlG32jp5j4lT5p8tTgTAa6p1TYJPdrhJddEPzHmWwFUH8iOqruU= X-Gm-Gg: ASbGncucT/wEGtJEhs8BLLLLg1TTN/hODEdTkjEMR4LXssYNtCLws+f2HAc55nQ9dkv 4H+YUPyFc6V/gHvPlkj7SqnnX61heWXDrmfWj4b9OHrkllNLcz6a1LVoep0HdfuykZN+wv7zIA8 BWQRbcbqhurHAARDtoOahEdnbq56etSXN5tpoyBv2L6zzz6/LSanQyfhalZ/pvWDP7MWofJ2bJA kYR463p3KC0cQwP5CznTEtMVamrTCznUn3Pa9HNJmEbQuiVwUv25bxt0LPohCLCa2psPh4BgiOM 95rM49RO3PZY/mRPgoS22kd8SLjgm0WVokn3VQ== X-Google-Smtp-Source: AGHT+IFwk1uMRpy99nhOF3Kp9erADIpAQZph5aa+Q+sNUxD06YSbpujAM4xW5AbmmoVWHwdgDPwwGA== X-Received: by 2002:a5d:64ee:0:b0:39c:30d8:a80 with SMTP id ffacd0b85a97d-39d6fc2930fmr8820700f8f.19.1744097916395; Tue, 08 Apr 2025 00:38:36 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:36 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:28 +0200 Subject: [PATCH 10/12] ASoC: codecs: wm8903: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-10-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1515; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=67o6fWDiy7sxHsZC8a8tfJBk/wPa39r3F5c7o3Lfqqk=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJvb3n8ea2db0zLqYHLMw4MRqnN0dTR0v9Ef PN7HCdo4X2JAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TSbwAKCRARpy6gFHHX cpMOEACOXpEn9aiFqFFzE/amxKw6dFdd0eMSDL4VlZpE54imw2m94NgtJaISilSwMOJoaUHULns Odez60bWg3fnngDFhDz28Es3rfhxRUaXDKCjZ6lPtjMzk/CJsk0ebuTKn/vlo4lnhnwYW90X7YU CU/zzxqACpiUXCvIP7ObZ0WeRTd+rxAWrqVYnq2Cc2R5X+xlyfvKXsjT1PvZ5Xh10K9D/9jcB+/ IUg/5kcvi/IqFiN0gVT6Yl5iU0Wdp+hGtHc4E80UDf7XKLh97Mrx6poWt7kbJ9bPtJ7jniDCm4H MUf5QsA4WKLI4tfEBdQFc+xSxtCgGs4KTuekaQ2s40WiiSB95BHRmVFYDRbaXieYdoZ2sPe3eRu 9/BsiqGnfI0wbBAgevRi++UHWBKH1k47T7J14WTNYUIlHLy17vEEV8R+OIanuzPKndl6LSlHLPJ csJzpdG1Hyykh1/2Ez4g8kp8PR44Br/ZNds9QmNkCro8eeL6wtTNal+i5/igFKmFrnx5AjmKKHW S1MHXinniIrcJrXwyNTQpqg6UlSaQCP1/Bgh1fAqqzV9hoWdH7dOFLWBnQzcFcmx0j82fYhla9I zaHftq3mm42bh+SG40ju6EUw61ykIxjxf3iFlfXPu3C0NGtHP5sxZeH39wWaHkg5H0upzP1FNRG LHQAzzBMw0UN/4g== 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 --- sound/soc/codecs/wm8903.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sound/soc/codecs/wm8903.c b/sound/soc/codecs/wm8903.c index 03902909f27e..2ed9f493d507 100644 --- a/sound/soc/codecs/wm8903.c +++ b/sound/soc/codecs/wm8903.c @@ -1825,13 +1825,15 @@ static int wm8903_gpio_direction_out(struct gpio_chip *chip, return 0; } -static void wm8903_gpio_set(struct gpio_chip *chip, unsigned offset, int value) +static int wm8903_gpio_set(struct gpio_chip *chip, unsigned int offset, + int value) { struct wm8903_priv *wm8903 = gpiochip_get_data(chip); - regmap_update_bits(wm8903->regmap, WM8903_GPIO_CONTROL_1 + offset, - WM8903_GP1_LVL_MASK, - !!value << WM8903_GP1_LVL_SHIFT); + return regmap_update_bits(wm8903->regmap, + WM8903_GPIO_CONTROL_1 + offset, + WM8903_GP1_LVL_MASK, + !!value << WM8903_GP1_LVL_SHIFT); } static const struct gpio_chip wm8903_template_chip = { @@ -1841,7 +1843,7 @@ static const struct gpio_chip wm8903_template_chip = { .direction_input = wm8903_gpio_direction_in, .get = wm8903_gpio_get, .direction_output = wm8903_gpio_direction_out, - .set = wm8903_gpio_set, + .set_rv = wm8903_gpio_set, .can_sleep = 1, }; From patchwork Tue Apr 8 07:38:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 14042350 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1F9A3265CDC for ; Tue, 8 Apr 2025 07:38:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097921; cv=none; b=j2vtQY30I0KNVRwTbJz5C5kgNB4llVVPymWqyrN9dK/VvBc+LRQgUpJrzJIvHJV42vbHaVknogtduOAUn5XOvwkuVWUu2hOcOAhfdbJ4fPLU9Hu54xZzaosW0EIk0L7fmUR2d6izRqO9jswOnLn86lMAgAwv7HTwx3QrCih9IjU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097921; c=relaxed/simple; bh=ilNZkKiACmLQieG1b72vG128/Zk6q84worNVpRUdsuI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=uyUtOskJt0K7897QzK4YGicC10WZXvsgRmyjZkBXNZuiS1/M+0E5nh++87FvcHeGoMfivG14gbxQO9JSQzj7ViKiCL9Kc00oLvKh9Nx6hL7gPVY/IT0CdEiquYbyeBOGH9G9FNFGkwky+v2fgObngsz2yB/p26gNzo8E7W9IOvc= 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=DIL4ieaC; arc=none smtp.client-ip=209.85.221.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=bgdev.pl Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bgdev-pl.20230601.gappssmtp.com header.i=@bgdev-pl.20230601.gappssmtp.com header.b="DIL4ieaC" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-399749152b4so2627741f8f.3 for ; Tue, 08 Apr 2025 00:38:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097917; x=1744702717; 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=8ycPhCwkmIeN+6silmLpioRHga2dgaX99hgp4Vd22jM=; b=DIL4ieaCv/C16PFDMEPaLGH6a/pJGBAOSuxnyh/gfzK2gAvZ5G9fkK6H8Y2yHstYnm /yC0jbMQdbHNt+KSxqRuov9Evt+w38RlCfjib7gkU71Q5e8rZ3d46oMDsiHqVLle6+cc 6G3HW3J41qZUTxP87BtNw6yaQNwEFckoR57iCRBXEh25R5DLHSUyHqvLEhAPvO+6TEB4 S0JpgCTsavQcwHhpQEOCFngQHvqo0BPMTUkeuectkeVI8KVvCeY6sanAoSvhh+ePw3Bz rYxPgryLLQHZXMdAzooNC8S7cblw4LIOh97WJY6kct4FqUPyQxA0lFjQF9BHPx8Qhg7d eefQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097917; x=1744702717; 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=8ycPhCwkmIeN+6silmLpioRHga2dgaX99hgp4Vd22jM=; b=B73KySfmpbsiznGyjdrZ9PcbGvpuETV5rVgdsj2fRl4MCEt4tSjs2QUXZ8JBGu/iPR ldGlEL/HGGRsY2RxV2kWZ5QjFLKdtKJSV9zZ9tMaXXaewuWBOmQmfBz84P/bvHKgW59d /RWYBDhbL38RwFxU0vts6Ik0SFsx87IfYdwrB0aId7i5P0ZKj5O5N3NGEXp+ouDaxuJM GKdrDg62zgF3RJxU1IgLpW4eBXx1EzresiF8aENJn66dhx14tcuywaUFJlEMqr7MFvfA xg/osA0ZvvuPa0oQcRkdpXHUaMQ/Cr1BfnUQH9TOjywxyHDgvSxddK67Hr6JrdQVxzcf fIKg== X-Gm-Message-State: AOJu0YxlAgu0Kq/NdDK8bUVRFcC5TfaWTveREePZS7y/O99jJx8aCzxu G1rw6EAq/Xe5sD342BIsi3E6FQv+0IkhD1OjV2TerQfRNbzF03I4dpLWQ0BZcdc= X-Gm-Gg: ASbGncsLe63L7egLmcW3WRyWt7+pyZQvZThQx2TnJSMfbple7Y2K0SR2ZUrRQreXPFe 8UXL+/wG0iXfyWeuAqMl6TPgT6KJa7vUayeVEjO3/x7AgKjzD8KovW/IeVI1ABxPIMKryPFkQEr rdqwRxrCbXAVNPDbDI3IrpNtJRIRQpq7kB7coKdesfkrm3CYOULmCJcjt6m/oPp3pq91o3CtEDu MFFhJbImgQRV2tIJ7w1XqqoL0DIjQYQcuhul3DT/brQ15NG60jKltwoalWZUTKV85PEly6Isipc syBEyQDj1Ti9+QReaLbQQQDnSfa0InL/3FO3vw== X-Google-Smtp-Source: AGHT+IHONac7vF0smanIwJjC1sSegxVSDSxo0Fao4YOZkxOMnAFYYlxFn+VI5ZwK/8z6s0d03LQBFQ== X-Received: by 2002:a5d:64ce:0:b0:391:ab2:9e80 with SMTP id ffacd0b85a97d-39cba932351mr13076929f8f.24.1744097917408; Tue, 08 Apr 2025 00:38:37 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:37 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:29 +0200 Subject: [PATCH 11/12] ASoC: codecs: zl38060: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-11-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1748; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=Y8rStYn67bqY0zwEQqMRWDBXvlszYOOAybVWufsDq9Y=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJwjVac6Z72dKQybQpKKwEA8WZHYgRpIphxa hSaGL3tAZGJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TScAAKCRARpy6gFHHX ci2DEADVfFybRaZ92cQ7oOBFVA2hFlExzCCKSpX2hgCoSJtma3DxeUAAs2clk7piMxfEW6givsf Cq0sMl26CVRSXlohi+7FPbI0GkLdeAgiSz/MYFu5np4Aovvhw1wpWDvGCTQTvo4jpIdWfl1A6Wy I8aJQ1KDGInzUw5taXC4KYwtLO0GVBF7CuZdj1ruiBK8tj/+TO1J4NOkKFUygI/kPG32HPMrFqL XaOp8+UTr4N+cCbKUU2xKyY8ZhCZIwQ/nAoQzdLpgtMSpGEx4ZFUJoJq+QVJgo2FZcbUqOUPwG9 xJMU9UPLPhJzDxg3+mM0wEd6PU4MeIK63ve0Ea4ntwQ16w8iwB5Y0GpjdhFOQMAXr4LLUVW5QKr 2TnRV+MlZPW/PvPfYH4c0YUpFlNXyFW7Zv8zUD+TPpuQp+/s+BAqESXZj+2aZuFGA1NIxgFroaL yJfjasFFcxtr46w9GYibs8PCbGzHyUtzyAIfop8qXKBa9tx0GHFaDLkAHdoqnP36eNIfqJOxSVC h86HqUN0RcsuA7AglqIzpB5dt4RaofwsHA5artyBNr73MmgeXi7STl6x+Ozqql/iiQkLsj6ZJ+B xmOyZodI4alClQu56OtC0tzpjJ9qeE+aPF2Mziv1oxbV4vIrPYfkqJD/HKTp2uuDR6FouW3pb5Y DzegeJg7vkf9ljw== 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 --- sound/soc/codecs/zl38060.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/zl38060.c b/sound/soc/codecs/zl38060.c index 28c92d90299e..180d45a349ac 100644 --- a/sound/soc/codecs/zl38060.c +++ b/sound/soc/codecs/zl38060.c @@ -387,12 +387,12 @@ static const struct snd_soc_component_driver zl38_component_dev = { .endianness = 1, }; -static void chip_gpio_set(struct gpio_chip *c, unsigned int offset, int val) +static int chip_gpio_set(struct gpio_chip *c, unsigned int offset, int val) { struct regmap *regmap = gpiochip_get_data(c); unsigned int mask = BIT(offset); - regmap_update_bits(regmap, REG_GPIO_DAT, mask, val ? mask : 0); + return regmap_update_bits(regmap, REG_GPIO_DAT, mask, val ? mask : 0); } static int chip_gpio_get(struct gpio_chip *c, unsigned int offset) @@ -422,8 +422,12 @@ chip_direction_output(struct gpio_chip *c, unsigned int offset, int val) { struct regmap *regmap = gpiochip_get_data(c); unsigned int mask = BIT(offset); + int ret; + + ret = chip_gpio_set(c, offset, val); + if (ret) + return ret; - chip_gpio_set(c, offset, val); return regmap_update_bits(regmap, REG_GPIO_DIR, mask, mask); } @@ -436,7 +440,7 @@ static const struct gpio_chip template_chip = { .direction_input = chip_direction_input, .direction_output = chip_direction_output, .get = chip_gpio_get, - .set = chip_gpio_set, + .set_rv = chip_gpio_set, .can_sleep = true, }; From patchwork Tue Apr 8 07:38: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: 14042351 Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.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 1FABA266570 for ; Tue, 8 Apr 2025 07:38:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097921; cv=none; b=LZ7jyqzedyazwqVIKyd1pzbmStNEbZ1zhSvjCstvqtiY9DaGOBRbSwMiB2EqKa+JsW3BHMQK5KUsneD/Nyd7uu+2/mhDUaOFRCiFTVPYvceM8bZzTVC/hVGo/iCNNFdHSfSPj+ieBWhz8T2UAMbKQOmX5qctwQiyvfajmHPf37w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744097921; c=relaxed/simple; bh=k5vupL3n8W6xhxCh+SyC2X8XDm9fYPVtRAm53auXbdM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=s81GevF4yoyUv03bHeAfXXqc7nabHakMyG0OCsodxWF+5ZzkFeL0gclRgq62cACGuX1YK8om1rxrmkif1WIpY+CbuGx8KoGviVkTRrPsrjWh5k5kONpeShaxRlg3QtB9VlyzosjF/mnQ1WtRAu17l30w30Y10leGEFPaUGT3/Pc= 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=RfnoV3MF; arc=none smtp.client-ip=209.85.221.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="RfnoV3MF" Received: by mail-wr1-f53.google.com with SMTP id ffacd0b85a97d-3913958ebf2so4619569f8f.3 for ; Tue, 08 Apr 2025 00:38:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1744097918; x=1744702718; 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=h8SlS/IkZp071lE3E9og/zyHpds+/VnXMpibkYRrvZA=; b=RfnoV3MFL4Kfa9cy29c85WT3xr2480s+FIJGV6eP8VpM+5Anl3aR6ejlpOM3XWqVd4 ouPn7VMmNIX27otz9+rWVdals1/PHcc58Bm5M6FnVMXjd7G/wu7ba4lxng2cO4N6KK23 kjbIML1ZnfNeDwIzXN/P6pxTkAMtJcP1A97Jw23x7vPlZF2yZiP7mbgx2vDvXVzPWKA/ RSsxDz37a6IKtmAQW5SSVXzk3AciwasBlJQ7GLwQh9WuvMLpKqPeKlXQMdZx4r2Z2RIO QmDEjZMIxTS2nnUH7ELmM8fBXEKNDY0H5yUiOfw+n1m8nsSaCU/a39Myzaj+5ht38WaH 4wUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744097918; x=1744702718; 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=h8SlS/IkZp071lE3E9og/zyHpds+/VnXMpibkYRrvZA=; b=SzHFLJ8XK2RdTS3FpAYLW7kgCSsmKYyrE0L5D1ndyz4nSPeb3QZVk4VV4/MlRrHinK Z9sdpVxnlsbMnLAJ3hYXNaWiTU1eNQW7Z56mIEUZppshe3PIftiWR414iChsrzZQol27 5YSHzRty3X2hVde+Rb+RI2B9T7njakwzsPs/YI/ZEz3GSR08RrpCfVHTrZV5a1SEwWuV oyAuW1Ux2+QXKRVgpEsPeK7nylHW6MNV2lW5MhJLwstj79zSnqa/WXQwCEQ2H8smizcp +6hbKN3XW5rJyJOFwfuKdJ+6Q3KxaPxmoU15ARENMwRw9nG9rshKs/k/ewa3YN+xTkvf B47A== X-Gm-Message-State: AOJu0YzM1K6QiN3pKC99Br+qRUM1EsOtgVrU1wz1bRY+xpywd1eF0P1k iXhyOL+6Zo1jbKEom1x4MBa8+Dge3C87qMniBOgxxSd8OKhl80rComLUw7nSaQ0= X-Gm-Gg: ASbGncv4PDl6hfOR666eOnJT/3Sgyf7SgrcddditxoZUFkxeI3qhRI0yfumBzHmEBz5 wTZplRlJaC1ZXfe8v4088yMY6L2myvbeyjiW9wjkWGnDqxiMuJEo6aUQCo0MmEZhJVUIxUWsmyk JjbKTjnQ9jagM/5/lMl3aAHmWiSulfge4tnzzApfe2snAmRVq2LMERaj9Hz+wl9AXF/lJkqIhfg zGsg5j0bwRTSxkHXjiVa8JN0nZXtF4x5FGfdzAd01e+ZWStEoEFYcTTaDLBFuTRlZCHWXrDQc3Q OUxLuHgUbmSTzPg7CtS/iWCTFBmzHeFjBOsuCQ== X-Google-Smtp-Source: AGHT+IHVdtfNRfLocT4pHHsOiqn02tPEY93VHOwmAXBlq+2rA/lzXOJPZsDShMGFqryxs6tz2QGDeA== X-Received: by 2002:a5d:64ac:0:b0:39c:30e2:7218 with SMTP id ffacd0b85a97d-39d6fd18da7mr7950301f8f.41.1744097918459; Tue, 08 Apr 2025 00:38:38 -0700 (PDT) Received: from [127.0.1.1] ([2a01:cb1d:dc:7e00:2adf:eaae:f6ea:1a73]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c30239813sm13892137f8f.101.2025.04.08.00.38.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 00:38:38 -0700 (PDT) From: Bartosz Golaszewski Date: Tue, 08 Apr 2025 09:38:30 +0200 Subject: [PATCH 12/12] ALSA: hda: cirrus_scodec_test: use new GPIO line value setter callbacks Precedence: bulk X-Mailing-List: linux-sound@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Message-Id: <20250408-gpiochip-set-rv-sound-v1-12-dd54b6ca1ef9@linaro.org> References: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> In-Reply-To: <20250408-gpiochip-set-rv-sound-v1-0-dd54b6ca1ef9@linaro.org> To: Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Linus Walleij , Bartosz Golaszewski , Peter Ujfalusi , Oder Chiou , Shenghao Ding , Kevin Lu , Baojun Xu , Herve Codina , David Rhodes , Richard Fitzgerald Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, patches@opensource.cirrus.com, Bartosz Golaszewski X-Mailer: b4 0.14.1 X-Developer-Signature: v=1; a=openpgp-sha256; l=1415; i=bartosz.golaszewski@linaro.org; h=from:subject:message-id; bh=rJRtEYixkAn0Lvz429+OjNvyXIZi456GPAqjVX8W3O4=; b=owEBbQKS/ZANAwAKARGnLqAUcddyAcsmYgBn9NJwI/hZOWHfYBr33xc/jFo22uwFnmFIPdbf+ J9uXUBFm/aJAjMEAAEKAB0WIQQWnetsC8PEYBPSx58Rpy6gFHHXcgUCZ/TScAAKCRARpy6gFHHX cqwjEACvzCz5vMpsyV0eFMubArpgGfUHrYcBTu/vI58XoaaJrRn6ylJU02IuFBVJaa5+eC32fmc LeFZC+OrR60DiWJtEjo/5ufTYHkBsu0Duf6YlDqwrVXWtmorKtatl3IdUZ97IT8uTp48A0VUAtJ YCPg0oC6fqO1nhGLBID+MVWX9YZeQlhvCXhjXY+oKJSFyonfi5E/kgxp3LXsDQHLUEi7jPjm+IE m4CQlrFVN9jsuyxcnITLxaZwcR0pFikCUgBOmc3thh8AGN8XClJE29KiAlmzr8xYX9QQiPR7TUI g0y+HDRsLMDLxf/laKyhfA2VjIRQDJio2AqFsC/nYR7dskvaXMBvusg0UuHDaM/fuWNs/15hc0p nihBNDylEpDR8uvBW+sqDbrDQudXFEyqTGU9YOL7N9mbKXoz4ycJnTefuXhpVAKB6ZgTU1AKRFa jnzYIW7AR42ow5fP1RsscVOzST5UWek2PD6tcao2PMjuwEtRX4EIe0QkyhuyBQFsEa8ItLt28lQ McE91qVbvCciWGo2otcSOSO/5WUse8WUJ4ucHJMNxY85Bha++zf8tcV66fyQ27v2PtvIpImJsAT l9VG1ORxh5A0uzmB1wKPSgHCzVYyrARLAnda/TtgHjuZ5zbQWBE65406t1rwp4mXqU4YCItKDcg mOTziCg3aSWFCIA== 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 --- sound/pci/hda/cirrus_scodec_test.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sound/pci/hda/cirrus_scodec_test.c b/sound/pci/hda/cirrus_scodec_test.c index f5d6241daee4..08b0bde1a461 100644 --- a/sound/pci/hda/cirrus_scodec_test.c +++ b/sound/pci/hda/cirrus_scodec_test.c @@ -48,9 +48,10 @@ static int cirrus_scodec_test_gpio_direction_out(struct gpio_chip *chip, return -EOPNOTSUPP; } -static void cirrus_scodec_test_gpio_set(struct gpio_chip *chip, unsigned int offset, - int value) +static int cirrus_scodec_test_gpio_set(struct gpio_chip *chip, + unsigned int offset, int value) { + return -EOPNOTSUPP; } static int cirrus_scodec_test_gpio_set_config(struct gpio_chip *gc, @@ -75,7 +76,7 @@ static const struct gpio_chip cirrus_scodec_test_gpio_chip = { .direction_input = cirrus_scodec_test_gpio_direction_in, .get = cirrus_scodec_test_gpio_get, .direction_output = cirrus_scodec_test_gpio_direction_out, - .set = cirrus_scodec_test_gpio_set, + .set_rv = cirrus_scodec_test_gpio_set, .set_config = cirrus_scodec_test_gpio_set_config, .base = -1, .ngpio = 32,