From patchwork Wed Oct 11 13:23:47 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: 151427 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2908:b0:403:3b70:6f57 with SMTP id ib8csp537527vqb; Wed, 11 Oct 2023 06:24:57 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEi9Zzeq3+RVjBBlfYYOBQ2kMrxVSc3MyjK1jsHXojPvuRVEN1jgRe0k7IwbWlCtVeBJa5O X-Received: by 2002:a92:d1d0:0:b0:351:54db:c1bc with SMTP id u16-20020a92d1d0000000b0035154dbc1bcmr19776230ilg.0.1697030697343; Wed, 11 Oct 2023 06:24:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697030697; cv=none; d=google.com; s=arc-20160816; b=Dv2/jZiginDQG+BtCeCmuC0y5fvyumNWvQVX/LwWrM7yS3ecGe2V4PfOPQLkLIhpg7 Mm1ji1ngZj8ukuvZnmfnBtW828Kf4Px0zb2VFSpvZk6xWunguMPkJHGfugaoKfJ/jTE5 9/msIXd+Ybqw994Bx/L/1zelYDuoQoS7C/zowy/h2OoszKytMVXR1WEVsnUtXwQgBOWo 7f75dcz3zocQRg5p8P96WB2GHDwBvcK1Pz1wh13XD3u8oAN1phCr6mTuSdcsZtQ+gyYJ H1cVmW1rZ/UeDrunMwWVQ5E//hQ3Hz63u+0NO5NRRUggLqAp2YyiMnoQaxCDHNMcb4OP 8ZAw== 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=LlQcGebVtkHTm0MG7RZ8eoanXf2KsF7O+jqtzTlTqYM=; fh=1i6b6fQBnaiq0xRa3ncF4yVLO4LQ/VVJhygl9h24PAo=; b=pgOBB03BaVijnn0FR84dc+W94fpssrE5UbIU8EefVUTcN1eRtYcGfCliZRDsHLkYhH WKbl5ygvGwb8d9Q/+rqPpKl9SxTcCWBS075qwp+5FkdozvHMdwr7nil+eAoyk1WWEY/7 j6O/gJGtBQNbZK2mzWr0ie58KaRbIG9CHCC/RtOxbt8pURU7b2kMu8Aq2xA3Xo44n19Y s8XPbrLjdtmjxY/r8X17AZ6TmzsUJ7BYGZyHCkFpFWerlhFJQ4HENlsWzHrg7fXq0iE+ 7A8bJNIK07IjxaFkYSCTNaWBG8eE9ywXW8J71S05A5ume6HK2dBsp/j3KD2ZdTdzqj4+ jFcw== 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:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id m1-20020a633f01000000b00585a5e3039esi14280649pga.113.2023.10.11.06.24.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Oct 2023 06:24:57 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 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 lipwig.vger.email (Postfix) with ESMTP id 897868246E2D; Wed, 11 Oct 2023 06:24:29 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235017AbjJKNYN (ORCPT + 18 others); Wed, 11 Oct 2023 09:24:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57298 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232078AbjJKNYI (ORCPT ); Wed, 11 Oct 2023 09:24:08 -0400 Received: from mx.skole.hr (mx2.hosting.skole.hr [161.53.165.186]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 98996A4; Wed, 11 Oct 2023 06:24:06 -0700 (PDT) Received: from mx2.hosting.skole.hr (localhost.localdomain [127.0.0.1]) by mx.skole.hr (mx.skole.hr) with ESMTP id 2658885146; Wed, 11 Oct 2023 15:24:05 +0200 (CEST) From: =?utf-8?q?Duje_Mihanovi=C4=87?= Date: Wed, 11 Oct 2023 15:23:47 +0200 Subject: [PATCH RFT v8 3/6] ARM: pxa: Convert Spitz CF power control to GPIO descriptors MIME-Version: 1.0 Message-Id: <20231011-pxa-gpio-v8-3-eed08a0fcac8@skole.hr> References: <20231011-pxa-gpio-v8-0-eed08a0fcac8@skole.hr> In-Reply-To: <20231011-pxa-gpio-v8-0-eed08a0fcac8@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=QkQSsJ3TQ9II/e/Z5DOmYaA3FrtfclofZ2z7+nUbYbI=; b=owEBbQKS/ZANAwAIAZoRnrBCLZbhAcsmYgBlJqHoTXopvysPGlJcQLoFxSRfmSwVbMUydhtn/ LcfAUKXhiaJAjMEAAEIAB0WIQRT351NnD/hEPs2LXiaEZ6wQi2W4QUCZSah6AAKCRCaEZ6wQi2W 4aSQD/9SqnOQKvrhvxn9UtSJ9kIRdMBpf3IHXJGT7ZCC9YIJ3OFZiNdmI9O0mLfZj6ReHi7I1gq zpwPuh+YeV50cJrDh+/qAEumNVV3ngsDXPuxwEp5s8r3vYpCwDkzfjzxC/288zpoyaI6CaGnLlV bueospfCU36hguvtPCwJFjRQ4Yp3fIEwMvKCAfWA00cZbHCDtc7ovnJhaYc7iKbp1XP+bCh+dJw pnl8h+tfT4+a9AdkPaB9iT3W6nZ2OoZxQninyVFln6TW1IKq15wID0iqRxt+7RfD7/UcAgwNUYv Wp0O7eMzxrS+2gNUItvoBwFpIemnjBcs5dbUX42+pDLg4sRm/cOlqm1LM9ZgoKOGfby6v5Z7Ng4 e91+Qz5IwnfOkxlABdiYDgeR9EW5lEAz0cdgUGVEuQmMNTZ68EcDkXHjeHe1auGf0Nm0Sjnqx2Z r3t2PTWM3D/AQsqBafoxWXt9RwalXb9sMT/BTfV2OvZmZvoK4sd/T2K/RmqyKrhoROXpKtYVWCg 2xBVNXGH8vWI80TU/1vDelOiqV4rpl98Cj2XMybGiKD6HcvEuS+PnwuadchgPalWj56pMYJI8qj vrTzz5drFeiOoNgF9WVYPRHudrr19lD8/YKAPO1/cZYXqiqNGUjjtpSAUOWThLpp9hSQ6wnVCLZ RrXl2+on9ckUqJA== 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 lipwig.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 (lipwig.vger.email [0.0.0.0]); Wed, 11 Oct 2023 06:24:29 -0700 (PDT) X-Spam-Level: ** X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1779465660151171464 X-GMAIL-MSGID: 1779465660151171464 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 9efd603c715a..b72c2916426a 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