Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp1319970pxt; Sat, 7 Aug 2021 07:14:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz+wichdYjmOsjFwwnCA3czfXRetBYVxIYuyX9npaPrFqoC2gTZUkDbOPb+c4r/RXA9NJRR X-Received: by 2002:a6b:ea0b:: with SMTP id m11mr280773ioc.186.1628345661462; Sat, 07 Aug 2021 07:14:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628345661; cv=none; d=google.com; s=arc-20160816; b=rzEpVHcBw3gOzSXxSb4NnOqtXeq4bKdGjUztDGf8rRV15FzskdhE8PC1wPjEujyIWI sX70tcH1XBBxjTfLevFxz+gjeMQO7y6l0u3x5mTf7ANImADyIzB0MArSRenzAYfoQS3Y sDTaV0e0oz5lpaKFRY3WiHjuxWpUH6naMxatweMgKVsuJQ0GDS6iOfWmFF+Suh1yEvlh qZbggdFdxG8/bYZuJXrzSWV5Xfwi2PzWwGNPcSK2hdhFVdM0dZFRx/swGMwae7x5CQes VLBntuit6VcoUDofjJerGYHROY0qT+ckrUG3brC3hNohWfO/KhME09lNETK3wyJESu2u 4kcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=nKoQAhM7i9jAjsu2Z7mxws/iOs9A7YSPA2lIdBR3+6I=; b=AVNSg1IbKWY+fOW/cCtV2Kb/bVMw1/zUgHqlWFSyurWvq0zg0xeXnoNyvz6Ai2kgwu y+bLCbCjlfbzPnn01cTjdWVwy16Xp6Dl7ZCjzJvDJ4HABDXY5G2ZxtNnbof6A7+6IuP3 sorBswekU2TDt5jDLWwG6Gtix0gniu6xRhC1xN72CccooXpsPUloLFM3vug/HL54yn0J gCrKaUwoL20SHfF0ipykuxkbd1ZdYaNYvN2bzbIet8CqjkMURbXP7RynMrmAkNQnKh61 1CMVmjAlLXMuGa7XR+fSEtvqzx2GyJBLLkMkULg5vRDuyz83euSuqe0pFFesHpY0S4ar vtOA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@rere.qmqm.pl header.s=1 header.b=l5hp8JWx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=rere.qmqm.pl Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r3si12228024jan.7.2021.08.07.07.14.10; Sat, 07 Aug 2021 07:14:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@rere.qmqm.pl header.s=1 header.b=l5hp8JWx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=rere.qmqm.pl Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232357AbhHGONO (ORCPT + 99 others); Sat, 7 Aug 2021 10:13:14 -0400 Received: from rere.qmqm.pl ([91.227.64.183]:49321 "EHLO rere.qmqm.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232313AbhHGONN (ORCPT ); Sat, 7 Aug 2021 10:13:13 -0400 Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 4Ghkny2kDXz64; Sat, 7 Aug 2021 16:12:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1628345574; bh=n9RHvgmwO10yV+8X1TQ8vGLq8GhTf/p7Tzeh2jxUSzc=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=l5hp8JWxEvD+QSJfDmhc0TLdpdonbMHTGAAMYpnzH/O8IavaORIg1Zpz7rkxty5UO nvWUbX0J7+xQFDdW8z32zbu6kMYHS87IBY6oJrEx9jHIPf9wgM4gAVcBHnG39n7Bt/ HGPK+CkYn89939fqjZs21QjlKzkYDUG7EEzwP8xvVCxxuYHvukcV+VfCpsJDs98mIh jCw9/eb3RUSquX+O7YfroCVx1X49Lcw7F1lyGmchLMa0ywoCCuH7GqBLCf6Z9rcQGC EQXwmzrAGwEuBgI1sWd185MdOlRwLgSyJ+egBOad3RuQ7JUVYxwd5lBMZ+y/IRGGke gZa1T+12AhOPA== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.2 at mail Date: Sat, 7 Aug 2021 16:12:52 +0200 From: =?iso-8859-2?Q?Micha=B3_Miros=B3aw?= To: Adrian Hunter Cc: Michal Simek , Kevin Liu , Suneel Garapati , Ulf Hansson , linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, Al Cooper Subject: Re: [PATCH v4 4/5] mmc: sdhci: move SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN frequency limit Message-ID: References: <2cdb95f3-8943-715a-d3d7-804953e49786@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <2cdb95f3-8943-715a-d3d7-804953e49786@intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Aug 04, 2021 at 03:33:56PM +0300, Adrian Hunter wrote: > On 25/07/21 12:20 pm, Micha? Miros?aw wrote: > > Push handling of clock frequency dependence for > > SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN quirk to the drivers that use it. > What is the max_clk dependency for, and why push it down? I guess this is a workaround for a hardware issue. When I wrote this, there was only a single user. Now I don't know if the second user got the limit by accident or just uses the flag not knowing it doesn't work as the quirk name suggests. IOW this makes it easier to fix in drivers if the limit is wrong or irrelevant. The dependency doesn't feel like it belongs to the generic driver anyway. [...] > > @@ -318,6 +317,9 @@ static int dwcmshc_rk3568_init(struct sdhci_host *host, struct dwcmshc_priv *dwc > > sdhci_writel(host, 0, DWCMSHC_EMMC_DLL_TXCLK); > > sdhci_writel(host, 0, DWCMSHC_EMMC_DLL_STRBIN); > > > > + if (sdhci_pltfm_clk_get_max_clock(host) <= 25000000) > > + host->quirks2 |= SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN; > > + > > return 0; > > } > > > > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > > index 0993f7d0ce8e..cfa314e659bc 100644 > > --- a/drivers/mmc/host/sdhci.c > > +++ b/drivers/mmc/host/sdhci.c > > @@ -1905,8 +1905,7 @@ u16 sdhci_calc_clk(struct sdhci_host *host, unsigned int clock, > > /* Version 3.00 divisors must be a multiple of 2. */ > > if (host->max_clk <= clock) { > > div = 1; > > - if ((host->quirks2 & SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN) > > - && host->max_clk <= 25000000) > > + if (host->quirks2 & SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN) > > div = 2; > > } else { > > for (div = 2; div < SDHCI_MAX_DIV_SPEC_300;