From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Andersson Subject: Re: [PATCH] mmc: sdhci-msm: Add support for vendor capabilities registers Date: Thu, 19 Mar 2015 08:36:28 -0700 Message-ID: References: <1426769720-18657-1-git-send-email-georgi.djakov@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from mail-la0-f41.google.com ([209.85.215.41]:35923 "EHLO mail-la0-f41.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750994AbbCSPga (ORCPT ); Thu, 19 Mar 2015 11:36:30 -0400 Received: by lamx15 with SMTP id x15so65432494lam.3 for ; Thu, 19 Mar 2015 08:36:28 -0700 (PDT) In-Reply-To: <1426769720-18657-1-git-send-email-georgi.djakov@linaro.org> Sender: linux-arm-msm-owner@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org To: Georgi Djakov Cc: Ulf Hansson , linux-mmc , "linux-kernel@vger.kernel.org" , linux-arm-msm On Thu, Mar 19, 2015 at 5:55 AM, Georgi Djakov wrote: [..] > @@ -516,6 +527,22 @@ static int sdhci_msm_probe(struct platform_device *pdev) > host_version, ((host_version & SDHCI_VENDOR_VER_MASK) >> > SDHCI_VENDOR_VER_SHIFT)); > > + core_version = readl_relaxed(msm_host->core_mem + CORE_MCI_VERSION); > + core_major = (core_version & CORE_VERSION_MAJOR_MASK) >> > + CORE_VERSION_MAJOR_SHIFT; > + core_minor = core_version & CORE_VERSION_MINOR_MASK; > + dev_dbg(&pdev->dev, "MCI Version: 0x%08x, major: 0x%04x, minor: 0x%02x\n", > + core_version, core_major, core_minor); > + > + /* > + * Support for 3v and 8bit bus-width is not advertised by some > + * controller versions and must be explicitly enabled. > + */ > + if (core_major >= 1 && core_minor != 0x11 && core_minor != 0x12) > + writel_relaxed(readl_relaxed(host->ioaddr + SDHCI_CAPABILITIES) > + | CORE_3_0V_SUPPORT | CORE_8_BIT_SUPPORT, > + host->ioaddr + CORE_VENDOR_SPEC_CAPABILITIES0); Please split this into read, modify, write statements and put braces around it. > + Does the 8916 board you have work without bumping the regulator_set_load() (previously regulator_set_optimum_mode())? None of my 8974 boards work reliably without it. Regards, Bjorn