From nobody Mon Feb 9 20:47:44 2026 Received: from smtp1.tecnico.ulisboa.pt (smtp1.tecnico.ulisboa.pt [193.136.128.21]) (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 0E07E328B71; Tue, 27 Jan 2026 18:53:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=193.136.128.21 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769539986; cv=none; b=BbYG0TzPaEvY7PdX7CDfER+juZrf3VVhdKvDUBwi/CZFjruuRvJWpFq25xLVjMLprccx0m4b9D6qEkyM1BuBPzlxwLdJHGDLeypU+we9LFbLLktEKMg8f0kc3I58ajuVqn5YJnWqFHJ+S4Av9pzu2qM6Gn7lV33MhWFb54YU7uY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769539986; c=relaxed/simple; bh=nUUA37xD4ZUC780N/LEa+/KCl37A7KAkBtVsxe6xQeg=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=UnILICuVBVfBHZDJgbW7y7iLLNt1Bj7arhEEmB33oOHhYf4NYe1nS/rcK9NCqZMaSdFeuN00RCRp/EGPxMYDsCtEluoLxQDHZ9KzUKpF5NIbR3SKxKWm/9vfgHSoLaxKsRGeOVWtqq6Arb+Ws7xdQ//hdwoc4iFYalQOVi0HiXo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=tecnico.ulisboa.pt; spf=pass smtp.mailfrom=tecnico.ulisboa.pt; dkim=pass (2048-bit key) header.d=tecnico.ulisboa.pt header.i=@tecnico.ulisboa.pt header.b=qeVrGCcg; arc=none smtp.client-ip=193.136.128.21 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=tecnico.ulisboa.pt Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=tecnico.ulisboa.pt Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=tecnico.ulisboa.pt header.i=@tecnico.ulisboa.pt header.b="qeVrGCcg" Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp1.tecnico.ulisboa.pt (Postfix) with ESMTP id CBEF3600025E; Tue, 27 Jan 2026 18:52:58 +0000 (WET) X-Virus-Scanned: by amavis-2.13.0 (20230106) (Debian) at tecnico.ulisboa.pt Received: from smtp1.tecnico.ulisboa.pt ([127.0.0.1]) by localhost (smtp1.tecnico.ulisboa.pt [127.0.0.1]) (amavis, port 10025) with LMTP id 4w_SIb_PtS_a; Tue, 27 Jan 2026 18:52:56 +0000 (WET) Received: from mail1.tecnico.ulisboa.pt (mail1.ist.utl.pt [193.136.128.10]) by smtp1.tecnico.ulisboa.pt (Postfix) with ESMTPS id 3DC316000870; Tue, 27 Jan 2026 18:52:56 +0000 (WET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tecnico.ulisboa.pt; s=mail2; t=1769539976; 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=F+O0A8gzgvdYirAVTdcENc7lG8aqFZVcs1fick+I94g=; b=qeVrGCcg/JK1UhTD9sUPGLPmGP7gjkARQnPXBMeyGevxt7SutInW9fxUOILcaUOoTfz/ne S3Dt7VaiMdrqF/Ne8oe2ofOvCxEGblOdJfA89HO78iPmbbkUnCgSV2zeQMWWbxBUlSMltl 8sb/B7CI34hJboGZihQirp4st0+qJwc4n8bs/Jdy7+00PsEhDI+thlOseIDnC/646j7+Az w18JwUIlh4jVsjby9CrjrrhQZr5XCoRJXiJ51HJLqEBISEpO/AY1fkT4ilgzn+qFq5WpjC I9oZpq707QG6e/n2F7WOK+fcMXof7nH28jcfQB9HDs7kJzKMhkTaP1fUpXPFHw== Received: from [192.168.1.151] (unknown [IPv6:2001:8a0:57db:f00:3ee2:38aa:e2c9:7dde]) (Authenticated sender: ist187313) by mail1.tecnico.ulisboa.pt (Postfix) with ESMTPSA id 01D953600FB; Tue, 27 Jan 2026 18:52:56 +0000 (WET) From: Diogo Ivo Date: Tue, 27 Jan 2026 18:52:42 +0000 Subject: [PATCH] gpio: max77620: Implement .get_direction() callback Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260127-smaug-spi_flash-v1-1-5fd334415118@tecnico.ulisboa.pt> X-B4-Tracking: v=1; b=H4sIAAAAAAAC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzMDQyNz3eLcxNJ03eKCzPi0nMTiDF2TFOOkFDPT5GRzkxQloK6CotS0zAq widGxtbUArS2No2EAAAA= X-Change-ID: 20260127-smaug-spi_flash-4d3bd65cc74d To: Linus Walleij , Bartosz Golaszewski Cc: linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Diogo Ivo X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1769539975; l=1793; i=diogo.ivo@tecnico.ulisboa.pt; s=20240529; h=from:subject:message-id; bh=nUUA37xD4ZUC780N/LEa+/KCl37A7KAkBtVsxe6xQeg=; b=5px8J/U9xGoN+AZ0rDoj2gDF0NJmKgsLKQOIe7+DtrxXjsr5/Gud5rpIFl8BbQsK7xjafz/N9 JONdNxHw2ZHBMDsWjUuOfp22IHvwWtUR8IEAwmKb9v91CFuOM0sWAGr X-Developer-Key: i=diogo.ivo@tecnico.ulisboa.pt; a=ed25519; pk=BRGXhMh1q5KDlZ9y2B8SodFFY8FGupal+NMtJPwRpUQ= Add support for reporting the current GPIO line direction by implementing the .get_direction() callback for the MAX77620 GPIO controller. Signed-off-by: Diogo Ivo Reviewed-by: Linus Walleij --- drivers/gpio/gpio-max77620.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/drivers/gpio/gpio-max77620.c b/drivers/gpio/gpio-max77620.c index 02eca400b307..e6c85411c695 100644 --- a/drivers/gpio/gpio-max77620.c +++ b/drivers/gpio/gpio-max77620.c @@ -132,6 +132,24 @@ static const struct irq_chip max77620_gpio_irqchip =3D= { GPIOCHIP_IRQ_RESOURCE_HELPERS, }; =20 +static int max77620_gpio_get_dir(struct gpio_chip *gc, unsigned int offset) +{ + struct max77620_gpio *mgpio =3D gpiochip_get_data(gc); + unsigned int val; + int ret; + + ret =3D regmap_read(mgpio->rmap, GPIO_REG_ADDR(offset), &val); + if (ret < 0) { + dev_err(mgpio->dev, "CNFG_GPIOx read failed: %d\n", ret); + return ret; + } + + if (val & MAX77620_CNFG_GPIO_DIR_MASK) + return GPIO_LINE_DIRECTION_IN; + else + return GPIO_LINE_DIRECTION_OUT; +} + static int max77620_gpio_dir_input(struct gpio_chip *gc, unsigned int offs= et) { struct max77620_gpio *mgpio =3D gpiochip_get_data(gc); @@ -308,6 +326,7 @@ static int max77620_gpio_probe(struct platform_device *= pdev) =20 mgpio->gpio_chip.label =3D pdev->name; mgpio->gpio_chip.parent =3D pdev->dev.parent; + mgpio->gpio_chip.get_direction =3D max77620_gpio_get_dir; mgpio->gpio_chip.direction_input =3D max77620_gpio_dir_input; mgpio->gpio_chip.get =3D max77620_gpio_get; mgpio->gpio_chip.direction_output =3D max77620_gpio_dir_output; --- base-commit: de1901b57167aa8fa28cfe99d4c9cb181bad47d3 change-id: 20260127-smaug-spi_flash-4d3bd65cc74d Best regards, --=20 Diogo Ivo