[meta-intel] change hostctrl2_presetvalueenable default value

Tan, Jui Nee jui.nee.tan at intel.com
Wed Sep 6 21:19:18 PDT 2017


You have to modify in the following file in the yocto build to enable preset value:

tmp/work-shared/<board>/kernel-source/drivers/mmc/host/sdhci.c

The following function does the enabling of preset value:

static void sdhci_enable_preset_value(struct sdhci_host *host, bool enable)
{
        u16 ctrl;

        /* Host Controller v3.00 defines preset value registers */
        if (host->version < SDHCI_SPEC_300)
                return;

        ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2);

        /*
         * We only enable or disable Preset Value if they are not already
         * enabled or disabled respectively. Otherwise, we bail out.
         */
        if (enable && !(ctrl & SDHCI_CTRL_PRESET_VAL_ENABLE)) {
                ctrl |= SDHCI_CTRL_PRESET_VAL_ENABLE;
                sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2);
                host->flags |= SDHCI_PV_ENABLED;
        } else if (!enable && (ctrl & SDHCI_CTRL_PRESET_VAL_ENABLE)) {
                ctrl &= ~SDHCI_CTRL_PRESET_VAL_ENABLE;
                sdhci_writew(host, ctrl, SDHCI_HOST_CONTROL2);
                host->flags &= ~SDHCI_PV_ENABLED;
        }
}

The function can be called in the following way:

sdhci_enable_preset_value(host, true);

Thanks,
Juinee

From: meta-intel-bounces at yoctoproject.org [mailto:meta-intel-bounces at yoctoproject.org] On Behalf Of Francesco Camarda (fcamarda)
Sent: Tuesday, August 8, 2017 6:24 PM
To: meta-intel at yoctoproject.org
Subject: [meta-intel] change hostctrl2_presetvalueenable default value


Hi,

>From of the Apollo Lake SoC External Design Specification (EDS) Volume 2 of 3<https://embedded.communities.intel.com/external-link.jspa?url=https%3A%2F%2Fedc.intel.com%2FLink.aspx%3Fid%3D14201> document # 557556 (on pages from 4511 to 4515) it is possible to change the driver strength that depends on the setting of bit 15 (hostctrl2_presetvalueenable).
If Preset Value Enable = 0, the driver strength is set by the host driver. If Preset Value Enable = 1, the driver strength is automatically set to the values specified in the Capabilities Register (capabilities)-Offset 40h (refer also to Capabilities Register (capabilities)-Offset 40h).



Which of the file of the build (EC31) I should modify to put the Preset Value Enable = 1?





Thanks & Regards,

Francesco


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-intel/attachments/20170907/9e2d3d68/attachment.html>


More information about the meta-intel mailing list