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-boun...@yoctoproject.org 
[mailto:meta-intel-boun...@yoctoproject.org] On Behalf Of Francesco Camarda 
(fcamarda)
Sent: Tuesday, August 8, 2017 6:24 PM
To: meta-intel@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


-- 
_______________________________________________
meta-intel mailing list
meta-intel@yoctoproject.org
https://lists.yoctoproject.org/listinfo/meta-intel

Reply via email to