From patchwork Fri Oct 6 13:44:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Duje_Mihanovi=C4=87?= X-Patchwork-Id: 149249 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a888:0:b0:403:3b70:6f57 with SMTP id x8csp341937vqo; Fri, 6 Oct 2023 06:45:56 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFCYIQRFrwR+vShe6KJ2gsTkMd4fTIYgrTlAw+lt8T8XpIEQs9y5DnxhGmamQCWdyQ92JDp X-Received: by 2002:a05:6a20:4292:b0:13f:c40c:379 with SMTP id o18-20020a056a20429200b0013fc40c0379mr9923217pzj.13.1696599956167; Fri, 06 Oct 2023 06:45:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696599956; cv=none; d=google.com; s=arc-20160816; b=BEkoOA13S9poMTbZ6uHOetwkEAs2htsYff5/iyefB0qWBWdUTgqEEWQguGsQKmgWXN PIQr616yWHS5D3AD6LkOoDV74hvvRdwSj/XJNSYE8hIRtfxXrr20pXUnKMKzlbwOkvIC x1u3k0wg4b0RBKZLIJdZ7NL4YbBKwwoZG+m24simY+1u0F1cCo9SQN2y3LPwGiWuEIk7 gCxe/BIgqGsdXNLKOHahftE7+Eh3gMkWmoOmuNtl4Ss51v8iCs0F/c2IP9wdPV0H+eg9 1/TQBt4GQ/Mh+WecPUBKJRJrvyySiHkcv0rNuZhbxWb3gK/JicPcK1mnY2nEOdGu5SJm j4NQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:from; bh=/04zixa83v+35r1jHLMS00+lsJDZgSdSd0uBSONxk6Q=; fh=1i6b6fQBnaiq0xRa3ncF4yVLO4LQ/VVJhygl9h24PAo=; b=GCjjMAjxyeChAKT6ipLDXG2tCNp/ksS8QUFcv47ZBko1AUt0ess2pppe85Sle22yH2 LBsOojq4j216SpH1kxdmPAftQRDRsbufDBmH1X/lR1RXvnFdXId8ouKh6IK3yMRHa18M FNdFAVFJX2zHc6PGLioO/MKHsX6RfukaDmwte2mZFFErpYGCSyTBV+nrZNnLMGB/c7PI sUN4W2kbZB9QYBJof6t47N2YaDdW3J5mt+TpIO25nylkNh2gXN/EDUqI95/KJAHseusu DgX+Vkl2xeOT/u13MrgwjwN7WYGrmxWCC/vX3/SH8Gw694U25LhtbGmo5CHL23mVWZUc p4yg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from pete.vger.email (pete.vger.email. [2620:137:e000::3:6]) by mx.google.com with ESMTPS id q82-20020a632a55000000b00578e98deca3si3662928pgq.37.2023.10.06.06.45.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Oct 2023 06:45:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) client-ip=2620:137:e000::3:6; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 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 17DF8802375B; Fri, 6 Oct 2023 06:45:51 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232500AbjJFNpX (ORCPT + 18 others); Fri, 6 Oct 2023 09:45:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57868 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232452AbjJFNpP (ORCPT ); Fri, 6 Oct 2023 09:45:15 -0400 Received: from mx.skole.hr (mx1.hosting.skole.hr [161.53.165.185]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3697E9F; Fri, 6 Oct 2023 06:45:14 -0700 (PDT) Received: from mx1.hosting.skole.hr (localhost.localdomain [127.0.0.1]) by mx.skole.hr (mx.skole.hr) with ESMTP id 87E4082B9E; Fri, 6 Oct 2023 15:45:12 +0200 (CEST) From: =?utf-8?q?Duje_Mihanovi=C4=87?= Date: Fri, 06 Oct 2023 15:44:27 +0200 Subject: [PATCH RFT v6 3/6] ARM: pxa: Convert Spitz CF power control to GPIO descriptors MIME-Version: 1.0 Message-Id: <20231006-pxa-gpio-v6-3-981b4910d599@skole.hr> References: <20231006-pxa-gpio-v6-0-981b4910d599@skole.hr> In-Reply-To: <20231006-pxa-gpio-v6-0-981b4910d599@skole.hr> To: Daniel Mack , Haojian Zhuang , Robert Jarzmik , Russell King , Alan Stern , Greg Kroah-Hartman , Linus Walleij , Bartosz Golaszewski , Andy Shevchenko , Dmitry Torokhov , Mark Brown Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, linux-gpio@vger.kernel.org, linux-input@vger.kernel.org, linux-spi@vger.kernel.org, =?utf-8?q?Duje_Miha?= =?utf-8?q?novi=C4=87?= , Bartosz Golaszewski X-Mailer: b4 0.12.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2281; i=duje.mihanovic@skole.hr; h=from:subject:message-id; bh=KJXbAXyTG/sVSbaLBYtwlL2iztxHfXukxnTO76EQ1Do=; b=owEBbQKS/ZANAwAIAZoRnrBCLZbhAcsmYgBlIA9dXq3IsbXcPqKQsM0k9xjtruTjk9o2uhodv xMeFc5SBaWJAjMEAAEIAB0WIQRT351NnD/hEPs2LXiaEZ6wQi2W4QUCZSAPXQAKCRCaEZ6wQi2W 4e/aEACij3SU0X3Wg1OLQ5q3Se8lr+wN8FHuvWQrAxDoT8cxGOabqsLggZL+Dt6io84mDzME1Z/ tjLBhJwv9L3h1Cvm6osLFEjbdLrbyRN3IzjABPnnTpcJf6oi8oREpiV7DVIdfVdlcfnr33D7eGZ pImzsyGszNGncC9aEHmM74+wFC6XrybGocqD7XqMlGtIOKz/FMu5wsMgk62ulQ9AUoRvj/LpdQe uhMQWqUVmCyo5BW1qjTlvUezX00zykRUhLFvYaamgiuiFhR2uyZauJoWnaoo0X5UhHl1z3dYPYO SsmHZk2xE1D+g+2zQu5yiX/sFY7avbJYHkyAnZZpkdw4TTUFYovtgh3Oomzo54KmRmuMt0Mbugi 6A9AAkpqcuSAQ2Zw8QKQdfk1VUTikmGobUj/JVclRK1smimPpMTlS3DMFOwKl4wLEuc/ez+fSPO 81VIVGLgQS9gDL6pJlcTX93gyY1xR3NYVN17HqA1hG4CXEX0YVKne3OWGDqKpwwfta5uJU6jvvL dN82vRBcdAAq2qzwCH3aVqOmQAS67cjTsF0hjQdOetNNz4mVdnUV1mNUQUjhdWkYaEs3gqwolAx kjrg1XFcnPdH64ixPfGkxJfB7svQ1z4vCY3jWzHQhnQfsZ2QrxldCcDDBlu1ZU5E2PLY2giGjSh koFNtWG4UIkqQEw== X-Developer-Key: i=duje.mihanovic@skole.hr; a=openpgp; fpr=53DF9D4D9C3FE110FB362D789A119EB0422D96E1 X-Spam-Status: No, score=2.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS autolearn=no 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]); Fri, 06 Oct 2023 06:45:51 -0700 (PDT) X-Spam-Level: ** X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779013995595117323 X-GMAIL-MSGID: 1779013995595117323 Sharp's Spitz board still uses the legacy GPIO interface for controlling the power supply to its CF and SD card slots. Convert it to use the GPIO descriptor interface. Acked-by: Linus Walleij Reviewed-by: Bartosz Golaszewski Signed-off-by: Duje Mihanović --- arch/arm/mach-pxa/spitz.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-pxa/spitz.c b/arch/arm/mach-pxa/spitz.c index 1fb4102ea39e..8e9301cd0c93 100644 --- a/arch/arm/mach-pxa/spitz.c +++ b/arch/arm/mach-pxa/spitz.c @@ -133,6 +133,10 @@ static unsigned long spitz_pin_config[] __initdata = { * Scoop GPIO expander ******************************************************************************/ #if defined(CONFIG_SHARP_SCOOP) || defined(CONFIG_SHARP_SCOOP_MODULE) +GPIO_LOOKUP_SINGLE(spitz_card_pwr_ctrl_gpio_table, "pxa2xx-mci.0", + "sharp-scoop", SPITZ_GPIO_CF_POWER, "cf_power", + GPIO_ACTIVE_HIGH); + /* SCOOP Device #1 */ static struct resource spitz_scoop_1_resources[] = { [0] = { @@ -190,6 +194,7 @@ struct platform_device spitz_scoop_2_device = { static void __init spitz_scoop_init(void) { platform_device_register(&spitz_scoop_1_device); + gpiod_add_lookup_table(&spitz_card_pwr_ctrl_gpio_table); /* Akita doesn't have the second SCOOP chip */ if (!machine_is_akita()) @@ -201,9 +206,18 @@ static void __maybe_unused spitz_card_pwr_ctrl(uint8_t enable, uint8_t new_cpr) { unsigned short cpr; unsigned long flags; + struct gpio_desc *cf_power; + + cf_power = gpiod_get(&pxa_device_mci.dev, "cf_power", GPIOD_ASIS); + if (IS_ERR(cf_power)) { + dev_err(&pxa_device_mci.dev, + "failed to get power control GPIO with %ld\n", + PTR_ERR(cf_power)); + return; + } if (new_cpr & 0x7) { - gpio_set_value(SPITZ_GPIO_CF_POWER, 1); + gpiod_direction_output(cf_power, 1); mdelay(5); } @@ -222,8 +236,10 @@ static void __maybe_unused spitz_card_pwr_ctrl(uint8_t enable, uint8_t new_cpr) if (!(cpr & 0x7)) { mdelay(1); - gpio_set_value(SPITZ_GPIO_CF_POWER, 0); + gpiod_direction_output(cf_power, 0); } + + gpiod_put(cf_power); } #else