Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp1316708pxt; Sat, 7 Aug 2021 07:09:20 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxINusPBS5++PwSAxdbe98vqAjEPg765cfZfAyIw5woEvkXr9veX3nU8kbumqJImgPYfBiX X-Received: by 2002:a05:6e02:f91:: with SMTP id v17mr91866ilo.84.1628345360080; Sat, 07 Aug 2021 07:09:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628345360; cv=none; d=google.com; s=arc-20160816; b=ZD3gegjJBta0pLJDQGbkoq1JyyZasiebrpOH7mFclNoFn9TOd313ys31gJi1ZW1cgA 9eF9ECp1Z2ONWnPG2VaHV5N6BRQXWBEdN8769P9Hvuk8YCcXhEKqzOTY5w8rHmAH6tZw ah6FxmT0ZlQZXIi11u4cOzzS3VidB4WUzaw44G33i5ccdd6g6tB/HE5t/JXpluhGA1Rt 3T3r4TA01v0ocYgVp7mQDVNGI+jiNGUogxuAbgBOpuG3hMyJDxw7JDL2AqrdrpDT79K3 uzjwztO8FRJypc3ob+ASrQ8HhGKPdymM9EQriVCwV7Z86k1efJrYIJz/PD44DVXeM39m djlw== 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=eEcj+bbvrwMMquLFFQhV+XdrDTEK2P0C+jE3AjhC+zc=; b=jjRcsMUcb2FuIzC/UsQ7b9+GyTgwJZGUgv85q6lHHE7tSgJ7GJBhww1xqU6tZHNH8e xwziSS5gn7cCd7jpKDKYpdX025YvWvOBO1lT5/4SJw+tNd7bM9Xze7ua2fwI5GAKGScm gKuOY9OFBhQx6bsaVACW0+R2R802bq8CuOXmzXgRA6EQBtKQXe3iAmLOyykSE9KE2tpE cjTYDb13SihAQf19jmkfSiV9OllPi2AnFrnZLvxAJQYSC2lhB0hAT1IE+KhlogAP1b/4 7z42asAKCCFYUTcOCHTir7G4INhgTSrUutamV04ygQ8xNm959ZPqT/ltPbrGUCoIPcpe PjgA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@rere.qmqm.pl header.s=1 header.b=Vp2nhN8N; 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 ay16si12430427jab.96.2021.08.07.07.09.08; Sat, 07 Aug 2021 07:09:20 -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=Vp2nhN8N; 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 S232356AbhHGOIm (ORCPT + 99 others); Sat, 7 Aug 2021 10:08:42 -0400 Received: from rere.qmqm.pl ([91.227.64.183]:50665 "EHLO rere.qmqm.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232313AbhHGOIl (ORCPT ); Sat, 7 Aug 2021 10:08:41 -0400 Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 4Ghkhk51Mwz64; Sat, 7 Aug 2021 16:08:22 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1628345302; bh=UJWADItsCZvOOHDfxmRe0b1fjopiUgDTm+JjB8F5HJA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Vp2nhN8NpuDYP4uteGkUuSpkP4vv+N4DhpiyL9637M/qD3bidIMbOBrAkA7yxaIx/ bSkzz2EjtDKdnZD2m9yIBZxcDzss8R7Ic2K7vSGkM/0PrBVq8XM9nTFc6iYimaI9s7 xwarzmPzgg5tFxPWaKXjgy/EPBsoBdIzNj0gRkawIKdLLG08VazzREG9XVO3fUnE0I tN5/dRxGGiduVO71NdMgaXbokbhbvzROp9q6eCbg1FbIZpefAudK/yGwHy/9HvOc2H 7m98id/5kRlSmemIwUiqEL2cTtP/j/RFy9+nMfUMiHd7LTazgJ1gVMSpZwY4UH+Dni ihxzxnCDdLv/g== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.2 at mail Date: Sat, 7 Aug 2021 16:08:21 +0200 From: =?iso-8859-2?Q?Micha=B3_Miros=B3aw?= To: Adrian Hunter Cc: Suneel Garapati , Kevin Liu , Michal Simek , Ulf Hansson , linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org, Al Cooper Subject: Re: [PATCH v4 3/5] mmc: sdhci: fix SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN Message-ID: References: <8c03b995-f449-8f12-a4cf-8fc4978f05c7@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <8c03b995-f449-8f12-a4cf-8fc4978f05c7@intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Aug 04, 2021 at 02:06:55PM +0300, Adrian Hunter wrote: > On 25/07/21 12:20 pm, Micha? Miros?aw wrote: > > Fix returned clock rate for SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN case. > > This fixes real_div value that was calculated as 1 (meaning no division) > > instead of 2 with the quirk enabled. > > > > Cc: stable@kernel.vger.org > > Fixes: d1955c3a9a1d ("mmc: sdhci: add quirk SDHCI_QUIRK_CLOCK_DIV_ZERO_BROKEN") > > Signed-off-by: Micha? Miros?aw > > Notwithstanding comment below: > > Acked-by: Adrian Hunter [...] > > --- a/drivers/mmc/host/sdhci.c > > +++ b/drivers/mmc/host/sdhci.c > > @@ -1903,9 +1903,12 @@ u16 sdhci_calc_clk(struct sdhci_host *host, unsigned int clock, > > > > if (!host->clk_mul || switch_base_clk) { > > /* Version 3.00 divisors must be a multiple of 2. */ > > - if (host->max_clk <= clock) > > + if (host->max_clk <= clock) { > > div = 1; > > - else { > > + if ((host->quirks2 & SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN) > > + && host->max_clk <= 25000000) > > It is preferred to line break after '&&' and line up e.g. > > if ((host->quirks2 & SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN) && > host->max_clk <= 25000000) This was just old code moved, but fixed for next version. > > > > + div = 2; > > + } else { > > for (div = 2; div < SDHCI_MAX_DIV_SPEC_300; > > div += 2) { > > if ((host->max_clk / div) <= clock) > > @@ -1914,9 +1917,6 @@ u16 sdhci_calc_clk(struct sdhci_host *host, unsigned int clock, > > } > > real_div = div; > > div >>= 1; > > - if ((host->quirks2 & SDHCI_QUIRK2_CLOCK_DIV_ZERO_BROKEN) > > - && !div && host->max_clk <= 25000000) > > - div = 1; > > } > > } else { > > /* Version 2.00 divisors must be a power of 2. */ > > >