From patchwork Thu Jan 26 10:17:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Niall Leonard via B4 Submission Endpoint X-Patchwork-Id: 1732092 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=2620:137:e000::1:20; helo=out1.vger.email; envelope-from=linux-gpio-owner@vger.kernel.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=dKXBx/z7; dkim-atps=neutral Received: from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20]) by legolas.ozlabs.org (Postfix) with ESMTP id 4P2cBj4fcHz23h0 for ; Thu, 26 Jan 2023 21:19:25 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237105AbjAZKTX (ORCPT ); Thu, 26 Jan 2023 05:19:23 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237101AbjAZKTJ (ORCPT ); Thu, 26 Jan 2023 05:19:09 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B50CD7EC1; Thu, 26 Jan 2023 02:18:27 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id D2681B81D51; Thu, 26 Jan 2023 10:18:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 7796DC433EF; Thu, 26 Jan 2023 10:18:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1674728284; bh=SEA+SZj/8CwLwSOICO5ZSda/48TRihR4WgSENpJnHlE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=dKXBx/z7CUYQWYkkmIgOzX28kWhIutpOaJXbSKLxy1EAcSXybiMeuMpjdaYfHKxFk M2m9E4bGDSKaXNzX+opJN0+pg/zl4D4vGv9LIplYBs93JzrUUpFuM6aPuw6G3fJLX9 lMhgJDQQd/N3QqCpXflcuXzKqNHazPFQrkooxvPPmyflDWeghKVUk78RVCT0HpuPOd UrHpMOsLUeYFHnWu+kiajluAvoOZrXxFD8qDGNks0zpZ0cnJ1z9SWOxlnmzxSC6UHH Zs1BwsbAgmQFCfUe+p58Y5D1/NmUzJxalk+lgOcgty5SqlSnw9efnTc/X90fEDErdj 5/OL1ZUo/KApQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5F57CC54E94; Thu, 26 Jan 2023 10:18:04 +0000 (UTC) From: Niall Leonard via B4 Submission Endpoint Date: Thu, 26 Jan 2023 10:17:22 +0000 Subject: [PATCH 1/3] gpio: dt-bindings: add new property to wd,mbl-gpio bindings MIME-Version: 1.0 Message-Id: <20230126-gpio-mmio-fix-v1-1-8a20ce0e8275@ncr.com> References: <20230126-gpio-mmio-fix-v1-0-8a20ce0e8275@ncr.com> In-Reply-To: <20230126-gpio-mmio-fix-v1-0-8a20ce0e8275@ncr.com> To: Linus Walleij , Bartosz Golaszewski , Rob Herring , Krzysztof Kozlowski Cc: linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Niall Leonard X-Mailer: b4 0.12.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=709; i=nl250060@ncr.com; h=from:subject:message-id; bh=TZqj8LOqd2ElAWFa5TLfeyGZqTZ8bzLHl7An5WBxTgA=; =?utf-8?q?b=3DowEBbQKS/ZANAwAKAVGiIrYFD2P/AcsmYgBj0lNa8K940tPfSmc2r9nNjxeac?= =?utf-8?q?sEcqV+EBYR7dCIh_eoyWvsuJAjMEAAEKAB0WIQSha1EPjh6hUqdtwZNRoiK2BQ9j/?= =?utf-8?q?wUCY9JTWgAKCRBRoiK2BQ9j/3RpD/_4jj77vSlXxpbuPYKFdn0vEZhfXOLPaXlCCs?= =?utf-8?q?+CkYcU39mGs9v4OjplKJUVPuuCVERaCmKgdhPtS1D9X_wexpEBPbTOiuECj2lFIWp?= =?utf-8?q?6Cv9C3jYDNCaBCsRIZ2mZ70FJiHXJgoSeZ7QK6NJD+ygLtbPGNKjVh9dV_N4kkmiB?= =?utf-8?q?naSEuTjXHJ+cfMapEnVNmElK20rRcoxJp+Hldqw+bDCYUrGatqrCxCWwD22XkWSCI?= =?utf-8?q?l4pmLp_bwVZvgxTpuvBeC2gE63lwTBNH18cOAYgZ0Bl4kZRmLbEbiYFWEaWI5+tnU?= =?utf-8?q?1aPd2dn52rnuKZtcVihJ_P3adT7IxtLs+cDFZC/sIL76sYewxV8T6dwJ7fgo2Eslz?= =?utf-8?q?vAksfvo0cHTA+ZzuZRyXgiH7gDH9UozTLs_Ql7nmtvS97ojMeM6lrEY4FUU6V0qGH?= =?utf-8?q?yPvFbuzSGJeK/YzMM+Qv5LywW0gWeZLkLBpRulik2xhtkAfc_U/7st71QO4Lp6PU+?= =?utf-8?q?Mewz1a2XlZHpTBxnT4q7z2c4BCXbROfy4wCOspiWzy5NmMU5YGIZHaZmUtIJkY_iC?= =?utf-8?q?D4NQnRTXvaCgMuscLbRgADLRexTfRekrSnazsftSYN/fiQZOSWLpnqYYzPYiD7BHR?= =?utf-8?q?QansuPMq6A4?= 4UZCrn2KSFMw0awdyMxc81ntXCmZkmp3lVo9h83HdO8JWZyvfHcxL1R0Madw== X-Developer-Key: i=nl250060@ncr.com; a=openpgp; fpr=A16B510F8E1EA152A76DC19351A222B6050F63FF X-Endpoint-Received: by B4 Submission Endpoint for nl250060@ncr.com/default with auth_id=26 X-Original-From: Niall Leonard Reply-To: X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham 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-gpio@vger.kernel.org From: Niall Leonard Added optional "no-input" property Signed-off-by: Niall Leonard --- Documentation/devicetree/bindings/gpio/wd,mbl-gpio.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/gpio/wd,mbl-gpio.txt b/Documentation/devicetree/bindings/gpio/wd,mbl-gpio.txt index 038c3a6a1f4d..9405f9dad522 100644 --- a/Documentation/devicetree/bindings/gpio/wd,mbl-gpio.txt +++ b/Documentation/devicetree/bindings/gpio/wd,mbl-gpio.txt @@ -18,6 +18,7 @@ Required properties: Optional properties: - no-output: GPIOs are read-only. + - no-input: GPIOs are write-only. Read is via a shadow register. Examples: gpio0: gpio0@e0000000 { From patchwork Thu Jan 26 10:17:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Niall Leonard via B4 Submission Endpoint X-Patchwork-Id: 1732089 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=2620:137:e000::1:20; helo=out1.vger.email; envelope-from=linux-gpio-owner@vger.kernel.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=aKoZkWz5; dkim-atps=neutral Received: from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20]) by legolas.ozlabs.org (Postfix) with ESMTP id 4P2cBD5R57z23h0 for ; Thu, 26 Jan 2023 21:19:00 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237067AbjAZKSz (ORCPT ); Thu, 26 Jan 2023 05:18:55 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42652 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237063AbjAZKSi (ORCPT ); Thu, 26 Jan 2023 05:18:38 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CFD5B61846; Thu, 26 Jan 2023 02:18:10 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id DB635B81D58; Thu, 26 Jan 2023 10:18:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 81FA7C4339B; Thu, 26 Jan 2023 10:18:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1674728284; bh=jQyK54Ac2Nf4g5m1Qyhvp73lWbZ9baHSRpo8ImPR0Tc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=aKoZkWz5/wCTW4C9GZvNGsjrUBj97qXkGfxxJmttMRQ6x5G2TMbntSr9zFZvw4FLa 6L/cJF3fkDNQqAd2Z7RnsO3VGgZQ6856UKrbJcDSC1EtHAxBdeiaOVjLlGXYkbEUU2 4TI7r5Ddx7n9qbWmYlhsz2/xWPEg24iwr3XXcWYdaNReS8Ak4vkwbUPi7KJL1M89qM vcgWv1EQz68Dangvivk/zIp3YLajvTep1+Vq6qx2KuYK62iTIl2e+nfX6NoFmahNMx h5BcmSyG0vDZYgNjJL83kg3iC1svacBXWcbPQtMmQ63g+z9zqm525xL4sh2sQK4TxN XQr9HoFV9qfMg== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6C3DEC61DA2; Thu, 26 Jan 2023 10:18:04 +0000 (UTC) From: Niall Leonard via B4 Submission Endpoint Date: Thu, 26 Jan 2023 10:17:23 +0000 Subject: [PATCH 2/3] gpio: Add new flag BGPIOF_NO_INPUT MIME-Version: 1.0 Message-Id: <20230126-gpio-mmio-fix-v1-2-8a20ce0e8275@ncr.com> References: <20230126-gpio-mmio-fix-v1-0-8a20ce0e8275@ncr.com> In-Reply-To: <20230126-gpio-mmio-fix-v1-0-8a20ce0e8275@ncr.com> To: Linus Walleij , Bartosz Golaszewski , Rob Herring , Krzysztof Kozlowski Cc: linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Niall Leonard X-Mailer: b4 0.12.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=725; i=nl250060@ncr.com; h=from:subject:message-id; bh=TggMaJeCcpeNdUyuVzDRaxsQqKzgRTR7wrZ7HE9dDhg=; =?utf-8?q?b=3DowEBbQKS/ZANAwAKAVGiIrYFD2P/AcsmYgBj0lNal1QTJQw+z/cl0dkuF4eBM?= =?utf-8?q?GFEgzNxPwt88RAJ_yEncf7CJAjMEAAEKAB0WIQSha1EPjh6hUqdtwZNRoiK2BQ9j/?= =?utf-8?q?wUCY9JTWgAKCRBRoiK2BQ9j/2wzEA_CMVU+Aqyd/S4fxzF9epmJOp+NTI0QKcCM6A?= =?utf-8?q?45WtIHkfL24d6XnOrzA2WFb7Q1vaVC3rQp4+8RfvBMv_sAziC5leMO2WOG9GdYmi/?= =?utf-8?q?if320+fJ607I4yILRKqDhS5MDm4UHSc2m8LTrIpz1XkxpUTOeLQPNiof6_3nXXDMF?= =?utf-8?q?Pv0fekhtnODoKjU0Phjug+zP4mG8pN6eaGSmlLSrMTCrcdX8CPWxOS35eeE7dLmqD?= =?utf-8?q?pafFzP_v+wurMIZ2e82Wr2e+RYw3d/66R95x6ydrRY9V/x4eFFQ5bDGeHSinITtfn?= =?utf-8?q?t2Dbmjwp7vMzKwOWFEtE_Ja1luHGeJXr7Ohj4zK6/GTBqf2Ok12BlSbAkKZqtLXXC?= =?utf-8?q?R8QQ1WBuG7TAYLStl40iYLRakboE7mF11X_7V+AdaEeJmAuDt/3xVTqeq4h8xaEx9?= =?utf-8?q?/ve4saAexZd8BBOnTzusBNLg3/mlJu7pGK5hpaAePb164wpz_3vnCzYB2fQSt9gI5?= =?utf-8?q?jEUPtBbflj2SbU97YRXMhq2du1x28HBoXWn540z/1LNtlcxm4VfDkZkKGJ/bZs_4V?= =?utf-8?q?8Z35PJUWbdcMbiYmnxI4Av4J4wxwb5isvVMpd5txE4xXCIv1C4vIQs1blJ9HWbHs8?= =?utf-8?q?7pQZliGoyIN?= LPjBqKZaMKmtP4STpIsEqABTWONFeEbzXv5LfkPTxKCSQWuh5ye426xXsUdQ== X-Developer-Key: i=nl250060@ncr.com; a=openpgp; fpr=A16B510F8E1EA152A76DC19351A222B6050F63FF X-Endpoint-Received: by B4 Submission Endpoint for nl250060@ncr.com/default with auth_id=26 X-Original-From: Niall Leonard Reply-To: X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham 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-gpio@vger.kernel.org From: Niall Leonard Signed-off-by: Niall Leonard Reviewed-by: Linus Walleij --- include/linux/gpio/driver.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 44783fc16125..e8e57310e3b8 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -682,6 +682,7 @@ int bgpio_init(struct gpio_chip *gc, struct device *dev, #define BGPIOF_READ_OUTPUT_REG_SET BIT(4) /* reg_set stores output value */ #define BGPIOF_NO_OUTPUT BIT(5) /* only input */ #define BGPIOF_NO_SET_ON_INPUT BIT(6) +#define BGPIOF_NO_INPUT BIT(7) /* only output */ int gpiochip_irq_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hwirq); From patchwork Thu Jan 26 10:17:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Niall Leonard via B4 Submission Endpoint X-Patchwork-Id: 1732094 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=2620:137:e000::1:20; helo=out1.vger.email; envelope-from=linux-gpio-owner@vger.kernel.org; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=k20201202 header.b=fz2kUwy8; dkim-atps=neutral Received: from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20]) by legolas.ozlabs.org (Postfix) with ESMTP id 4P2cH25N2Qz23gY for ; Thu, 26 Jan 2023 21:23:10 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236632AbjAZKXH (ORCPT ); Thu, 26 Jan 2023 05:23:07 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48532 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229620AbjAZKXG (ORCPT ); Thu, 26 Jan 2023 05:23:06 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B9DB8A6; Thu, 26 Jan 2023 02:23:05 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 34E6461791; Thu, 26 Jan 2023 10:18:05 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id 8E52EC433A0; Thu, 26 Jan 2023 10:18:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1674728284; bh=qU4Q3J1fFonZuS+YU1KqT+9kIdY4hzcAiMKc28trpZo=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=fz2kUwy80l2Q2jiZqRG0VV2pZthSay7Hs1MWAJZBaVmV31KA2sVRXqQVdN0Hlrkig H5RrJ2EAv7KY95m6VobQK6W/oH2IWpY1NybHAP564cNJowBr1e0xzCs8Qt4lhvl5tr dr43yNTGNhwwC+y3XsuF2XroQ6em3apWZP60KZbO2Yx/iwclQOUCa/A/90CCKygdbP YJapmYOUaBGl9aPKKJCvAAmDQKaxVtrxUJx1S2So7P+OA9Cjx8x5bSHgKmiPWw+iBA h2AjuE+JB+Uj0aPIZeL2MZ650xabCs436Hiwkgtmc2sB4CFQczjLLEDdd10K4SD35E HWbOwRFmxWwMQ== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 791D3C54EAA; Thu, 26 Jan 2023 10:18:04 +0000 (UTC) From: Niall Leonard via B4 Submission Endpoint Date: Thu, 26 Jan 2023 10:17:24 +0000 Subject: [PATCH 3/3] gpio: mmio: Use new flag BGPIOF_NO_INPUT MIME-Version: 1.0 Message-Id: <20230126-gpio-mmio-fix-v1-3-8a20ce0e8275@ncr.com> References: <20230126-gpio-mmio-fix-v1-0-8a20ce0e8275@ncr.com> In-Reply-To: <20230126-gpio-mmio-fix-v1-0-8a20ce0e8275@ncr.com> To: Linus Walleij , Bartosz Golaszewski , Rob Herring , Krzysztof Kozlowski Cc: linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Niall Leonard X-Mailer: b4 0.12.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1964; i=nl250060@ncr.com; h=from:subject:message-id; bh=IQwtrgDKf2QgNZYU9DD7LFbObPBPz/lwtIwlOPLwcgM=; =?utf-8?q?b=3DowEBbQKS/ZANAwAKAVGiIrYFD2P/AcsmYgBj0lNb1kkol71okHDULBf/ympbk?= =?utf-8?q?NCY51FLhZrC3D+p_/4DXpGiJAjMEAAEKAB0WIQSha1EPjh6hUqdtwZNRoiK2BQ9j/?= =?utf-8?q?wUCY9JTWwAKCRBRoiK2BQ9j/9qRD/_0YdRZAqSpG3MI+yJpsuDqitYC+N/uNu/v5o?= =?utf-8?q?KauNCl5ffRzn7xP9x0j64U3Ay2fj5KpSAfvprbpAZ17_4P0I27QVxSXsnMsrfW+Zk?= =?utf-8?q?9Krt9U+hgDx4vHPfFk7urdkRom4VLl1K4mUsntZezSHwaJ+2Y0MD0icSl_nvuGUs4?= =?utf-8?q?OcStu3AGHZOXb1jhZUH69rq3pajhat/jdUwThy6RnMBm2KXFbh06nHBEmqSlHN4k3?= =?utf-8?q?qRj2Mw_vswbTQoljF4WwTFtHjMGvpRDV5/5wqsHoDRS5SPVN52fr91c0VkloXgXCe?= =?utf-8?q?BODh6xfEyqSSaJx05B8b_3H8BYQa1EzbmnzmmKY4zGpjgmCCCl80Byxa8xHQsC1hX?= =?utf-8?q?CWRSISA5v5JILarfCPmsiUIi7WrlsEAxr+_hCIzt0MHm8Uf/hapQsWk4Px5XfxahR?= =?utf-8?q?8LwhYuNer/HyCZZci4nwH5Nnji6nXGghHl69lbqhFC13Qe3D_DGPEy19G8cerxkPG?= =?utf-8?q?0o7fKVPHOoWWm4NN14lTIkok0n6mVvGlxnftghzeRlfryy+NnTZFXNLbvWPO3S_ER?= =?utf-8?q?WMg1XsUC+luqyVg8RNcOmBs+21PYwnH6jlY++pgWivj7m7yAnwEDapHpMpB+9AQRd?= =?utf-8?q?mZvBPADbZbS?= 2tbR+WI3rWcJSs0DjceTnocqXhnsJxqDES5FEQoCX8+tu8OEzSQWXARhQGCQ== X-Developer-Key: i=nl250060@ncr.com; a=openpgp; fpr=A16B510F8E1EA152A76DC19351A222B6050F63FF X-Endpoint-Received: by B4 Submission Endpoint for nl250060@ncr.com/default with auth_id=26 X-Original-From: Niall Leonard Reply-To: X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham 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-gpio@vger.kernel.org From: Niall Leonard Use the existing shadow data register 'bgpio_data' to allow the last written value to be returned by the read operation when BGPIOF_NO_INPUT flag is set. Signed-off-by: Niall Leonard Reviewed-by: Linus Walleij --- drivers/gpio/gpio-mmio.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/drivers/gpio/gpio-mmio.c b/drivers/gpio/gpio-mmio.c index d9dff3dc92ae..7125bd8caaa4 100644 --- a/drivers/gpio/gpio-mmio.c +++ b/drivers/gpio/gpio-mmio.c @@ -164,6 +164,11 @@ static int bgpio_get_set_multiple(struct gpio_chip *gc, unsigned long *mask, return 0; } +static int bgpio_get_shadow(struct gpio_chip *gc, unsigned int gpio) +{ + return !!(gc->bgpio_data & bgpio_line2mask(gc, gpio)); +} + static int bgpio_get(struct gpio_chip *gc, unsigned int gpio) { return !!(gc->read_reg(gc->reg_dat) & bgpio_line2mask(gc, gpio)); @@ -526,7 +531,10 @@ static int bgpio_setup_io(struct gpio_chip *gc, * reading each line individually in that fringe case. */ } else { - gc->get = bgpio_get; + if (flags & BGPIOF_NO_INPUT) + gc->get = bgpio_get_shadow; + else + gc->get = bgpio_get; if (gc->be_bits) gc->get_multiple = bgpio_get_multiple_be; else @@ -630,7 +638,11 @@ int bgpio_init(struct gpio_chip *gc, struct device *dev, if (ret) return ret; - gc->bgpio_data = gc->read_reg(gc->reg_dat); + if (flags & BGPIOF_NO_INPUT) + gc->bgpio_data = 0; + else + gc->bgpio_data = gc->read_reg(gc->reg_dat); + if (gc->set == bgpio_set_set && !(flags & BGPIOF_UNREADABLE_REG_SET)) gc->bgpio_data = gc->read_reg(gc->reg_set); @@ -711,6 +723,9 @@ static struct bgpio_pdata *bgpio_parse_dt(struct platform_device *pdev, if (of_property_read_bool(pdev->dev.of_node, "no-output")) *flags |= BGPIOF_NO_OUTPUT; + if (of_property_read_bool(pdev->dev.of_node, "no-input")) + *flags |= BGPIOF_NO_INPUT; + return pdata; } #else