From patchwork Wed Nov 29 14:24:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171376 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373573vqn; Wed, 29 Nov 2023 06:24:34 -0800 (PST) X-Google-Smtp-Source: AGHT+IHT+krTmavurnA9h36CC52y23oTzGBZ4YNkXRqY/3eJSrN12G7cOh/BRrDu5y+FkdT4zadM X-Received: by 2002:a17:902:e5c6:b0:1cf:de3e:e4ca with SMTP id u6-20020a170902e5c600b001cfde3ee4camr10856627plf.20.1701267874353; Wed, 29 Nov 2023 06:24:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267874; cv=none; d=google.com; s=arc-20160816; b=J2uS2cgYWLSI87XITfgZrs6wjZwiT/y7/Y5dsvJ1lYVNYLgVwFCdlipzgaqrw97zB6 UP6u992J/L7dynEgQbs5AqyAjdWVx36nBIPZmjqdDwnhXxr34k54qKKBII99blyaJoSf 8kPLFT6D/ahwMZ7mTtRyMhjRnJRaQ6BHLkhf3gt6Kabp6N3MLrTSjuZW8E4xFNlfOX0Y sB6Z0HpOEccp+kiavjae63QwvloycPKXpKpF5pa+JiDOV5UcAMob3Puuuco0Qn4MIb3p XqL4iQ1JlHiZDJnQAZeZn2JnYrcTHRpwcVP6tlWKqEsQt5w+R8bS3IsT9n2rmNTBjsge kgEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=W2vlGJhIze8sK7FhkyHeBLiiHYWZ044RLoNjc90UYtQ=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=P1wfuluGyUQ4X/MAXRxiTj3jzg7WVaqzbPYTei1d2+blb6ytooH4sp6efpe1zwMeKb gWPLZ26UEPGnSFONwByEw0eByWr3qEK9d5QzYdVHXeY607hkXaPRUqieK58Km2JUbdNV ZJccRHc0ouTAw4hyyxrLCmhlMP7e7XrpaIsCC7seG9y9lfgyW8yKdtZ6gCVoOZkIqJ5U 1AHbClBHb2vscLfZ9zW5T/FVmxEsSkih5yuLkV3oTWN9HxsZDjdAwPueXc++ZAm68dov dFFrPDlNpvIzGFf/etSd/gn1F3xdB2Fl1uTeXQVZDoxhSttnjYX62JfEdjg7n/HO3dn+ BQ9A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=crqE15JI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id u11-20020a170902e5cb00b001d0029879d0si3166471plf.407.2023.11.29.06.24.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:34 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=crqE15JI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 9705080309BA; Wed, 29 Nov 2023 06:24:32 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234250AbjK2OYU (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:20 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42130 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230487AbjK2OYS (ORCPT ); Wed, 29 Nov 2023 09:24:18 -0500 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 960FA197 for ; Wed, 29 Nov 2023 06:24:24 -0800 (PST) Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-40b479ec4a3so25776285e9.2 for ; Wed, 29 Nov 2023 06:24:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267863; x=1701872663; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=W2vlGJhIze8sK7FhkyHeBLiiHYWZ044RLoNjc90UYtQ=; b=crqE15JIivDRD7HPz9UTlXpZe8y6b3M0VcIyqiQVPCgE+EgTIuWAAjCRr8hdm5pIg5 LHoZXe1ssMuLx7Ib1ksYYzD+7ipHUTZ5LLmpuHpWIPkRiHs8g37qiPeMtNq7RHJBCPKw tPR08+j7Do9gwDUkDi811MWKlE8nHUteE6W4Ge5vzYAqz4oq6wYHQ/72e10JG3Sct41s ldeGuzNoJcUmac9UgntzSZyvTGFoAAnluth+IO8yOUd9DSWbog4GOJ8EGEruztwtgDYl Vip9o8zX5WiBDZzdVkzV9cE1wouOKid3FvHM7Gikn4WG3gvPx5xhrdR5IjBsHxxofJb0 IXfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267863; x=1701872663; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=W2vlGJhIze8sK7FhkyHeBLiiHYWZ044RLoNjc90UYtQ=; b=mPjt7YxcMJFAgsnpa8WHvt20YBfiaPW2LiGjA30BRfvtg2xND8Cbe5BArXXCw1OOlM Rq8ahAt83fcFVH57c0InYsS5oVtRZ/HRm3iBlEbNWrx7v8M3HDFwr4e67VAAOfntm6AF NKOoNQggJ+SwYvbI52e8oa2Tc/2vHtQh1isp2PjxQiqWLlbMAbMZf30iK7M/22kNE16k R1XZBixD+pmdIInv09a1WjqkII2I2RzQI62AjcHvS4bI68DZtWczEruaqhge6ixEmTOL B/LJDYN3BvjDLHMYLGaDhZhZXpSUtL7zP3zpOC2GQs38A8MLXS/OH4V/F6CtOEPRZgeP o0bQ== X-Gm-Message-State: AOJu0YyglRKwzznNLgwXsgwUCzDD3RbyLSKKVAR0vC5CCCgz3kIqcl6v mFRgvj4lyjwahZ7A5HWerm1iig== X-Received: by 2002:a05:600c:3510:b0:40b:45e2:1f56 with SMTP id h16-20020a05600c351000b0040b45e21f56mr6396343wmq.39.1701267862985; Wed, 29 Nov 2023 06:24:22 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:22 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 01/10] gpiolib: provide gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:02 +0100 Message-Id: <20231129142411.76863-2-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:24:32 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908662587746957 X-GMAIL-MSGID: 1783908662587746957 From: Bartosz Golaszewski gpiochip_is_requested() not only has a misleading name but it returns a pointer to a string that is freed when the descriptor is released. Provide a new helper meant to replace it, which returns a copy of the label string instead. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/gpiolib.c | 29 +++++++++++++++++++++++++++++ include/linux/gpio/driver.h | 1 + 2 files changed, 30 insertions(+) diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index a5faaea6915d..8e932e6a6a8d 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -2400,6 +2400,35 @@ const char *gpiochip_is_requested(struct gpio_chip *gc, unsigned int offset) } EXPORT_SYMBOL_GPL(gpiochip_is_requested); +/** + * gpiochip_dup_line_label - Get a copy of the consumer label. + * @gc: GPIO chip controlling this line. + * @offset: Hardware offset of the line. + * + * Returns: + * Pointer to a copy of the consumer label if the line is requested or NULL + * if it's not. If a valid pointer was returned, it must be freed using + * kfree(). In case of a memory allocation error, the function returns %ENOMEM. + * + * Must not be called from atomic context. + */ +char *gpiochip_dup_line_label(struct gpio_chip *gc, unsigned int offset) +{ + const char *label; + char *cpy; + + label = gpiochip_is_requested(gc, offset); + if (!label) + return NULL; + + cpy = kstrdup(label, GFP_KERNEL); + if (!cpy) + return ERR_PTR(-ENOMEM); + + return cpy; +} +EXPORT_SYMBOL_GPL(gpiochip_dup_line_label); + /** * gpiochip_request_own_desc - Allow GPIO chip to request its own descriptor * @gc: GPIO chip diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 100c329dc986..9796a34e2fee 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -532,6 +532,7 @@ struct gpio_chip { }; const char *gpiochip_is_requested(struct gpio_chip *gc, unsigned int offset); +char *gpiochip_dup_line_label(struct gpio_chip *gc, unsigned int offset); /** * for_each_requested_gpio_in_range - iterates over requested GPIOs in a given range From patchwork Wed Nov 29 14:24:03 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171377 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373610vqn; Wed, 29 Nov 2023 06:24:38 -0800 (PST) X-Google-Smtp-Source: AGHT+IHEfSc+VzQ5fVGAmBUHT9+n8GPmBhjDCPk2oEzQ9+aYF2LmcBkql081lMu18rRfOjV38CBC X-Received: by 2002:a17:90b:1a8b:b0:286:60c:3485 with SMTP id ng11-20020a17090b1a8b00b00286060c3485mr4511194pjb.27.1701267878421; Wed, 29 Nov 2023 06:24:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267878; cv=none; d=google.com; s=arc-20160816; b=DDjTjHn2vMCNuT7/NITmY6+xMgdX/KzeJiMzI9tWfM7cL8kTU5+JaitXgd3HuWPq3g AYwh+TuCZ/nqJQhlqwL43hUt4yLFMkx+xjIuQrDtTdXccjYZqNXxgWVs3Xl6N/+VUkFx 48Oce37VNsu6QXQ/aI38wPZD2WK8IFjq9IMbwAXyYaqzGlT7ncYZj/7e0qxISVR2pKx8 s1VdYImarqYCd8lZz8mRILgcANSzSyv2xC1ffcYc23uz7xfYkKNFHvJCa4E0fwPtFGr/ JKVb3ZOsRns/vAG+Zhh5jZ889GsezFJEFlkFYfxINjG/YqgNwF1arbj7i4AZXhfHJjff SSuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=5Sv99NjQCF32QfqStrxQNV++EDXzWOND44xPhDEPFwA=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=ACKoaBfFwzXqm20IF/tasfAgKmjI63wxZSB28zBDCUI1nOzLZlD7lmECVTXuI1pQs+ U6PdkSySYYewcLjbTM3vpCvhJKi9CaiVu/fwwniwS0W0ht3deoTx6AktAXR000owxfxT SyxqGtDRbGznLgqYb5LMDMCXQPtrDJH3Khp4yUIe77aerT3VyrDB1PS2XJZrMOwfI86f G6hgSDcEQOfikEP7Vhs0c8M0+fr8xUQ0IN0zIyKHjthT0ppP1wVQVyPHEuikYkTfrk60 FRFQFJduL39IELFp6iR+WB/K3mQfeK6TyUoTQ3KXxKlYU5nJMib4oV3bcBSNMwrJre0P 7koQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=KkU0Icqx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from snail.vger.email (snail.vger.email. [23.128.96.37]) by mx.google.com with ESMTPS id ce14-20020a17090aff0e00b00285a3e7c99bsi1405735pjb.51.2023.11.29.06.24.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) client-ip=23.128.96.37; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=KkU0Icqx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.37 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 085AE80309BC; Wed, 29 Nov 2023 06:24:37 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234285AbjK2OYW (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:22 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42158 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234201AbjK2OYU (ORCPT ); Wed, 29 Nov 2023 09:24:20 -0500 Received: from mail-lj1-x234.google.com (mail-lj1-x234.google.com [IPv6:2a00:1450:4864:20::234]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DCD8AE1 for ; Wed, 29 Nov 2023 06:24:25 -0800 (PST) Received: by mail-lj1-x234.google.com with SMTP id 38308e7fff4ca-2c9bd3557cfso11505331fa.3 for ; Wed, 29 Nov 2023 06:24:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267864; x=1701872664; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5Sv99NjQCF32QfqStrxQNV++EDXzWOND44xPhDEPFwA=; b=KkU0Icqx8HR3nwLcQajkvSFBK6+OUPGRRyjgnUa1BO8ra9MFdWS/NPuH7KOwRzcrOR yzAR/a2ihBfjZPg+C9hGAQ7lGEWRRI62VXFF0iOVOQlgpvgw0s4O4V779l6jfUuTucXP VSzqwqawXHrNtaC+3bf7ey+Zx90e4+zRxXBelqlL5mHcBtuOrioNCnhLjK+/5QWSFV7G /0vWvU1pVhxTfiIcAbzUQwJIK6O+Tt2yIp2WaN7zBiohDgOD5nk+ZRSEG/sJakvuOdm8 RXSsaJY2tpfR8arbUolhMOWoE+SrdIcmhEQVywHWOjJKQxOyHTlq+tVZj1zYcBgg7l73 j8+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267864; x=1701872664; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5Sv99NjQCF32QfqStrxQNV++EDXzWOND44xPhDEPFwA=; b=gwfA+5rkSAoWqDIsEbIAQHWextn5wrsWLVflNG30kBZNoGipeHFfLd+K/FhMiT905D izly/ceRcOOHxnmRGq5N/FSotoo9jJy7NXcNK82qL1MOKMo4g7IC6s7LL+c0B9r4xoIg hKNybtp6xbG1IGI9A5fu/DZjSiFNSRfbZFgTxq1DypG3BYteursT/U7tnfI4U1b4B4iG qCVCSYsJOVW4CHnAmWMOyKlWnjYVv3dEpLiXpdvQx304qGDV0s/M39RgOZPorTfaNgDj LYzx7CXd9Ak6lt3PlLl9RxuHT1gUL4CjWymq3lThVBLlauFG3j93AsoCAxCkejqeWlsW zPUA== X-Gm-Message-State: AOJu0YzPKsIUKFKgA2tzVdg7BLGWOZHcA8IpII0NOMGUyfm8OIhXExKs Lg06xe1reH3Dn7DHo+dCnHpD3A== X-Received: by 2002:a2e:8804:0:b0:2c9:b84a:1485 with SMTP id x4-20020a2e8804000000b002c9b84a1485mr2878937ljh.7.1701267864148; Wed, 29 Nov 2023 06:24:24 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:23 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 02/10] gpio: wm831x: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:03 +0100 Message-Id: <20231129142411.76863-3-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:24:37 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908666916122258 X-GMAIL-MSGID: 1783908666916122258 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/gpio-wm831x.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/gpio/gpio-wm831x.c b/drivers/gpio/gpio-wm831x.c index 7eaf8a28638c..f7d5120ff8f1 100644 --- a/drivers/gpio/gpio-wm831x.c +++ b/drivers/gpio/gpio-wm831x.c @@ -8,6 +8,7 @@ * */ +#include #include #include #include @@ -160,18 +161,21 @@ static void wm831x_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) for (i = 0; i < chip->ngpio; i++) { int gpio = i + chip->base; int reg; - const char *label, *pull, *powerdomain; + const char *pull, *powerdomain; /* We report the GPIO even if it's not requested since * we're also reporting things like alternate * functions which apply even when the GPIO is not in * use as a GPIO. */ - label = gpiochip_is_requested(chip, i); - if (!label) - label = "Unrequested"; + char *label __free(kfree) = gpiochip_dup_line_label(chip, i); + if (IS_ERR(label)) { + dev_err(wm831x->dev, "Failed to duplicate label\n"); + continue; + } - seq_printf(s, " gpio-%-3d (%-20.20s) ", gpio, label); + seq_printf(s, " gpio-%-3d (%-20.20s) ", + gpio, label ?: "Unrequested"); reg = wm831x_reg_read(wm831x, WM831X_GPIO1_CONTROL + i); if (reg < 0) { From patchwork Wed Nov 29 14:24:04 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171379 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373907vqn; Wed, 29 Nov 2023 06:25:04 -0800 (PST) X-Google-Smtp-Source: AGHT+IEWoYDJr/EjVHHRXBUj9oaRjVhytFfAzIJ/bcOUAxA+P87wUDTni4/1nBsOsczbCFTYkO+6 X-Received: by 2002:a17:903:1207:b0:1c6:11ca:8861 with SMTP id l7-20020a170903120700b001c611ca8861mr31910847plh.21.1701267904415; Wed, 29 Nov 2023 06:25:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267904; cv=none; d=google.com; s=arc-20160816; b=PQljuiA6jmZe1AOo/aoAXmZz1x4IQ7RUynFu9YnDR4/IhnYt+CWLt+oXH2pByQP1c0 FzjrpDvCE+AtVtcZZ4lVIyG8g21OV+2ni03WC2ew7RxbAsJ2THEopyVqOODvH5TFknTC Ch2uwpcw1cy9PwDj3DKmbu7X0VwZ3UYtPEex+TVP09ejqMJbNhNoCXF4z9vWrogQTnw2 owC6mL30SeKTsRMieKNzNCmSiZZTmSOyTzHKNZo8F/Vlb1JU9EkeaYD9Gv37EyfczgPE maukVigMkwXCvamDCfwA9Y9swnCElKbsm+CUb9wxI9Oe63Fzcp2mKhHIwYsjYbXENCe1 f80g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=FDkm1mz5JKda1Ie70um5gnCumWIdGzqKbagKhi4Mqgw=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=znlpFb68JH/aKg7YA42FKTT2q4XtzTGLPsd2+q4io12kuj1U5BUi+cb/MK7DNW6RGM RQd2sB5RziwAL8s1O4oCYLInoZOTOgLBuYwVsl64H+eaaLn58Xtu+B0V8040rp1NOtTL 4WpPhKyYqWk2bousR+xqUzAfr0onqGxVUPCnkUBaCDJUTE/FPqLMPDokC5IQ3jQzinTK lm7kPNZjXUqjSaxsO63kzhNdFCAPmePkX5FxHhWFNy+Le1tBNP7T0kZUj4ML0rmjKORj OWB9OG+YvR3UBEim5rUaJ4kWW73GGGvpR/QvwuauZfhMOxKwys5kGh2Kg6MskhxxRvf1 RZeg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=LmLhgxQO; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id d17-20020a170902ef1100b001cfee4c128asi5119236plx.356.2023.11.29.06.25.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:25:04 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=LmLhgxQO; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 1117880427AF; Wed, 29 Nov 2023 06:25:00 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234233AbjK2OYZ (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:25 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42168 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234257AbjK2OYU (ORCPT ); Wed, 29 Nov 2023 09:24:20 -0500 Received: from mail-wm1-x32b.google.com (mail-wm1-x32b.google.com [IPv6:2a00:1450:4864:20::32b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E790419A for ; Wed, 29 Nov 2023 06:24:26 -0800 (PST) Received: by mail-wm1-x32b.google.com with SMTP id 5b1f17b1804b1-40b40423df8so31815655e9.0 for ; Wed, 29 Nov 2023 06:24:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267865; x=1701872665; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=FDkm1mz5JKda1Ie70um5gnCumWIdGzqKbagKhi4Mqgw=; b=LmLhgxQO3nHYMI2D6VsD6PUbZTI4P8P8pyL71/ah7j5htcKAuq+fZmhoQhie6rGmor EM0ExqKdJJ/qjlPCo1CK+sFFDHX23cP0LFR1Ohy3gQ9VauskBGHXtJxBbTI9hBGyfkgP wbRagLLQkNnlBc6ldAODpY370cVnp5PrScBcojZHEG5x+6I6SN2P5RUXHPRbNqbldIT7 RAxjNp5OPdwL6TkFiU7IHgHcr9TthmxfotCSkMnFB0ak6+sWThNXrFKXqiaUDf7HVvTj vX7QukghLx/yXrgyIYVE4bT/EuacWr1UBEwzNGgVRVDQsUmve4N/bGRLaRDkH0crBs8G 6eAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267865; x=1701872665; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=FDkm1mz5JKda1Ie70um5gnCumWIdGzqKbagKhi4Mqgw=; b=pTsSi6jlfdSgdMiw6gZIDeiPW39IIIZlGA10MFWXfFmoq7Z/7ZZaim9W7igKOCD9Bj UA97c1DgC8y1IEKAzXpscaQNo5Ebil2AzYXPdP6zhGMjZsNrtk2LeQ6b3m+B1UanvsKe 28QL6Ho1gWFXtiE6cnajgwGDkwBChfiA1n+RDdKM6/yWh3jKVzrGSeKqbemwAuguR4Or 7HWmCbb4hIz3LaKQnOkIsGzZTuUyBqPohwxR/+aGn0w8hfXCAQER3LK8YjJIUxB8fnQ8 pT2W45P5HGWaLbdjxIQUuEvA8dfqwqCMGz5TXjOueZEVWFyjxWCNoTRGDfKuRrvZgQy6 QGeQ== X-Gm-Message-State: AOJu0YyJii0Sg09gAxKWiCAetfBLGqcDEcLbMrjqqu6QcOOnWK7eVGLJ Ovgs8yggn95HsgmEEC0GMVWwGQ8Fciowz6MymO0= X-Received: by 2002:a05:600c:138e:b0:40b:3605:acda with SMTP id u14-20020a05600c138e00b0040b3605acdamr14504750wmf.25.1701267865284; Wed, 29 Nov 2023 06:24:25 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:24 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 03/10] gpio: wm8994: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:04 +0100 Message-Id: <20231129142411.76863-4-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:00 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908693819703192 X-GMAIL-MSGID: 1783908693819703192 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/gpio-wm8994.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/drivers/gpio/gpio-wm8994.c b/drivers/gpio/gpio-wm8994.c index f4a474cef32d..bf05c9b5882b 100644 --- a/drivers/gpio/gpio-wm8994.c +++ b/drivers/gpio/gpio-wm8994.c @@ -8,6 +8,7 @@ * */ +#include #include #include #include @@ -193,18 +194,20 @@ static void wm8994_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) for (i = 0; i < chip->ngpio; i++) { int gpio = i + chip->base; int reg; - const char *label; /* We report the GPIO even if it's not requested since * we're also reporting things like alternate * functions which apply even when the GPIO is not in * use as a GPIO. */ - label = gpiochip_is_requested(chip, i); - if (!label) - label = "Unrequested"; + char *label __free(kfree) = gpiochip_dup_line_label(chip, i); + if (IS_ERR(label)) { + dev_err(wm8994->dev, "Failed to duplicate label\n"); + continue; + } - seq_printf(s, " gpio-%-3d (%-20.20s) ", gpio, label); + seq_printf(s, " gpio-%-3d (%-20.20s) ", gpio, + label ?: "Unrequested"); reg = wm8994_reg_read(wm8994, WM8994_GPIO_1 + i); if (reg < 0) { From patchwork Wed Nov 29 14:24:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171378 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373714vqn; Wed, 29 Nov 2023 06:24:46 -0800 (PST) X-Google-Smtp-Source: AGHT+IFyjaXVVzLely7focnlLaqkErgSQ2StTfHkCKKxgO+FyWX103LqulzFboJqZAXPfssxhYa7 X-Received: by 2002:a62:5e06:0:b0:6cd:d4f1:a6eb with SMTP id s6-20020a625e06000000b006cdd4f1a6ebmr1344175pfb.4.1701267885989; Wed, 29 Nov 2023 06:24:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267885; cv=none; d=google.com; s=arc-20160816; b=hvWKosp9QT7TJItpYr2BG6s6kgxspbPNzYl1GXP1CcdBNbtBpmVyRQJtDxGE336zvb cgh6mYiSU0c85fHcDtQKOarI8FKj1LsTj1MaBw2MTPjUlNHeZExpGHZX+qpqqjQl82IY +Y1hByRZ1eWzdmL22R2YUp9EzosluifrrBRH1saR2fOGHjeyOGUdqVxb4fGgTRdWBXvN /P6yBJAkto2BdpbU0rVOs6gh/MhIZMJQJXohf03QRAtZbPLIeRIaWRkHCAEtyF3ANq2T iHw6u5m+TloXdn5PqcgSk9PLTp+KU9JhEK77z8+W5g2ycnv1u7SONJwRzK9zAnfMGFbY PDvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=S7P6Y0m2hGBRRFmWFTt/dmCRHf+pQxLzAw7kKW52hRs=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=LC80XAHWrwT381W9d1JyiELRd/dKJIogyujY/2Wi0Ha/BJn/P4k8O1m+lhVJxCDhzI X8uZ0QtOpoNOsDKujkjL5asGgCfDB3wd16xF7M9U14++15zyMvEaGo8andcWvvq1nekT RMMI22Vi8yIfcY4ofaaS/C43hJj1CTSa+86ju1VqW+Oy86alzMT61Nd+1+MOTL8L8NC+ HAAk6BTnOmfhwBYtjLvoA7Kh7gbWrUMG4tVm0XsA4ckWaeZ/r9pXPyAkPer0v9MASsnX rzXSduvf9sxdwHOPciA/mtTG1PqF9zVWhsDFSye+hiVSfqC/MwwP+MvFvxQGT0j9XWL0 bNKQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=fmMbM2Xq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id u27-20020a056a00099b00b006c339c0cc08si14662592pfg.196.2023.11.29.06.24.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=fmMbM2Xq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id ECF5E803047C; Wed, 29 Nov 2023 06:24:44 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234335AbjK2OY1 (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:27 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42180 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230487AbjK2OYV (ORCPT ); Wed, 29 Nov 2023 09:24:21 -0500 Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DD199E1 for ; Wed, 29 Nov 2023 06:24:27 -0800 (PST) Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-40a4848c6e1so48866345e9.1 for ; Wed, 29 Nov 2023 06:24:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267866; x=1701872666; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=S7P6Y0m2hGBRRFmWFTt/dmCRHf+pQxLzAw7kKW52hRs=; b=fmMbM2XquS3hB1agy/V7FOyts6vnMhNULjoxw3yQIOw30649AXKQNfFdu/Yh9+TYDH RSyMOtSvQ9PPxQ78bPtCbWpydycAS5/VouqSBEUpWV8OKHktZsGdzKpd8NwRKd1VBeQH 0zsj+5mhPk+6aahgwNALOrFbSAYMTD9Ut1MIHUv9U2J8fgEOULgwwN2cImtuxtPsJ+uN EeV6BEWkM+GEeSF0ud2cj0n2p/5TxRlOxbbbYQ0PJJgI3coki+so9VXsyKKVEj3crfgw r3i+bD3n/rnVa9DyXcLlcvVS3fUlg+YDkARJPjnlz0VQZytJO/SHUkZM1ZVWqChKQ7KT kT7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267866; x=1701872666; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=S7P6Y0m2hGBRRFmWFTt/dmCRHf+pQxLzAw7kKW52hRs=; b=HK474ic5kSy7oxN2Zd343xFjLEJiSr/RRiumPi1x0X9XDQRJnfOfRqnEeAJjCTu5hv H6WMtcq8p9pTCnhA/xRb7W2Ig+rYFbwx/ToqI2j7sbhbSgSN080iy7nHEdGmmdgTYnzS 8MCSeV1HF9g6K3oVQvuizyxIP3BN+0W9jSBlmKtkDBeCF4jJvX7nVhqGIJkizO6J6HZD 6PAXuOZVhfNfui9XDfts0ncirixcSUWokDPM5H5jauw1k7btoEWfTBLc1ou07SA1+u6W d3KmhDXIPxC+igUeGHD+mWVr+wvQ0Rq36U/QvQjJXhjofkgcncKywZACY0FtbqEvK11J 6rog== X-Gm-Message-State: AOJu0YzpMieTsbo764yHa+lu33UOPCZx8B1Jf/WJLN/YPzBZtwni8E65 AIS9pCpXbiCeA3nMX+y4wNFMVA== X-Received: by 2002:a05:600c:4f82:b0:40b:2b42:a1c9 with SMTP id n2-20020a05600c4f8200b0040b2b42a1c9mr12880421wmq.23.1701267866421; Wed, 29 Nov 2023 06:24:26 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:25 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 04/10] gpio: stmpe: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:05 +0100 Message-Id: <20231129142411.76863-5-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:24:45 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908674879160569 X-GMAIL-MSGID: 1783908674879160569 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/gpio-stmpe.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/gpio/gpio-stmpe.c b/drivers/gpio/gpio-stmpe.c index 27cc4da53565..6c5ee81d71b3 100644 --- a/drivers/gpio/gpio-stmpe.c +++ b/drivers/gpio/gpio-stmpe.c @@ -5,6 +5,7 @@ * Author: Rabin Vincent for ST-Ericsson */ +#include #include #include #include @@ -255,7 +256,6 @@ static void stmpe_dbg_show_one(struct seq_file *s, { struct stmpe_gpio *stmpe_gpio = gpiochip_get_data(gc); struct stmpe *stmpe = stmpe_gpio->stmpe; - const char *label = gpiochip_is_requested(gc, offset); bool val = !!stmpe_gpio_get(gc, offset); u8 bank = offset / 8; u8 dir_reg = stmpe->regs[STMPE_IDX_GPDR_LSB + bank]; @@ -263,6 +263,10 @@ static void stmpe_dbg_show_one(struct seq_file *s, int ret; u8 dir; + char *label __free(kfree) = gpiochip_dup_line_label(gc, offset); + if (IS_ERR(label)) + return; + ret = stmpe_reg_read(stmpe, dir_reg); if (ret < 0) return; From patchwork Wed Nov 29 14:24:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171382 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373978vqn; Wed, 29 Nov 2023 06:25:11 -0800 (PST) X-Google-Smtp-Source: AGHT+IFU/AQQ3OaM1ios1Eaq5xWO54TLATumjUKo42zMySYN0MKiXf854zwK92fSslQYqOcZNo/2 X-Received: by 2002:a17:902:b90a:b0:1cf:d07c:27f8 with SMTP id bf10-20020a170902b90a00b001cfd07c27f8mr9556410plb.28.1701267911184; Wed, 29 Nov 2023 06:25:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267911; cv=none; d=google.com; s=arc-20160816; b=DpbiZ0pAcClywVWzvUGk0hJVLELEehRAuIj5QxWGhWvnn9lgNHG0o65bmx/a5retdq L/hZRidVpNB00X9I3Z88ox9Gejuoekcj5bKwebNaRoEIT6Ny6lJgpWVzOrfOlhyNbo9E QjXDs1G+rxJOZ77tCQjJEqLzCEbrvyu4K4JNbjE2v13TL+/S3YGRMn2k23YGkY/Nkulk OWasNYcK7RhczfE9VeVfGRFmWrDiCHFETxOJqwGsWTDTJ2kcGvBVODj7E4HYkjmrANCb ad5rA4IAbnbp4U9LA8/qw2Uryx597z7hTZMExPISBSFf7J9mABHMTkwxz1rwHx6VplsJ 4XaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=cffjJvUFWsxdgp9qJiLVkij+XoF+TZsz38c1WQZlyho=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=GAdLI6ZdIYXTTgkMONC8lE3ImkD1sSQW1kppX6z0GpYHLGMd0lONDGnokTBlKDxVG4 DTVxEe5Yi0tYq6CIe2V3j2o92GJJzxP5ooxpx+sFT9QBnRF3sdaw2g3lQ18Ixo1Y2sPM 3WvoNLVB0PU86Dg1R5B12VuUT4Jcs9XfYVkwrFKMWsgW4lX9Kt99RqdIkD9oEFVNfptd jRSG6Ni4vSIq9WUuvBsFADnt+z9mySo6KSMMzJR+lkP8LIz6gDjzegNmH0yM6fbi2+au HYdGH0iS1us9TQVP+MzQqbJw3AYHZ1Jrz7SqeBygNo8xTvlibC0mUWraNfMyIvir2a6k dIIA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=eJOMdLkg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id n18-20020a170902d2d200b001cfe100a9a6si5147418plc.405.2023.11.29.06.25.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:25:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=eJOMdLkg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id C95AF8045661; Wed, 29 Nov 2023 06:25:03 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234353AbjK2OYa (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:30 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60140 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233786AbjK2OYW (ORCPT ); Wed, 29 Nov 2023 09:24:22 -0500 Received: from mail-wr1-x432.google.com (mail-wr1-x432.google.com [IPv6:2a00:1450:4864:20::432]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AC461D4A for ; Wed, 29 Nov 2023 06:24:28 -0800 (PST) Received: by mail-wr1-x432.google.com with SMTP id ffacd0b85a97d-32faea0fa1fso613539f8f.1 for ; Wed, 29 Nov 2023 06:24:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267867; x=1701872667; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=cffjJvUFWsxdgp9qJiLVkij+XoF+TZsz38c1WQZlyho=; b=eJOMdLkgwF0Ty0Q4LK/MdwHWMSA87R7mOY3U5811JahdHvufQqSwpJ8TNXUc5rDStt ZlMWvdvXc/JWTa08y2sGchYB27GD/iN2/cM6SHLMCEhX32dY3dKOPY+kmyRARL1G/uqm l+yBMVhECL061xOFwcHGUTA7NGP2bkB+tNrWMbibeQVa2Ltbqvnj89/v4rVTmsbnZotQ Qf+X7aLjpYJfo1imRq1VbKaUGooldHovIsHYxDYXg+dduDvV3iKU5QXZpAkbSQJDjtqL 8RRjcQdNQNFjE6Hk7+8vo7GEUHdGhMCbGLks1V7hp6DL5FgTOPDgRmU7h863QZzm5I8X mR3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267867; x=1701872667; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cffjJvUFWsxdgp9qJiLVkij+XoF+TZsz38c1WQZlyho=; b=br1CePuxEQY/XVokh6BcE0NPm8ZSSMt7YD/Nv9b7H1lw0pv7BdFhlASwUCH7Mxh6jI C79t3fpDD3fnNpQ3+Ph0Fuu1HwsnJnyhumNgGzSHtLxsIv/+n7Y3hk1c/f0wrMzzOPAJ GFEO0TmZKfcKXWedvmupWyqHKgzudYb8WXniiu1/t+AOc8225YtzJNWTS5OPx/uRJ+TL Qyw20JoTuru7OyZvCZcJ6bK+VU40YdJDRcpk7Mi4w6BT6QS/Qm5CHmFVPRATDePaRqCb 35VDAuVSD3Nn7OTozpkWmNBNYAaicOZdOPE4rAFRj33tnY41G+AuHB7NxwL5x0Kn5Bq0 ltnQ== X-Gm-Message-State: AOJu0YyLBa9+8hfq/d+Af6xz2IRTI1GbM1FN4qk3FCcBCEMRwqzk8YIC JmnS8PknKugvLH8WekSLnC1KqQ== X-Received: by 2002:a5d:64e3:0:b0:333:47e:4cf4 with SMTP id g3-20020a5d64e3000000b00333047e4cf4mr7806142wri.15.1701267867269; Wed, 29 Nov 2023 06:24:27 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:26 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 05/10] pinctrl: abx500: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:06 +0100 Message-Id: <20231129142411.76863-6-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:04 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908700929499123 X-GMAIL-MSGID: 1783908700929499123 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/nomadik/pinctrl-abx500.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/pinctrl/nomadik/pinctrl-abx500.c b/drivers/pinctrl/nomadik/pinctrl-abx500.c index d3c32d809bac..80e3ac333136 100644 --- a/drivers/pinctrl/nomadik/pinctrl-abx500.c +++ b/drivers/pinctrl/nomadik/pinctrl-abx500.c @@ -6,7 +6,9 @@ * * Driver allows to use AxB5xx unused pins to be used as GPIO */ + #include +#include #include #include #include @@ -453,12 +455,11 @@ static void abx500_gpio_dbg_show_one(struct seq_file *s, unsigned offset, unsigned gpio) { struct abx500_pinctrl *pct = pinctrl_dev_get_drvdata(pctldev); - const char *label = gpiochip_is_requested(chip, offset - 1); u8 gpio_offset = offset - 1; int mode = -1; bool is_out; bool pd; - int ret; + int ret = -ENOMEM; const char *modes[] = { [ABX500_DEFAULT] = "default", @@ -474,6 +475,10 @@ static void abx500_gpio_dbg_show_one(struct seq_file *s, [ABX500_GPIO_PULL_UP] = "pull up", }; + char *label __free(kfree) = gpiochip_dup_line_label(chip, offset - 1); + if (IS_ERR(label)) + goto out; + ret = abx500_gpio_get_bit(chip, AB8500_GPIO_DIR1_REG, gpio_offset, &is_out); if (ret < 0) From patchwork Wed Nov 29 14:24:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171383 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp374327vqn; Wed, 29 Nov 2023 06:25:43 -0800 (PST) X-Google-Smtp-Source: AGHT+IG85VF9sRtuPUBocT7C2G34Ew1jSB4tPJvtu+d4x9qHp8UAj3QfiFy/62VMig7rmq5kFKTR X-Received: by 2002:a05:6e02:214f:b0:35c:ca58:645 with SMTP id d15-20020a056e02214f00b0035cca580645mr10821123ilv.13.1701267943541; Wed, 29 Nov 2023 06:25:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267943; cv=none; d=google.com; s=arc-20160816; b=ANly3wVymLl6TkrlCf7EeLcNg/NXs5LXfhMInzlBp05RwD77B1V6j4hD0O9XvSkaSX PWivbo/eXhtWbaetUSAXJRNjQ6I91PWA+2F047VcW+kZSVQ+PZp0shy2UxACxLOEPPsg dVZjZrkOGq6TAMcsa7DoDBLvQj1fU5zhAXFDUNjA7GeoeE2XpaqC/KQnAVu6BAXmDWnt roB1yhmyI5NnbsA7vURBAzQc/72QZqrwppgMqRYgccIUga6MYQ2VDxGeO5R3YoUkCsPc y/9sBo0xFkchYcMV52v8KDutGZTx6wkSyjuzPzkhjVXS+Ed6AA2n5vHZTE7bwu5U13i/ IW9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=/NPguL+egm1B/3hLyNOqRomxlJRtvAY3YVXSaylJwM0=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=aCdy3Qg9/lc22JF49ke8Olxi3bhHS1RsvjT7SJad9m9z6pL5QrrG8g3g0wkMp5w/Rt t3ieGVNalhWCJPd7+aW82EHycIVDp5wcqrrYgIurBYjR6fnvUAmXJ56s81SbDcloz6NM 5Ox4TsxSEjLQ4ZOOH70yUVF43Fc7TCk5LXRWWFx9hS+nRuTRP8eLpERsFFx9wLTxY4tN QstA89w4szxBd5g8ps675Q+alZf2HKpmSg+pMncu1bjrHlIlWf9+C1u69y5VEx/spOTE Ht7XEwS0hnreiruCXyGMf1WkjoU3vPMHmAS0r5k2+SneWtGjb0yWtuYMRDmzqWqihNIx ktFA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=zmQJ4Ys4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from fry.vger.email (fry.vger.email. [23.128.96.38]) by mx.google.com with ESMTPS id u24-20020a63df18000000b00588fdd9504bsi14584838pgg.858.2023.11.29.06.25.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:25:43 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) client-ip=23.128.96.38; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=zmQJ4Ys4; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.38 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id 573A48080D4C; Wed, 29 Nov 2023 06:25:18 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234300AbjK2OYe (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:34 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60148 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234296AbjK2OYX (ORCPT ); Wed, 29 Nov 2023 09:24:23 -0500 Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AD012E1 for ; Wed, 29 Nov 2023 06:24:29 -0800 (PST) Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-4079ed65582so50471645e9.1 for ; Wed, 29 Nov 2023 06:24:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267868; x=1701872668; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=/NPguL+egm1B/3hLyNOqRomxlJRtvAY3YVXSaylJwM0=; b=zmQJ4Ys49CuOfhXncDZdxnjlU0VLCAlLpshYRS+4NlZtnoC2PqhvVwi12XBV+5E/fs /YZA9Qp/Ul69d90eO5E/O+jw9TO1B/5GId7K3nfbtE2uSiKUhiWmldQRw/nSynxooLGj NASpy9sbNwUzTMlu4IAdolN2xvpA/1foW5hqbLEDYbjgDhUc+j5rHuSKxxOPy8UIWtUc s/T6T4aPXSNpWhRsr6FlAyVFqwwgJq1ZevPf00uzIL2QAXRYlcsQT2eJ3ObiG8pBmOgJ E3yqMES9ukpwMza18wvFtQg3O92NHp3iMOBHlGFZAcAX9ZGEo9PpVmHwcSyYZtD+xCna jKdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267868; x=1701872668; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=/NPguL+egm1B/3hLyNOqRomxlJRtvAY3YVXSaylJwM0=; b=RRM4+CGREFe4Bj9lL/Hf10Cy5/dIu0oFsrKVOXroGu4/5QIVG50TeI99JaVBrihbH2 Mu/18tNhf9cYD6fp6TCUATHGmbtJ+41u/slguOb3BJljTwaT7goe3CeHtQXiguZpxRB5 CbiamdCAIqhKNMRQNsZ487wvuq7hrnixvoSL0QJ0yWFtcAIh4BwJt1BJEVuWba1Meo5F oLQIy6JXmliRFo1zyrhIQJqHcg5tVDhtUocmq74yHPARkm5YXj89ZcBTn469ETGWw+7P S6nbGcEj6qWSFLkKVcWAGN+0EOvZYVMeSijWW2QpuraGTnL2TLoO0wE//SgiCTRV/EAt tlNA== X-Gm-Message-State: AOJu0YzsinODbZLm/YvsyjeEQLhG8Qs7VJMGgyXxPztlQQ7teRmUk8K5 gq7pdLz2ejbf3psn18nT4PRZp4FqjLOnivTe3WQ= X-Received: by 2002:a05:600c:4f15:b0:405:3ae6:2413 with SMTP id l21-20020a05600c4f1500b004053ae62413mr10800607wmq.25.1701267868115; Wed, 29 Nov 2023 06:24:28 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:27 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 06/10] pinctrl: nomadik: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:07 +0100 Message-Id: <20231129142411.76863-7-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:18 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908735508261646 X-GMAIL-MSGID: 1783908735508261646 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/nomadik/pinctrl-nomadik.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/pinctrl/nomadik/pinctrl-nomadik.c b/drivers/pinctrl/nomadik/pinctrl-nomadik.c index 863732287b1e..7911353ac97d 100644 --- a/drivers/pinctrl/nomadik/pinctrl-nomadik.c +++ b/drivers/pinctrl/nomadik/pinctrl-nomadik.c @@ -8,6 +8,7 @@ * Copyright (C) 2011-2013 Linus Walleij */ #include +#include #include #include #include @@ -917,7 +918,6 @@ static void nmk_gpio_dbg_show_one(struct seq_file *s, struct pinctrl_dev *pctldev, struct gpio_chip *chip, unsigned offset, unsigned gpio) { - const char *label = gpiochip_is_requested(chip, offset); struct nmk_gpio_chip *nmk_chip = gpiochip_get_data(chip); int mode; bool is_out; @@ -934,6 +934,10 @@ static void nmk_gpio_dbg_show_one(struct seq_file *s, [NMK_GPIO_ALT_C+4] = "altC4", }; + char *label = gpiochip_dup_line_label(chip, offset); + if (IS_ERR(label)) + return; + clk_enable(nmk_chip->clk); is_out = !!(readl(nmk_chip->addr + NMK_GPIO_DIR) & BIT(offset)); pull = !(readl(nmk_chip->addr + NMK_GPIO_PDIS) & BIT(offset)); From patchwork Wed Nov 29 14:24:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171385 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp374659vqn; Wed, 29 Nov 2023 06:26:19 -0800 (PST) X-Google-Smtp-Source: AGHT+IFOA9QtoH7rJ6pW8LgJUzdIIZltv5s4LeP4Zl/swem/tQPfudfw1pe2Aft0cMAgI39ekxBv X-Received: by 2002:a05:6a21:6d95:b0:18c:9705:47cd with SMTP id wl21-20020a056a216d9500b0018c970547cdmr12631806pzb.52.1701267979704; Wed, 29 Nov 2023 06:26:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267979; cv=none; d=google.com; s=arc-20160816; b=vI1dBjcOvA+v3sMy8iP0KU2yNX8c6k7QikO4S7MmYciAZRKoBchIsQ3RBPlO2kyS/j yoH+nOxNLmY45WiAHM+ho7MDwzGqWIHCu8nh1J/rrVCvnHZ9z0epghhKWERQRWGiFv+h /r+vRTsZ0UBVx3N0uJH7WQ/jNMN6v9nBiqU3l3jAwr0fFjDKDf4a9RqAr0E+02PAgPqq g6uy8MKAa3iAobvimJ3TK1mDSuBYI9pFhCy8PAkqp+w8Mzhu94bwj5ThF+q8h8xa5s3o vJmc8etJlQIM2KC+Ev8GoDnyK8VmgcKrb85TV5EEMVz6bNF89NX5irkCEIzDRhXLJpJc IRmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=lX1sqlEJJ4vEUK91SFq6mj5SEAnM+ha5YxcxRVGS6+w=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=qsuc13wUNymNgjsAcqpF0OUShSQ8LfWj9LDdemQBbq+p03GvaWMjD0ddhU/osx0kTl bvqda7jO+LXGZP21sxXTg83KqxQRpITsjxITXDtJixx1SiRocIwp2/NcbTiDz01F4sgl HnEj1rSDq8OHoF1wEi7eq3o8c/aZfH6D29Whl31f+MGH66cwFn6NEANaajNqXXl2Pk1u PKJY3Gc1koEwUqmYR7HTdwdkZcsLYM/ux/PWTxqjzLdR68o62Vz+JpVH9FF/fQ6kohdL aPqhs+66HCTFu80DM1nDxUfAmIZQwUcK5o/+05OE9D+0mj7TeWL3QaVrBrg4CuOj/mVL RBUA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=cmui+8oU; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from pete.vger.email (pete.vger.email. [23.128.96.36]) by mx.google.com with ESMTPS id i18-20020a635852000000b005c61b749588si205685pgm.248.2023.11.29.06.26.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:26:19 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) client-ip=23.128.96.36; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=cmui+8oU; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id F3240807C5EA; Wed, 29 Nov 2023 06:25:16 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234391AbjK2OYj (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58072 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234381AbjK2OYc (ORCPT ); Wed, 29 Nov 2023 09:24:32 -0500 Received: from mail-lj1-x233.google.com (mail-lj1-x233.google.com [IPv6:2a00:1450:4864:20::233]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 211D1D6C for ; Wed, 29 Nov 2023 06:24:31 -0800 (PST) Received: by mail-lj1-x233.google.com with SMTP id 38308e7fff4ca-2c8879a1570so86867521fa.1 for ; Wed, 29 Nov 2023 06:24:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267869; x=1701872669; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=lX1sqlEJJ4vEUK91SFq6mj5SEAnM+ha5YxcxRVGS6+w=; b=cmui+8oUvf4Ks+gTyWIBhQm5JG7ZMZ4iUa+RgGSbI1FOXXh9qfUqryLfKlHRm/NsR8 3sTfsLnrqes8B593KPQegLIqTkPCQIOTPGwqmxWQsxxNfg4po7gJhejOJJdSe2w0u5wA 6ulnaQENKCaSj9XjN1tQiW9dcMQ0iNIwMbLAsSqIAJXYeUAbjnLbB7m3sOJu18bNTQEG 7MYUe/nOcN3msrJCjSoDfUBtJg1ZtYInl6Qz+zmigAqKSkk5BXJ/3WdTlpPRKbj9wqZq zqYKZIj7A78lP+mkRl1K6S7ahdKTqSzi3Umd2dqBup5tKd7kR/FglystB0cuEw+uMHc2 dkdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267869; x=1701872669; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lX1sqlEJJ4vEUK91SFq6mj5SEAnM+ha5YxcxRVGS6+w=; b=e0SXF75sf9+RBz4J2pOqL+YYXDS+wr1eJThlKnd9eCz1Sce/nnXsoSYz8RCaA2ss8F wG3j18o+Hpovsgm4CyjQ5wTnNLifZdmOVZlXxcxkRVP7RWeKDGnbN//ow2EvLPQwUnYR DAp0L3AndlBBAfkAKeM7MM9QSX0P12tX+plhY54XTbIxttRZw1zUVCdxpWp2rGpT4t7h Jza9VzKoDRsKgGSVDp+8FzWDoVXVSue0JhcvDewNcpXEHIBUDGCSkozhsgnnz4FkP3Ub Y26RMoqYMQqrmAJ3Ec2WMh9jlkIUjjS1pZvO4IWI4vO4huAZI7JLM9Iitj61T2l42gU3 VXJA== X-Gm-Message-State: AOJu0YwsTQuoGo8iyqMowbA8mlrZdDyBS68ug2kskp0A1fx0Wj7z3+Xl Q1TEEELw2ODmKG5L2lyg30y9bg== X-Received: by 2002:a2e:9855:0:b0:2c9:c00a:c28e with SMTP id e21-20020a2e9855000000b002c9c00ac28emr1331701ljj.33.1701267869205; Wed, 29 Nov 2023 06:24:29 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:28 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 07/10] pinctrl: baytrail: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:08 +0100 Message-Id: <20231129142411.76863-8-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:17 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908772856686047 X-GMAIL-MSGID: 1783908772856686047 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/intel/pinctrl-baytrail.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/drivers/pinctrl/intel/pinctrl-baytrail.c b/drivers/pinctrl/intel/pinctrl-baytrail.c index 3cd0798ee631..3c8c02043481 100644 --- a/drivers/pinctrl/intel/pinctrl-baytrail.c +++ b/drivers/pinctrl/intel/pinctrl-baytrail.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -1173,7 +1174,6 @@ static void byt_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) const char *pull_str = NULL; const char *pull = NULL; unsigned long flags; - const char *label; unsigned int pin; pin = vg->soc->pins[i].number; @@ -1200,9 +1200,10 @@ static void byt_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) seq_printf(s, "Pin %i: can't retrieve community\n", pin); continue; } - label = gpiochip_is_requested(chip, i); - if (!label) - label = "Unrequested"; + + char *label __free(kfree) = gpiochip_dup_line_label(chip, i); + if (IS_ERR(label)) + continue; switch (conf0 & BYT_PULL_ASSIGN_MASK) { case BYT_PULL_ASSIGN_UP: @@ -1231,7 +1232,7 @@ static void byt_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) seq_printf(s, " gpio-%-3d (%-20.20s) %s %s %s pad-%-3d offset:0x%03x mux:%d %s%s%s", pin, - label, + label ?: "Unrequested", val & BYT_INPUT_EN ? " " : "in", val & BYT_OUTPUT_EN ? " " : "out", str_hi_lo(val & BYT_LEVEL), From patchwork Wed Nov 29 14:24:09 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171381 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373979vqn; Wed, 29 Nov 2023 06:25:11 -0800 (PST) X-Google-Smtp-Source: AGHT+IH8xSfr8ulN+q8oxqPGoFdO4txODhFOQ70EmJPwdDhEuS35jNymPW8AsdVxzUXhjC8u5phW X-Received: by 2002:a05:6808:1645:b0:3b5:84b0:6be0 with SMTP id az5-20020a056808164500b003b584b06be0mr22029533oib.47.1701267911197; Wed, 29 Nov 2023 06:25:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267911; cv=none; d=google.com; s=arc-20160816; b=KquzvhrD9Z+xQbrji8q0fQDLD3qDI6YOGJngsOvbfJLiCUPKYSu7zXnD39okBl/38W P04Kj+YnXp9Qai4q4srzr/uqkFDuK0pZmfip6A+xh4UIZFn5BIFbw0mRUMtOgKc9v0+k S5SJTHw5QHanRS7I2yxQK73XN3Eev7W5w6gWQqRnFUyfWQwRd4ehiyo6aVBq9NOGE97M YpwEiDC0wZZGYiKJyJrQMnR5jzyjxi4PZUzrJWsVV0vpoZr0r86kF87yijYU+bItFFUt P7N7WgzYz5+P+Tg1EVERmuaimIsoUevh3knPDvk4B+XOQ2UvNT7shoi7ddPMIS5KwdML k7xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=rQ4oN2yBzcOb1+JXtPZKrl0tpOl2eK1zlq9JfJmTld4=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=hPk113tDGCRVPmeVo9bryXAMl56IYRLbfC3Zyyqe5uGbft4J/yKFbejIj6Cgkre4l/ RRD1xmjM4tQGwPvwyWEgytJetolZze/0i8mYpjQeVSzArM48DnjBEXyLc5zW7Nxxt/wj WkrAb88AX6w1R9cF0cDKW0pVs442K1Xl9geoTw46F8+YuMRGaxqDKCuOtZqIXz9ONsdq qORjjNLm+5bz9efLFKPC1j+ZZj5J5d4u6FO3CRt4KzxQEuotlq/2sqoirTl0lIKt/06V NzvynSLA+TB34q06AmmTe4CbUzJWtg7cTbpJ0O9Mb2aqR4Xqkwzh7z4Cj2W/J28hKvCU 9b5Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=fSB4WGkZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id o14-20020a635a0e000000b005b7d9aace98si14302051pgb.109.2023.11.29.06.25.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:25:11 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=fSB4WGkZ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id 03BA5804755F; Wed, 29 Nov 2023 06:25:04 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234528AbjK2OYr (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:47 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58036 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234328AbjK2OYh (ORCPT ); Wed, 29 Nov 2023 09:24:37 -0500 Received: from mail-lj1-x231.google.com (mail-lj1-x231.google.com [IPv6:2a00:1450:4864:20::231]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2B80ED50 for ; Wed, 29 Nov 2023 06:24:32 -0800 (PST) Received: by mail-lj1-x231.google.com with SMTP id 38308e7fff4ca-2c897ba4057so81234701fa.2 for ; Wed, 29 Nov 2023 06:24:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267870; x=1701872670; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rQ4oN2yBzcOb1+JXtPZKrl0tpOl2eK1zlq9JfJmTld4=; b=fSB4WGkZG35mb/eSTil6wJYHacf7Xy2ySbuqtE9u4PIxHoqiNA9geqZmdtJfQR8jFZ PoM9Sm2m6/g3RKGh5M9zYdJo9+06YpdBb34gqjxqXZzfBq5N5ucgL1SqcC9CVhWFbmWl MAhOGo8I5Iz31n0B97Y6/4WjK0J9mt9LbTWH11ptTjP2WvTf9j80SBoxBr4+IhzTbU39 cb/wepHsOFYajQuRCP265xQ8E4GLlBJaqwEJN2R+Wl1v/S4F7u/qgTpSmcQbD8lH+Q+q AR+fgiK99L1kJyju2sbD3TKCLLhoEKM+EIOR8/WYUSh6/XtRP7vS/7vgw4zMZwMj1VoF I5HQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267870; x=1701872670; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rQ4oN2yBzcOb1+JXtPZKrl0tpOl2eK1zlq9JfJmTld4=; b=r4Z+47Nw8S8FSz7pq98/JY/GIQLKsELphJEgAUmLkqmSTLjEVQw5PULJiIzjPIf3hS 2wVj+po4FzLjjkwUuAq56HrqkP3IbayilZM0ldNU0/7NDLyQEBnS91HDwjBn137VxvBa +cuEq2X/3KsWh6PuJIT/mSLGa7dJWx3Mv6hvKibX+cuBIwFjv6VvRSeAxDX8/BTb2zqt gVnClC96ZGx/eil8BHTyz+62QTG/c663URU8w1OyCBidgncdDzn4RFFSNKmSY+rKBF5A hjbEYZtuer4qXtv0kfzDkPQ3/u/Hw2CeM+FIXRA5gfQiKnIj67UOELKz8/BGx3bM7Jms ItLA== X-Gm-Message-State: AOJu0YwArOVA4Tg0xxxPQGZbb934u16OaG0rfpsJtcmKUFM5wAnHabDp Ofj8CveKIcoFOUfxeNLEs5+ewQ== X-Received: by 2002:a2e:97d6:0:b0:2c5:16c0:6239 with SMTP id m22-20020a2e97d6000000b002c516c06239mr12471205ljj.51.1701267870294; Wed, 29 Nov 2023 06:24:30 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:29 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 08/10] pinctrl: sppctl: use gpiochip_dup_line_label() Date: Wed, 29 Nov 2023 15:24:09 +0100 Message-Id: <20231129142411.76863-9-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:04 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908701053388877 X-GMAIL-MSGID: 1783908701053388877 From: Bartosz Golaszewski Use the new gpiochip_dup_line_label() helper to safely retrieve the descriptor label. Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/sunplus/sppctl.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/pinctrl/sunplus/sppctl.c b/drivers/pinctrl/sunplus/sppctl.c index bb5ef391dbe4..ae156f779a16 100644 --- a/drivers/pinctrl/sunplus/sppctl.c +++ b/drivers/pinctrl/sunplus/sppctl.c @@ -4,6 +4,7 @@ * Copyright (C) Sunplus Tech / Tibbo Tech. */ +#include #include #include #include @@ -500,16 +501,15 @@ static int sppctl_gpio_set_config(struct gpio_chip *chip, unsigned int offset, static void sppctl_gpio_dbg_show(struct seq_file *s, struct gpio_chip *chip) { - const char *label; int i; for (i = 0; i < chip->ngpio; i++) { - label = gpiochip_is_requested(chip, i); - if (!label) - label = ""; + char *label __free(kfree) = gpiochip_dup_line_label(chip, i); + if (IS_ERR(label)) + continue; seq_printf(s, " gpio-%03d (%-16.16s | %-16.16s)", i + chip->base, - chip->names[i], label); + chip->names[i], label ?: ""); seq_printf(s, " %c", sppctl_gpio_get_direction(chip, i) ? 'I' : 'O'); seq_printf(s, ":%d", sppctl_gpio_get(chip, i)); seq_printf(s, " %s", sppctl_first_get(chip, i) ? "gpi" : "mux"); From patchwork Wed Nov 29 14:24:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171380 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp373947vqn; Wed, 29 Nov 2023 06:25:09 -0800 (PST) X-Google-Smtp-Source: AGHT+IF74Qvztp3DIK0ojNz2j4k3FDVY8IS87kXS2oFqEG+/5QMmBpYXD0boWI3VAMBGoClxXgdk X-Received: by 2002:a05:6a20:4321:b0:18b:89fa:e924 with SMTP id h33-20020a056a20432100b0018b89fae924mr24748352pzk.52.1701267908760; Wed, 29 Nov 2023 06:25:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267908; cv=none; d=google.com; s=arc-20160816; b=I1QGAXiTuhR4JzhnENl6ZR+bcVsQdgUcU1mgtVSAK9IiZ8ZObFmt30fVVA4NTZTqBO P8xnrzwLorUGPmGu9o3x5ODKnGRhbuyIiPHAT7n87akgc54o6+Tc8V+Fz2qgPjfmuxx5 cQyQB5/bIGQ+GZJmsfLMAWmAjJ0/jEx0waF6Z641p+vRMU0YREnGHMLwQ+PRMgiQGJW+ F1r9y/GXe8MwSm3dmqoDL68IQr3bmsWDK3VH8XaouRHbqIvMfiqEff/+mvZJUR5qcdZq qOX5ppvyoMrc2+ngZ+rnBChyz01SSXWzUsz3u89bx2tZz3R4ApdVvzxtT4H96IWd/NtF NhPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=fr1TOXD+5EiiAKWXZPldv8mvv4Hxfk7OfOL3Vw/aLQs=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=vBHlrj5IPLaH5IDk7nAS7xwBMIj6KYt2WiEI7Guoadw0XnlISM1ilSUEgWoYF0Mzhs L0/Clt/KlboomTbniXynTLA4rVguZDlGwqYnrq7MLgDb3XYjGT/RPYe3Kfjeh4uu3VTn WoAFqh7W/oEbEFcyZlG7QQh+zWlE1pNKOqgAkWSU5m8zOArlVBaCuO2J+3uWLpAJD0J4 YXQwau/tOLXXojct1qq3jCVjq7wtYMY7vW+X42aZLt+lqfBA8bfFdT5QUus2amaL1gXI cqdPlqHeZUTn72xjTUu55UarWPtQkbOQUsHGJyE+ZyqLbdCEHOlyU8LgmHPbEPv783sQ XgmA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=b2ZS6wga; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id o3-20020a635d43000000b005c5e22334d9si4373860pgm.267.2023.11.29.06.25.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:25:08 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b=b2ZS6wga; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id E68848047DAC; Wed, 29 Nov 2023 06:25:01 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234393AbjK2OYw (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:52 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58160 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234420AbjK2OYh (ORCPT ); Wed, 29 Nov 2023 09:24:37 -0500 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C6C9110D3 for ; Wed, 29 Nov 2023 06:24:32 -0800 (PST) Received: by mail-wm1-x331.google.com with SMTP id 5b1f17b1804b1-40b40423df8so31816795e9.0 for ; Wed, 29 Nov 2023 06:24:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267871; x=1701872671; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=fr1TOXD+5EiiAKWXZPldv8mvv4Hxfk7OfOL3Vw/aLQs=; b=b2ZS6wga3v9XoxDjeUSryuw1P4M6qlXzKNKjP25dKpR2fGbQkDw6OlONxWl6vU+60W vBvnnoN19QdApekYchbioO0xkDXZWeS9uGMY315nz8+jc9GCZfp1FYrzehNWBL3In4Hp kuqk02sODqkYicoWGnwkgmyYg/mVEer1w2PUL+rrBQYRsF4+6+BBdcXK6SKQQQ9fFzKR 4/sMLazccw4ZJkEXhVOOBRWtMPpjHfAQDR1CE4JTd+YKPXRU8Al4N+12V5AF0MkwYo0Q awHCZ913nFmMcU8BYLhjfODTfHBJXm9gQPVuVQVpsp4quE9tPp9Yz6ZjOMmDGQJ+0n+i 6q2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267871; x=1701872671; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=fr1TOXD+5EiiAKWXZPldv8mvv4Hxfk7OfOL3Vw/aLQs=; b=iN55S8+k94hyIT9qDXPW0rA7CgZexzzjER/mD2ZHbCaU/zWiVMEGd0gQ4ITg/dktQ7 J3wgEYs3ss9A1XtqBZAhNbc+P8SABIwot1aV982Zy/8xWpJL38BG90R74R+C6Ae0l2KT Ni9OA3VZv6xfA6wL6KRFlJs9GSVGKnFv9T8BexGCU6KMnaY4tuH45NhyPBH6w3ONKT+N JoRwrJr5dBr1WtM9thO3pVVg16uLLedHSHy++IyWyvrHJb4IYpeqxohClDp0a7YE9yOX KHwiB0vv2G1QVnh3Y4ZUIjHc/q3iaCbNotfOKw9i+Lk1QxV9Iw5QTrwzcdFeYaCTZQ17 QfxA== X-Gm-Message-State: AOJu0Ywxn9xLlNqHWWLlCfsSJMECK1SkIzuN8iPhCvYB7ln+LPRf837e IHn7nGvY8Z3VZgKrFMhSeJfo8g== X-Received: by 2002:a05:600c:1c9d:b0:408:434c:dae7 with SMTP id k29-20020a05600c1c9d00b00408434cdae7mr10543652wms.2.1701267871356; Wed, 29 Nov 2023 06:24:31 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:30 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 09/10] gpiolib: use gpiochip_dup_line_label() in for_each helpers Date: Wed, 29 Nov 2023 15:24:10 +0100 Message-Id: <20231129142411.76863-10-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:02 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908698758070248 X-GMAIL-MSGID: 1783908698758070248 From: Bartosz Golaszewski Rework for_each_requested_gpio_in_range() to use the new helper to retrieve a dynamically allocated copy of the descriptor label and free it at the end of each iteration. Signed-off-by: Bartosz Golaszewski --- include/linux/gpio/driver.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 9796a34e2fee..6405f6d454af 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -543,8 +543,10 @@ char *gpiochip_dup_line_label(struct gpio_chip *gc, unsigned int offset); * @label: label of current GPIO */ #define for_each_requested_gpio_in_range(chip, i, base, size, label) \ - for (i = 0; i < size; i++) \ - if ((label = gpiochip_is_requested(chip, base + i)) == NULL) {} else + for (i = 0; i < size; i++, kfree(label)) \ + if ((label = gpiochip_dup_line_label(chip, base + i)) == NULL) {} \ + else if (IS_ERR(label)) {} \ + else /* Iterates over all requested GPIO of the given @chip */ #define for_each_requested_gpio(chip, i, label) \ From patchwork Wed Nov 29 14:24:11 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bartosz Golaszewski X-Patchwork-Id: 171384 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a5a7:0:b0:403:3b70:6f57 with SMTP id d7csp374486vqn; Wed, 29 Nov 2023 06:26:00 -0800 (PST) X-Google-Smtp-Source: AGHT+IHZaCZsdxImfqjUJ+O07uGD3O5+Ju/v6ooB3bl5NeO/lFH2FAT1oLGv+A4lpecVMSbHhY2O X-Received: by 2002:a17:903:24c:b0:1ce:5b93:1596 with SMTP id j12-20020a170903024c00b001ce5b931596mr21539638plh.5.1701267960464; Wed, 29 Nov 2023 06:26:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701267960; cv=none; d=google.com; s=arc-20160816; b=LwC1k1Ponz7zBIzEtr0ifo75Kp5bQKasC+daAV1tzpPbFe1gjtHvrvFmcso95NS1I4 1UqAHwNTRad+JvuREqrqyQNyqtNmH1EHdiHDe9g+Ko/MLfU9+xpf/6kJiBioy9Ez6ARr zEVMEdyTPzAaBA3nPTu01k+qdgBgBEofsxfu3qZW1Tiq/U3UgVrqYRVP/Ofrzw4pSSO8 woAlsro1ipjw3uPvolJrF//DB84n7WF2lrR/K2W25FQKGU8m0tanyZO0iWzwe4j2g66g sr/NTQ6vn/kQORhTNnpB/sbuEEstxPVIAKb/CaZEvAbVSvMJA6b+6ZqcHFVqP/8bYUz3 mxJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=q4MUC5eIDni/buanxrUZQlfU7mM7/HRQ/uDUqZDkwLQ=; fh=fw6biwzn34ngIUS3OuPB+D+TvAzoz1YwnvitHxA+Jyw=; b=BFbmBV0dsbPFWmRxbLqzU4eT2e6zsJWwi88cCLrQVYpsA0gFI0TiOTExT/M6TW1c5S c3lwpRvJaKcMJgB6UTAaLMtHvXxRcxr/hJ9EKpm4Hv3K3xbzBclm5pL7iBYo68qKb6vd K5Nh4CpMI5JiqBuTyM3liYpTqlE2VkrMRaGPC8oyV2sEVh21ySqRkKAR8vvLgP8Ggxof qb3YKzONBe3wa5KCi7TDAOkgYoi34GkDM40VPR6pwaNud3rhnBL8Xtm0EGEWoRFT+6tO EM9ZByfoNU5dQgOGXgXx82x0EJp/ggxr/UzeaVPrIxMhCcHrt6LaoCxnuKHlrarbg71L MfRw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b="2JS/SOyd"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id c14-20020a170903234e00b001cffdad3b3bsi3497254plh.556.2023.11.29.06.25.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:26:00 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@bgdev-pl.20230601.gappssmtp.com header.s=20230601 header.b="2JS/SOyd"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 22FBF8069FAF; Wed, 29 Nov 2023 06:25:27 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234306AbjK2OYz (ORCPT + 99 others); Wed, 29 Nov 2023 09:24:55 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60184 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234435AbjK2OYi (ORCPT ); Wed, 29 Nov 2023 09:24:38 -0500 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E039010EF for ; Wed, 29 Nov 2023 06:24:33 -0800 (PST) Received: by mail-wm1-x32a.google.com with SMTP id 5b1f17b1804b1-40b4a8db314so20176045e9.3 for ; Wed, 29 Nov 2023 06:24:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1701267872; x=1701872672; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=q4MUC5eIDni/buanxrUZQlfU7mM7/HRQ/uDUqZDkwLQ=; b=2JS/SOydiknEuqmFOYDnpQfOVtxGkBRZY8XxDaZBUM0fS0jUw1xbvXhpHfg+ll24M+ s25G4Ll0kIQpwCF0XCy+nAE+JIF2QWIln1/wSFxrrBfryHwX/0aZTgaQ7RYgWWIfenok hyYs9xJNsYbwURFUyXfa/ELuGq3jtb5rPSaKBoe6wlBohBeQo0IJWmS6x0EFq5XT0QiB AmsmqOwI6Sq0N5SVE1qH+xcHsuOxZKPR4hiSbacH950E/4SPQ0KUQ4eUz+DMiwqlrTq4 KalbYjiJlpeLI0ccbYVXBCu+o7KLSieBN9tP4rDswlK6XAQ6trVmVDOHg0K4rw4rzWPP 0iJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701267872; x=1701872672; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=q4MUC5eIDni/buanxrUZQlfU7mM7/HRQ/uDUqZDkwLQ=; b=NLKrrzY+sr3ziaT/jmWXDxhvBKc5Oe1nBnlh+783p3INckONTegRKb57/vrSrFuFYU pdIa48M9rNl44ohhQXveNv/ihZ7GpkVg8ZOpUZvg6OfMqLu4GtYjD0kM2igZeACTVTpW YbIPay1xdZpE9DDzPAV2I8b1F30nqC+eCqDqsISuiSN9wtzeV7S3BsdiPsJICZaX/L1s WnGyC6bfFSQU9oyhSoYkpWUwusQ9bMQsTpFuZulDJ4PVtE3ZKyjYkrzo0NkCjGRy0DYE 7nz3oQxKNjRUdBrw8oZSgn2w1zuso+h0ZUTsKFGaKuy39gpOolxaC7TtRTz4e7DE/QQC ldRA== X-Gm-Message-State: AOJu0Yw87rokzTRIiBnsAt5+vs6+WbNmI4RY/thIUcSFJvScrDRyG25m 7K9KCo5c5nEgaBS0UWBv1b715GsUvQ2gpbqdBVE= X-Received: by 2002:a05:600c:3ca0:b0:40b:37d9:b646 with SMTP id bg32-20020a05600c3ca000b0040b37d9b646mr11047907wmb.3.1701267872204; Wed, 29 Nov 2023 06:24:32 -0800 (PST) Received: from brgl-uxlite.home ([2a01:cb1d:334:ac00:4520:2f25:4d3a:4adf]) by smtp.gmail.com with ESMTPSA id n40-20020a05600c3ba800b0040b34720206sm2406848wms.12.2023.11.29.06.24.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Nov 2023 06:24:31 -0800 (PST) From: Bartosz Golaszewski To: Linus Walleij , Andy Shevchenko Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: [PATCH 10/10] gpiolib: remove gpiochip_is_requested() Date: Wed, 29 Nov 2023 15:24:11 +0100 Message-Id: <20231129142411.76863-11-brgl@bgdev.pl> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231129142411.76863-1-brgl@bgdev.pl> References: <20231129142411.76863-1-brgl@bgdev.pl> MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Wed, 29 Nov 2023 06:25:27 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1783908753127090976 X-GMAIL-MSGID: 1783908753127090976 From: Bartosz Golaszewski We have no external users of gpiochip_is_requested(). Let's remove it and replace its internal calls with direct testing of the REQUESTED flag. Signed-off-by: Bartosz Golaszewski --- drivers/gpio/gpiolib.c | 46 ++++++++++--------------------------- include/linux/gpio/driver.h | 1 - 2 files changed, 12 insertions(+), 35 deletions(-) diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 8e932e6a6a8d..3070a4f7bbb1 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -1085,7 +1085,7 @@ void gpiochip_remove(struct gpio_chip *gc) spin_lock_irqsave(&gpio_lock, flags); for (i = 0; i < gdev->ngpio; i++) { - if (gpiochip_is_requested(gc, i)) + if (test_bit(FLAG_REQUESTED, &gdev->descs[i].flags)) break; } spin_unlock_irqrestore(&gpio_lock, flags); @@ -2373,33 +2373,6 @@ void gpiod_free(struct gpio_desc *desc) gpio_device_put(desc->gdev); } -/** - * gpiochip_is_requested - return string iff signal was requested - * @gc: controller managing the signal - * @offset: of signal within controller's 0..(ngpio - 1) range - * - * Returns NULL if the GPIO is not currently requested, else a string. - * The string returned is the label passed to gpio_request(); if none has been - * passed it is a meaningless, non-NULL constant. - * - * This function is for use by GPIO controller drivers. The label can - * help with diagnostics, and knowing that the signal is used as a GPIO - * can help avoid accidentally multiplexing it to another controller. - */ -const char *gpiochip_is_requested(struct gpio_chip *gc, unsigned int offset) -{ - struct gpio_desc *desc; - - desc = gpiochip_get_desc(gc, offset); - if (IS_ERR(desc)) - return NULL; - - if (test_bit(FLAG_REQUESTED, &desc->flags) == 0) - return NULL; - return desc->label; -} -EXPORT_SYMBOL_GPL(gpiochip_is_requested); - /** * gpiochip_dup_line_label - Get a copy of the consumer label. * @gc: GPIO chip controlling this line. @@ -2414,16 +2387,21 @@ EXPORT_SYMBOL_GPL(gpiochip_is_requested); */ char *gpiochip_dup_line_label(struct gpio_chip *gc, unsigned int offset) { - const char *label; + struct gpio_desc *desc; char *cpy; - label = gpiochip_is_requested(gc, offset); - if (!label) + desc = gpiochip_get_desc(gc, offset); + if (IS_ERR(desc)) return NULL; - cpy = kstrdup(label, GFP_KERNEL); - if (!cpy) - return ERR_PTR(-ENOMEM); + scoped_guard(spinlock_irqsave, &gpio_lock) { + if (!test_bit(FLAG_REQUESTED, &desc->flags)) + return NULL; + + cpy = kstrdup(desc->label, GFP_KERNEL); + if (!cpy) + return ERR_PTR(-ENOMEM); + } return cpy; } diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 6405f6d454af..1679e6fa5469 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -531,7 +531,6 @@ struct gpio_chip { #endif /* CONFIG_OF_GPIO */ }; -const char *gpiochip_is_requested(struct gpio_chip *gc, unsigned int offset); char *gpiochip_dup_line_label(struct gpio_chip *gc, unsigned int offset); /**