-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
generic: move gpio-regmap request/free ops patch from realtek
This patch is also needed on bmips since it fixes issues with GPIOs not being properly configured due to gpio_request_enable not being called on bcm63xx devices. Therefore we can now drop the bcm63268 gpio function patch. Signed-off-by: Álvaro Fernández Rojas <[email protected]>
- Loading branch information
Showing
3 changed files
with
131 additions
and
286 deletions.
There are no files selected for viewing
260 changes: 0 additions & 260 deletions
260
target/linux/bmips/patches-6.6/110-pinctrl-bcm63268-add-gpio-function.patch
This file was deleted.
Oops, something went wrong.
131 changes: 131 additions & 0 deletions
131
target/linux/generic/pending-6.6/821-gpio-regmap-Use-generic-request-free-ops.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
From patchwork Tue Jan 7 20:16:20 2025 | ||
Content-Type: text/plain; charset="utf-8" | ||
MIME-Version: 1.0 | ||
Content-Transfer-Encoding: 8bit | ||
X-Patchwork-Submitter: Sander Vanheule <[email protected]> | ||
X-Patchwork-Id: 2031059 | ||
Return-Path: | ||
<linux-gpio+bounces-14582-incoming=patchwork.ozlabs.org@vger.kernel.org> | ||
X-Original-To: [email protected] | ||
Delivered-To: [email protected] | ||
Authentication-Results: legolas.ozlabs.org; | ||
dkim=pass (2048-bit key; | ||
secure) header.d=svanheule.net [email protected] header.a=rsa-sha256 | ||
header.s=mail1707 header.b=YjCvLC2H; | ||
dkim-atps=neutral | ||
Authentication-Results: legolas.ozlabs.org; | ||
spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org | ||
(client-ip=2604:1380:4601:e00::3; helo=am.mirrors.kernel.org; | ||
envelope-from=linux-gpio+bounces-14582-incoming=patchwork.ozlabs.org@vger.kernel.org; | ||
receiver=patchwork.ozlabs.org) | ||
Received: from am.mirrors.kernel.org (am.mirrors.kernel.org | ||
[IPv6:2604:1380:4601:e00::3]) | ||
(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 4YSMxB3WwSz1yPG | ||
for <[email protected]>; Wed, 8 Jan 2025 07:25:18 +1100 (AEDT) | ||
Received: from smtp.subspace.kernel.org (relay.kernel.org [52.25.139.140]) | ||
(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) | ||
(No client certificate requested) | ||
by am.mirrors.kernel.org (Postfix) with ESMTPS id A7B811887AD1 | ||
for <[email protected]>; Tue, 7 Jan 2025 20:25:19 +0000 (UTC) | ||
Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) | ||
by smtp.subspace.kernel.org (Postfix) with ESMTP id C09A21F63FE; | ||
Tue, 7 Jan 2025 20:25:11 +0000 (UTC) | ||
Authentication-Results: smtp.subspace.kernel.org; | ||
dkim=pass (2048-bit key) header.d=svanheule.net [email protected] | ||
header.b="YjCvLC2H" | ||
X-Original-To: [email protected] | ||
Received: from polaris.svanheule.net (polaris.svanheule.net [84.16.241.116]) | ||
(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) | ||
(No client certificate requested) | ||
by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8DD631DF97A | ||
for <[email protected]>; Tue, 7 Jan 2025 20:25:07 +0000 (UTC) | ||
Authentication-Results: smtp.subspace.kernel.org; | ||
arc=none smtp.client-ip=84.16.241.116 | ||
ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; | ||
t=1736281511; cv=none; | ||
b=Xe/s+ul4S/+nhYxSMqUWJ/GXKP+J7uJo6tFw/w5bTXcmGxkbpCXTLOiTNXAhv8PMhTfsLYSQes6VF8dzDXaJxL4c8SlQsPNfGH/PqecmSvFMbZTz1XbjP9mBUCvX9lxCH8CSRavkuPuYdhss3a56TgaFzi9GifUSHCsHGs7+xk0= | ||
ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; | ||
s=arc-20240116; t=1736281511; c=relaxed/simple; | ||
bh=31kjLyaoVOzIAs1m+zMi59Ia2jUwYW56Jp1YE6hLflg=; | ||
h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; | ||
b=q7miNkZBtMq3dcxL5HMjUpP3EFdQ7/xU/WnWIFVl6MK4rszqphqvaziMOK6avsn+UA5pAx2JJV8bDY8LfNhiVWwZtPfxbikjjZFm1HYlCDWmGudasM0b//K3/On625L4iqFWmVmLUdEdhvwIkJKSL4wTfN0OMz27EI272o5ygLg= | ||
ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; | ||
dmarc=pass (p=none dis=none) header.from=svanheule.net; | ||
spf=pass smtp.mailfrom=svanheule.net; | ||
dkim=pass (2048-bit key) header.d=svanheule.net [email protected] | ||
header.b=YjCvLC2H; arc=none smtp.client-ip=84.16.241.116 | ||
Authentication-Results: smtp.subspace.kernel.org; | ||
dmarc=pass (p=none dis=none) header.from=svanheule.net | ||
Authentication-Results: smtp.subspace.kernel.org; | ||
spf=pass smtp.mailfrom=svanheule.net | ||
Received: from terra.vega.svanheule.net (unknown [94.110.49.146]) | ||
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) | ||
key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest | ||
SHA256) | ||
(No client certificate requested) | ||
(Authenticated sender: [email protected]) | ||
by polaris.svanheule.net (Postfix) with ESMTPSA id 1E18459A0D6; | ||
Tue, 7 Jan 2025 21:17:02 +0100 (CET) | ||
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=svanheule.net; | ||
s=mail1707; t=1736281022; | ||
h=from:from:reply-to:subject:subject:date:date:message-id:message-id: | ||
to:to:cc:cc:mime-version:mime-version:content-type:content-type: | ||
content-transfer-encoding:content-transfer-encoding; | ||
bh=yNGIiTe7uonx3NZIc6+B7LVjvR8RnIV2zq++EO7NLhg=; | ||
b=YjCvLC2HqArIGWGFkNYmh+oloGi7ZFo7WZGlTbxuHqrQVJ6mLNoLCTCkPkX1EJWEQyNysD | ||
Jj+7tBnAYyCrJ0NuSTD9CPW1+KwKP4wlvWpBUlayCdUJyU4rzjqmlYAI5vJ1UX8FOnvEpn | ||
KeWjgjbeMI6dvIE7ATPFkDvMrDxR9KSEe/1pfzY3E5jh1T8tcnTRMQKTll7hSUBN63dVfJ | ||
U7wnHRLvwx8ESIjrHDKOlsSohmV6lyQTrgEeE2RCM6SpZPNoSpPVjTinF1kPuMHNWHV+Th | ||
6eDOblXxt859JECDowM0NjF87XJqjgph22+A1WUV4iaePO4GIWo9DQ3KhP/Pyg== | ||
From: Sander Vanheule <[email protected]> | ||
To: Michael Walle <[email protected]>, | ||
Linus Walleij <[email protected]>, | ||
Bartosz Golaszewski <[email protected]>, | ||
[email protected], | ||
[email protected] | ||
Cc: =?utf-8?q?=C3=81lvaro_Fern=C3=A1ndez_Rojas?= <[email protected]>, | ||
[email protected], [email protected], | ||
[email protected], Sander Vanheule <[email protected]> | ||
Subject: [PATCH] gpio: regmap: Use generic request/free ops | ||
Date: Tue, 7 Jan 2025 21:16:20 +0100 | ||
Message-ID: <[email protected]> | ||
X-Mailer: git-send-email 2.47.1 | ||
Precedence: bulk | ||
X-Mailing-List: [email protected] | ||
List-Id: <linux-gpio.vger.kernel.org> | ||
List-Subscribe: <mailto:[email protected]> | ||
List-Unsubscribe: <mailto:[email protected]> | ||
MIME-Version: 1.0 | ||
|
||
Set the gpiochip request and free ops to the generic implementations. | ||
This way a user can provide a gpio-ranges property defined for a pinmux, | ||
easing muxing of gpio functions. Provided that the pin controller | ||
implementents the pinmux op .gpio_request_enable(), pins will | ||
automatically be muxed to their GPIO function when requested. | ||
|
||
Signed-off-by: Sander Vanheule <[email protected]> | ||
Acked-by: Michael Walle <[email protected]> | ||
--- | ||
Álvaro has submitted a similar patch today. My implementation's impact | ||
is more limited, but I hadn't gotten around to submitting it yet. | ||
|
||
For the original (short) discussion, see: | ||
https://lore.kernel.org/linux-gpio/[email protected]/T/#t | ||
|
||
drivers/gpio/gpio-regmap.c | 2 ++ | ||
1 file changed, 2 insertions(+) | ||
|
||
--- a/drivers/gpio/gpio-regmap.c | ||
+++ b/drivers/gpio/gpio-regmap.c | ||
@@ -262,6 +262,8 @@ struct gpio_regmap *gpio_regmap_register | ||
chip->label = config->label ?: dev_name(config->parent); | ||
chip->can_sleep = regmap_might_sleep(config->regmap); | ||
|
||
+ chip->request = gpiochip_generic_request; | ||
+ chip->free = gpiochip_generic_free; | ||
chip->get = gpio_regmap_get; | ||
if (gpio->reg_set_base && gpio->reg_clr_base) | ||
chip->set = gpio_regmap_set_with_clear; |
Oops, something went wrong.