From patchwork Wed Apr 24 18:50:37 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Doug Berger X-Patchwork-Id: 1927335 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=YC9stBG4; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=2604:1380:45e3:2400::1; helo=sv.mirrors.kernel.org; envelope-from=linux-gpio+bounces-5829-incoming=patchwork.ozlabs.org@vger.kernel.org; receiver=patchwork.ozlabs.org) Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org [IPv6:2604:1380:45e3:2400::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VPp3x2w1Nz1yP2 for ; Thu, 25 Apr 2024 04:51:25 +1000 (AEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id E055328287F for ; Wed, 24 Apr 2024 18:51:23 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 4A5511CD3F; Wed, 24 Apr 2024 18:51:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="YC9stBG4" X-Original-To: linux-gpio@vger.kernel.org Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.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 D335A19479; Wed, 24 Apr 2024 18:51:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713984673; cv=none; b=szONQ8QjoVENL3OT28557IxUApyWHEqA07snCgT/AKmFNyQQb+VA6npxkMyBT4sTbr2pM2Pc/LyFwD46vuTjqrb+gJbScIylY8yge28aNIHg9MB8Tl9692jupli6bKuoK+DI/PDqBp5A2EgRFY26HSEyqIbFqSrChl8ZZmCZknw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713984673; c=relaxed/simple; bh=aoossQlzk+5pxRemPeXnUmuEGyFVwNi8l6egUwStIKw=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=ScSxCfWa0+PrFFQOYspH7ZD+mqOtiIzMUyozx1o+ZbYZ5rHFUSCc5omtmePWwCJ12UXDjhknvKy43pQbOaqj4H1+Hm96rHclVxc3Zsntp25jqtl9EJuSxTlq7WMGo6Yyddz8w0Dk/F/bx71k+Y/HubchpypbQvGLxLA28XWWYO0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=YC9stBG4; arc=none smtp.client-ip=209.85.216.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pj1-f47.google.com with SMTP id 98e67ed59e1d1-2a519ac18b3so202190a91.2; Wed, 24 Apr 2024 11:51:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713984671; x=1714589471; 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=vAbLEAVuW4sSbM42C7LJb1PPQ7uzIoK60RBbrjt4ULU=; b=YC9stBG45AopiYHBzSVGrtBdrpp5tLuEBYSIVGaRR+rGrim9i5sVY1ghFkKtnu2vNv E3SHb9tJXHlRWgo84FG+D4rqnvQxVkqOzIkwgJKHqtZG74QwBIcqmrrKsIzqRoytNSjd aV3s+GFjTIgjo7+a2yU/wPTfwSKPUIYry72hrHNtiJePZcMZ9e5Uq4Gj//Zw8WCbc/BP k0NUx+9eOZhd1xi/+HdXnxjqgoWFmeK7FTkD4Vi8mgEUoZ/CWIX2lCUafTRx2qMbjtfE 24AgipDACX3EhZh7qTzXjIS9f1/FnolMoYUUMx68FzFOBatftCVylFBJdAm0WhEOedry ks+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713984671; x=1714589471; 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=vAbLEAVuW4sSbM42C7LJb1PPQ7uzIoK60RBbrjt4ULU=; b=NgtcEy5kV2df/nbL78xY+YpuN9Q1Zavi0GLl5SlIscdOZcQC8O2Ka2xD5VIg+/GPeW 4yeqKVyqH43wfz5mHk4ul6IY8XBHxsSLMNXUYjG3bUarZ0xanYUAdiKpLisBvjpZ4l/O zZb88BWrNPenxwMIny7tXEOXGG3QczIJZdiO09Zp4RFe4nZdzYdMfAJChSKCz2M+MDSK q9JtXIPzg5XybXDaLKssIJiR8NQ3Fgyd07SmVbOH3F5zB5GQHv5Wy1oeSCsu9MdAWkud UcMnGcg75aLUPYhIiUf7xwjcHLO4mkd00GdC+cC/B9bLYFhgimH9yIOGezH87Jp7qQJl JSsg== X-Forwarded-Encrypted: i=1; AJvYcCU67Bp4lkzrZ3w0HMxuh+h4wlccwCsU1bV4mgdaek3LN2QXKXAVQliF+9uxOQEiNuVjE6Bmr3uEPUo16+DnVGrMfCNyeg9c83SYuY7JIobFunBLTndyLFwmWhQIXm35SZvM8GOjgKpXnmHXvqxKn529AO/EFI4FjXc30vstFjvN4YBew2k= X-Gm-Message-State: AOJu0YwbmFMrvc2o2EWIBiuNF4bXVAuCgdd7IbOTYoo0hOTCkSKk4MyW w9tyK+ckW8TYKec4gUk7zzu5SpnRh9v9HlwZ6IzcEuqvPw0QARyc X-Google-Smtp-Source: AGHT+IHl4DSRBBK5EU7FX+5Xap62TW85oFKwK3LiNNqa2nIFMaTpiwS5/2XjpkpWxLT5r1xxzB4UQA== X-Received: by 2002:a17:90a:d90f:b0:2ae:e22f:38f5 with SMTP id c15-20020a17090ad90f00b002aee22f38f5mr3107642pjv.10.1713984671079; Wed, 24 Apr 2024 11:51:11 -0700 (PDT) Received: from stbirv-lnx-1.igp.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id u8-20020a170902e5c800b001e425d86ad9sm12268728plf.151.2024.04.24.11.51.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Apr 2024 11:51:10 -0700 (PDT) From: Doug Berger To: Linus Walleij , Bartosz Golaszewski Cc: Phil Elwell , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Florian Fainelli , bcm-kernel-feedback-list@broadcom.com, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Doug Berger Subject: [PATCH 1/3] dt-bindings: gpio: brcmstb: add gpio-ranges Date: Wed, 24 Apr 2024 11:50:37 -0700 Message-Id: <20240424185039.1707812-2-opendmb@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240424185039.1707812-1-opendmb@gmail.com> References: <20240424185039.1707812-1-opendmb@gmail.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Add optional gpio-ranges device-tree property to the Broadcom Set-Top-Box GPIO controller. Signed-off-by: Doug Berger Acked-by: Florian Fainelli Acked-by: Krzysztof Kozlowski Reviewed-by: Linus Walleij --- Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml b/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml index a1e71c974e79..f096f286da19 100644 --- a/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml +++ b/Documentation/devicetree/bindings/gpio/brcm,brcmstb-gpio.yaml @@ -62,6 +62,8 @@ properties: interrupt-controller: true + gpio-ranges: true + wakeup-source: type: boolean description: > @@ -88,6 +90,7 @@ examples: interrupt-parent = <&irq0_intc>; interrupts = <0x6>; brcm,gpio-bank-widths = <32 32 32 24>; + gpio-ranges = <&pinctrl 0 0 120>; }; upg_gio_aon: gpio@f04172c0 { From patchwork Wed Apr 24 18:50:38 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Doug Berger X-Patchwork-Id: 1927337 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=j3duIMAd; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=2604:1380:45e3:2400::1; helo=sv.mirrors.kernel.org; envelope-from=linux-gpio+bounces-5830-incoming=patchwork.ozlabs.org@vger.kernel.org; receiver=patchwork.ozlabs.org) Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org [IPv6:2604:1380:45e3:2400::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VPp4831N9z1yP2 for ; Thu, 25 Apr 2024 04:51:36 +1000 (AEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 0D1E2283E50 for ; Wed, 24 Apr 2024 18:51:35 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D7C8A1F951; Wed, 24 Apr 2024 18:51:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="j3duIMAd" X-Original-To: linux-gpio@vger.kernel.org Received: from mail-pl1-f173.google.com (mail-pl1-f173.google.com [209.85.214.173]) (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 58E0F1CF8F; Wed, 24 Apr 2024 18:51:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713984674; cv=none; b=UKi9moF1355wav04Wr1CXdfDzqFIpbSFTfQDuhZ6KVYIoP8oeZvZkNhNMisHZ2Q7Ht1Y3vo43o06ghMgYhGI+8M/7TbFgKvhBnQQrWm9t5/o0/xJWKqOs4Y5aNSKWxsAOnGlLiwB6nd5LRKQqw2P3iL+2kg/Nwr4RN+RBqhfQqU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713984674; c=relaxed/simple; bh=3JKiAlnke7ad9UapGflQTchX6DP8jIuQysYvvcVfMbE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=mIXkfFXoCF4IcU6XxLsMa/V7NPZWf0jrq9vFPg1TGXkAB89Zh0NKBRJIpk1OHn/8v/xUcVl44MBqn6nGE0NnuFJe4LSpRoyXYSxFdscIxq57d+zwSg7dbKpSuvLAhK8EmjhCTgte0nATBRELqLhhusRcksJ4TW7b4gKId2pbmzg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=j3duIMAd; arc=none smtp.client-ip=209.85.214.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pl1-f173.google.com with SMTP id d9443c01a7336-1e2b137d666so1186295ad.2; Wed, 24 Apr 2024 11:51:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713984673; x=1714589473; 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=aj2xwdnfxc+ze8SbiK+i5jZDgRNHrTg59d272CHxPl0=; b=j3duIMAdMJJIcAyPnnd2dz/kOcQYnAzdqqK1dr8/VXVo0FHqs40x5HpsdU0P5EYsBK 2sgl5yF5oebQ2KiSQYai07gS0hD0AI/WyrZoGs5w7VtXaP0w3BGf3++G2pYwGiK3Gj8W wXME/W+/TNrdsiojKAE7JlY4HRlY42rNtfcvsNsvk0J4BSa00FR+xtvWTvUpszV3kv+5 OisZQpBKxos9lce0l30Oy+okNPOsIJ0AxKUHfq8cXh7XMP7FaW9vs0XZdNlllB5HKijo Ys1aSfFiJCFjwLR3TfLShyWnjmeKDawhIgnf+Ie8KLwFEPESAeF5ZL88TNRxtbGOZo76 +o4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713984673; x=1714589473; 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=aj2xwdnfxc+ze8SbiK+i5jZDgRNHrTg59d272CHxPl0=; b=JtAiYbLAvG9tz4wl01Jbm+visJ3RD5wPVH5yp2++xhDKN3hC24t1mXTtN3sb8tSupM VLaZM/iqPUfTtKXMjFbBQe//M32HBlz8IgIZBIE4+h/e4TaSmn4ifY46z8JDweiYs1iD vunD25W1bQJgztN0bq2c60zBNqlsCc5uvOwDOL7QZ4KamiXtVyGqvA4fBAOmvV5usYWB kzOoL1nwmSay3QRqNzBoLWIz1aSwQJNW7297hkPU5or3mzUJHGXI3zeRYnTcqbKzJABX /J+vJjLTW1MracwrPyqU65jUh/iplU5Rl24yalQp0n9o3ZbZ9qZZr37ZOxRPQwztjAps wwsA== X-Forwarded-Encrypted: i=1; AJvYcCU3GPgRTpbGYrgz7PWNa2rAGUp3cwEYXYxtdhKDtmRvLSQf67lx2Ho7p5O7ynImi/vPZfC1m8h1DycL+ZsHTSXZOg5PtoIn+tpcBBd5UqvwMSug8hxbZMrCa2mge/Ny11qhnr52yRenVy7ywtbwiTlLjWQL/RbqLlQIigvFS32Uj4xtnDA= X-Gm-Message-State: AOJu0Yy3mep7RS7dILP7euAmcy7XbwDFqeNVA2XBOxhFm+I/eG2ezJQf 12NSeECpxOYiD3wHU6+QKCOioCidSDUjXYhxC+z0RMJHtroP1+fJ X-Google-Smtp-Source: AGHT+IHFsfd1jX7pOazkuawT08Lov2Gli5HIokS31G862grOZlEAa7XZMq3oEvPkdYQNBTJt+IaKqg== X-Received: by 2002:a17:902:6bc4:b0:1e8:b7fc:7f85 with SMTP id m4-20020a1709026bc400b001e8b7fc7f85mr3033829plt.31.1713984672683; Wed, 24 Apr 2024 11:51:12 -0700 (PDT) Received: from stbirv-lnx-1.igp.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id u8-20020a170902e5c800b001e425d86ad9sm12268728plf.151.2024.04.24.11.51.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Apr 2024 11:51:12 -0700 (PDT) From: Doug Berger To: Linus Walleij , Bartosz Golaszewski Cc: Phil Elwell , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Florian Fainelli , bcm-kernel-feedback-list@broadcom.com, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Doug Berger Subject: [PATCH 2/3] gpio: of: support gpio-ranges for multiple gpiochip devices Date: Wed, 24 Apr 2024 11:50:38 -0700 Message-Id: <20240424185039.1707812-3-opendmb@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240424185039.1707812-1-opendmb@gmail.com> References: <20240424185039.1707812-1-opendmb@gmail.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Some drivers (e.g. gpio-mt7621 and gpio-brcmstb) have multiple gpiochip banks within a single device. Unfortunately, the gpio-ranges property of the device node was being applied to every gpiochip of the device with device relative GPIO offset values rather than gpiochip relative GPIO offset values. This commit makes use of the gpio_chip offset value which can be non-zero for such devices to split the device node gpio-ranges property into GPIO offset ranges that can be applied to each of the relevant gpiochips of the device. Signed-off-by: Doug Berger Acked-by: Florian Fainelli --- drivers/gpio/gpiolib-of.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c index cb0cefaec37e..d75f6ee37028 100644 --- a/drivers/gpio/gpiolib-of.c +++ b/drivers/gpio/gpiolib-of.c @@ -1037,7 +1037,7 @@ static int of_gpiochip_add_pin_range(struct gpio_chip *chip) struct of_phandle_args pinspec; struct pinctrl_dev *pctldev; struct device_node *np; - int index = 0, ret; + int index = 0, ret, trim; const char *name; static const char group_names_propname[] = "gpio-ranges-group-names"; struct property *group_names; @@ -1059,7 +1059,14 @@ static int of_gpiochip_add_pin_range(struct gpio_chip *chip) if (!pctldev) return -EPROBE_DEFER; + /* Ignore ranges outside of this GPIO chip */ + if (pinspec.args[0] >= (chip->offset + chip->ngpio)) + continue; + if (pinspec.args[0] + pinspec.args[2] <= chip->offset) + continue; + if (pinspec.args[2]) { + /* npins != 0: linear range */ if (group_names) { of_property_read_string_index(np, group_names_propname, @@ -1070,7 +1077,19 @@ static int of_gpiochip_add_pin_range(struct gpio_chip *chip) break; } } - /* npins != 0: linear range */ + + /* Trim the range to fit this GPIO chip */ + if (chip->offset > pinspec.args[0]) { + trim = chip->offset - pinspec.args[0]; + pinspec.args[2] -= trim; + pinspec.args[1] += trim; + pinspec.args[0] = 0; + } else { + pinspec.args[0] -= chip->offset; + } + if ((pinspec.args[0] + pinspec.args[2]) > chip->ngpio) + pinspec.args[2] = chip->ngpio - pinspec.args[0]; + ret = gpiochip_add_pin_range(chip, pinctrl_dev_get_devname(pctldev), pinspec.args[0], From patchwork Wed Apr 24 18:50:39 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Doug Berger X-Patchwork-Id: 1927338 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20230601 header.b=VQbWBH6J; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=2604:1380:45e3:2400::1; helo=sv.mirrors.kernel.org; envelope-from=linux-gpio+bounces-5831-incoming=patchwork.ozlabs.org@vger.kernel.org; receiver=patchwork.ozlabs.org) Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org [IPv6:2604:1380:45e3:2400::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4VPp4P1t8sz1yP2 for ; Thu, 25 Apr 2024 04:51:49 +1000 (AEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id DACDB283B50 for ; Wed, 24 Apr 2024 18:51:47 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id A29D022F0F; Wed, 24 Apr 2024 18:51:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VQbWBH6J" X-Original-To: linux-gpio@vger.kernel.org Received: from mail-pj1-f41.google.com (mail-pj1-f41.google.com [209.85.216.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2335B208B0; Wed, 24 Apr 2024 18:51:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713984676; cv=none; b=UxgcV12/V1QBs7tRPwc4lC855luuaf+kAXb/g0T1o7US6aiL7i8SWw0CGOzuCwx5XUUb8pD9iP51DACgo9jRsAJ4/59j0dUZtahVJnI/hkw8gjl5YsF49B1OLwvphKbeBdcZlBM5ILyLgJ0TK6Mz3b/QrkaJa9t2r+LwjPrz/O4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1713984676; c=relaxed/simple; bh=FMYtZTU4m/aaM/hLt+IYtsY//iU7mILC9fcIqhJS6fk=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=tSWV54NSMFi1yNwQGMHFsN6ncfv1pL8IxOu509ODzg6+VUlMTYC63xWtL6aksJtTlEJ/OD7pdUgKcAH4i/9VA06rFCscLvqo/BFO7CYv5oYSggwiFF9FQGFa99itaC6tk6x21Qms4FaFQsA9ifnrEZQfQ9KQg2fRnnoCpyl6NSo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=VQbWBH6J; arc=none smtp.client-ip=209.85.216.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pj1-f41.google.com with SMTP id 98e67ed59e1d1-2ad8fb779d2so223047a91.0; Wed, 24 Apr 2024 11:51:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1713984674; x=1714589474; 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=M6X+5q1a247m8fqLqnCGs505zqCuuzBrbu8TFFgUqlA=; b=VQbWBH6JlQlqm+j8i70Ykio0K7rMboyRFhbV77rr66oVXfikZd7pQsc/Di/brGYZiB BI9NDINlXPZXoI9rd208xT96w5iwKS1irKmr9Ox0jt38gK0EskBWHFYyfXFf33v2cEhR oeGd0cz5YmeMHcncyINu7IklILzvoOrlD1eOHO7C0hMFXQ+j+ZS9VBiS0BIeXEx/rLoJ YjhC9rmnnu2OyeAeHXq2jmejOzHePzWsGxPeEisUSMIM9UwuxPi53Y3k0W0fMxR94E24 eXC199kDIhdXJTB7rsp3eltHSvYeoIXA3gNj0XNBrcE3xvMilMPVaOLEV9ocULbKUt0N oJwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1713984674; x=1714589474; 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=M6X+5q1a247m8fqLqnCGs505zqCuuzBrbu8TFFgUqlA=; b=wXhYrxWT6EVOY+TFI0fFN+ImmlQc4trdqfvTX85cGe7qNRaqgObRGXcTWCNHEk6wHq TiCl+0ZGlwGnGOeD5FtfcuFAL4FINur1iEz4lj27j7EGOtEP5KSJxoh2PzUf1Q5GmrHC ZIDbcVPd4HBMxyvXmeAn2XZl9NMGityy9X2NLDK76shmVReTHOivT4Fe7MFkreIio4d2 MuYD/0ZUfJ5GjP5lzoPvk+84xaYXc/oSuLdH/tSvTc3tpc/ibKtq/is449wmkHwmuOZg wZ5mD/kClIpzI3XxO7Sv505GJ8feKQDU9GR2ZGlM46/aNn+ZQGsk0e4yFrjHcuOqeY1E 22Aw== X-Forwarded-Encrypted: i=1; AJvYcCX3QpWDB7ZrEzKmd9XQEVgr8CHMgcL4GyhocQogapPN5C9BXtf1eh1HCcrIyHF+UmH98JLY91qQD43zQdtnQH3LsgqsZx4wOd281BcgxQdX84ABWyZ4nvx8QRaSLmYw321RBjI1h7tS7FwYPs77/PdMztZfWZyg3GaAgPo0JVDht/tgNvs= X-Gm-Message-State: AOJu0Yx/eZQ0YoQp1A/q3QAIIjb0lUXH/pOxkg06dKnGoB0I4tg6Wtbx c9QH07k3Oiz1OrKkkruttPLlahXugBgG+mxpm9bxS9uIfGQbR4Xf X-Google-Smtp-Source: AGHT+IG2S6ThdztYb6nuOhNHcsI2+OyS+uqKCdcFORMaUGu/yUaxmgf9JxNsSHJqm+2ECP5SHr4tZg== X-Received: by 2002:a17:90b:1d0e:b0:2a2:f284:5196 with SMTP id on14-20020a17090b1d0e00b002a2f2845196mr3224723pjb.45.1713984674335; Wed, 24 Apr 2024 11:51:14 -0700 (PDT) Received: from stbirv-lnx-1.igp.broadcom.net ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id u8-20020a170902e5c800b001e425d86ad9sm12268728plf.151.2024.04.24.11.51.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 Apr 2024 11:51:13 -0700 (PDT) From: Doug Berger To: Linus Walleij , Bartosz Golaszewski Cc: Phil Elwell , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Florian Fainelli , bcm-kernel-feedback-list@broadcom.com, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Doug Berger Subject: [PATCH 3/3] gpio: brcmstb: add support for gpio-ranges Date: Wed, 24 Apr 2024 11:50:39 -0700 Message-Id: <20240424185039.1707812-4-opendmb@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240424185039.1707812-1-opendmb@gmail.com> References: <20240424185039.1707812-1-opendmb@gmail.com> Precedence: bulk X-Mailing-List: linux-gpio@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 A pin controller device mapped with the gpio-ranges property will need implementations of the .request and .free members of the gpiochip. Signed-off-by: Doug Berger Tested-by: Phil Elwell Acked-by: Florian Fainelli --- drivers/gpio/gpio-brcmstb.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/gpio/gpio-brcmstb.c b/drivers/gpio/gpio-brcmstb.c index 790cb278b72a..8dce78ea7139 100644 --- a/drivers/gpio/gpio-brcmstb.c +++ b/drivers/gpio/gpio-brcmstb.c @@ -694,6 +694,8 @@ static int brcmstb_gpio_probe(struct platform_device *pdev) /* not all ngpio lines are valid, will use bank width later */ gc->ngpio = MAX_GPIO_PER_BANK; gc->offset = bank->id * MAX_GPIO_PER_BANK; + gc->request = gpiochip_generic_request; + gc->free = gpiochip_generic_free; if (priv->parent_irq > 0) gc->to_irq = brcmstb_gpio_to_irq;