Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 00063C74A44 for ; Tue, 14 Mar 2023 08:33:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230096AbjCNIdj (ORCPT ); Tue, 14 Mar 2023 04:33:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35554 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229985AbjCNIdb (ORCPT ); Tue, 14 Mar 2023 04:33:31 -0400 Received: from smtp1-g21.free.fr (smtp1-g21.free.fr [IPv6:2a01:e0c:1:1599::10]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 325F966D20; Tue, 14 Mar 2023 01:33:21 -0700 (PDT) Received: from [IPV6:2a02:8428:2a4:1a01:c8ce:acb0:d46a:bb07] (unknown [IPv6:2a02:8428:2a4:1a01:c8ce:acb0:d46a:bb07]) (Authenticated sender: marc.w.gonzalez@free.fr) by smtp1-g21.free.fr (Postfix) with ESMTPSA id 3676EB00533; Tue, 14 Mar 2023 09:32:59 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=free.fr; s=smtp-20201208; t=1678782799; bh=Ms5HTA7QDNPpqzZvsQWSXGmuu1voZkWyx1MDWTcX1TI=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=q9yhY39yy3GP7n1b1+3twRVjyUGxgpcKqfYi1wDlGsLxtA32QzEMqpkGdN937d1rS HjeCWnG4EdWb1xzqq0UV1VXMmQC4jQZuWoXAE6NTubxE9W0MiJQ7p8OdT38Ppt6/WH oiF/rulUX0/zDT0o1qgMKyAhuAPR78yw58g4havbyrlseTMoAZlEZfZz7fduE0zchj jq1S+7YE4bfYD4Vp4RGPlnO7T0GM8S70M78yepZ4iJMSTgoZqls+Mw27R8X8SZZRoc 9hiupSmIp8oBww75V698MgBzcFkeoIVLusmbeDRNBlmeAEmTR+6Cwm+M7vEFPGDc7E 3aOQn/xuL8Lxw== Message-ID: Date: Tue, 14 Mar 2023 09:32:58 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Subject: Re: [RFC PATCH] brcmfmac: add 43751 SDIO ids and initialization Content-Language: fr, en-US To: Ulf Hansson Cc: Martin Blumenstingl , Neil Armstrong , Arend van Spriel , Franky Lin , Hante Meuleman , Kalle Valo , Eric Dumazet , Pieter-Paul Giesberts , Alexander Prutskov , Joseph chuang , Kevin Hilman , Jerome Brunet , Angus Ainslie , Pierre-Hugues Husson , linux-wireless@vger.kernel.org, linux-mmc@vger.kernel.org, linux-amlogic@lists.infradead.org References: <05977cbb-8a8f-0a67-b4bd-b265dbb83280@free.fr> <895a3812-e490-cc40-0f8e-a88e166e8f24@linaro.org> <13676dcc-944f-cf3d-8adf-ee3d4e8fa699@free.fr> <0450e34e-7190-104c-832a-150f15f7c825@free.fr> <3d91a067-c9c3-6d71-11a7-1289ea67f109@free.fr> <6ac1ecb1-eba4-b0a3-579c-afcbe532a474@free.fr> From: Marc Gonzalez In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org On 14/03/2023 08:27, Ulf Hansson wrote: > On Mon, 13 Mar 2023 at 22:42, Marc Gonzalez wrote: >> >> On 13/03/2023 21:04, Martin Blumenstingl wrote: >> >>> On Mon, Mar 13, 2023 at 6:09 PM Marc Gonzalez wrote: >>> [...] >>>> QUESTION: >>>> It's not clear to me why we sleep twice for host->ios.power_delay_ms? >>> >>> I'm not sure but I think host->ios.power_delay_ms is independent from >>> the post-power-on-delay-ms property of "mmc-pwrseq-simple". >> >> They are distinct indeed (the props have the same name & similar purpose though). > > Correct. > >> >> host->ios.power_delay_ms is set via: >> >> drivers/mmc/core/host.c: device_property_read_u32(dev, "post-power-on-delay-ms", > > This is a property that may be specified in the host's OF node. See > Documentation/devicetree/bindings/mmc/mmc-controller.yaml. > >> drivers/mmc/core/host.c- &host->ios.power_delay_ms); > > Note that the default value is set to 10 ms, in mmc_alloc_host(). So, > if you need a different value, that can be specified in DT. > >> >> >> pwrseq->post_power_on_delay_ms is set via: >> >> drivers/mmc/core/pwrseq_simple.c: device_property_read_u32(dev, "post-power-on-delay-ms", > > This is a property that may be specified in the pwrseq OF node. See > Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.yaml. > >> drivers/mmc/core/pwrseq_simple.c- &pwrseq->post_power_on_delay_ms); >> >> >> However, they are both used to delay mmc_power_up(), >> and the host delay is used to sleep twice, which I >> found confusing ;) > > It's certainly a bit hairy to follow, but I think you have understood > things correctly. > >> >> Regards >> > > Looks like you are getting closer to the solution, at least for the > first step to make sure the SDIO card is getting detected properly. > Nice! What I'm confused about is: Why would I specify the delay in the host rather than in the pwrseq? I'll have to study mmc_power_up() a bit more ;) Regards