lkml.org 
[lkml]   [2018]   [Mar]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 084/177] mfd: palmas: Reset the POWERHOLD mux during power off
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Keerthy <j-keerthy@ti.com>


    [ Upstream commit 85fdaf8eb9bbec1f0f8a52fd5d85659d60738816 ]

    POWERHOLD signal has higher priority over the DEV_ON bit.
    So power off will not happen if the POWERHOLD is held high.
    Hence reset the MUX to GPIO_7 mode to release the POWERHOLD
    and the DEV_ON bit to take effect to power off the PMIC.

    PMIC Power off happens in dire situations like thermal shutdown
    so irrespective of the POWERHOLD setting go ahead and turn off
    the powerhold. Currently poweroff is broken on boards that have
    powerhold enabled. This fixes poweroff on those boards.

    Signed-off-by: Keerthy <j-keerthy@ti.com>
    Signed-off-by: Lee Jones <lee.jones@linaro.org>
    Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/mfd/palmas.c | 14 ++++++++++++++
    1 file changed, 14 insertions(+)

    --- a/drivers/mfd/palmas.c
    +++ b/drivers/mfd/palmas.c
    @@ -430,6 +430,20 @@ static void palmas_power_off(void)
    {
    unsigned int addr;
    int ret, slave;
    + struct device_node *np = palmas_dev->dev->of_node;
    +
    + if (of_property_read_bool(np, "ti,palmas-override-powerhold")) {
    + addr = PALMAS_BASE_TO_REG(PALMAS_PU_PD_OD_BASE,
    + PALMAS_PRIMARY_SECONDARY_PAD2);
    + slave = PALMAS_BASE_TO_SLAVE(PALMAS_PU_PD_OD_BASE);
    +
    + ret = regmap_update_bits(palmas_dev->regmap[slave], addr,
    + PALMAS_PRIMARY_SECONDARY_PAD2_GPIO_7_MASK, 0);
    + if (ret)
    + dev_err(palmas_dev->dev,
    + "Unable to write PRIMARY_SECONDARY_PAD2 %d\n",
    + ret);
    + }

    if (!palmas_dev)
    return;

    \
     
     \ /
      Last update: 2018-03-23 12:24    [W:4.893 / U:0.100 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site