From: Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
To: Keerthy <j-keerthy-l0cyMroinI0@public.gmane.org>
Cc: tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org,
robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
nm-l0cyMroinI0@public.gmane.org,
t-kristo-l0cyMroinI0@public.gmane.org
Subject: Re: [PATCH 2/4] mfd: palmas: Reset the POWERHOLD mux during power off
Date: Wed, 9 Nov 2016 16:14:19 +0000 [thread overview]
Message-ID: <20161109161419.GJ13127@dell> (raw)
In-Reply-To: <1477559414-12520-3-git-send-email-j-keerthy-l0cyMroinI0@public.gmane.org>
On Thu, 27 Oct 2016, Keerthy wrote:
> 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-l0cyMroinI0@public.gmane.org>
> ---
> drivers/mfd/palmas.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c
> index 8f8bacb..8fbc5e0 100644
> --- a/drivers/mfd/palmas.c
> +++ b/drivers/mfd/palmas.c
> @@ -430,10 +430,28 @@ static void palmas_power_off(void)
> {
> unsigned int addr;
> int ret, slave;
> + struct device_node *node;
> + bool override_powerhold;
>
> if (!palmas_dev)
Can this happen?
> return;
>
> + node = palmas_dev->dev->of_node;
Just do:
struct device_node *np = palmas_dev->dev->of_node;
> + override_powerhold = of_property_read_bool(node,
> + "ti,palmas-override-powerhold");
Break the line after the '=' instead.
> + if (override_powerhold) {
if (of_property_read_bool(node, "ti,palmas-override-powerhold"))
Then remove '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)
> + pr_err("%s: Unable to write PALMAS_PRIMARY_SECONDARY_PAD2 %d\n",
> + __func__, ret);
Don't use __func__ in live code.
And use dev_err();
> + }
> +
> slave = PALMAS_BASE_TO_SLAVE(PALMAS_PMU_CONTROL_BASE);
> addr = PALMAS_BASE_TO_REG(PALMAS_PMU_CONTROL_BASE, PALMAS_DEV_CTRL);
>
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: Lee Jones <lee.jones@linaro.org>
To: Keerthy <j-keerthy@ti.com>
Cc: tony@atomide.com, robh+dt@kernel.org, linux-omap@vger.kernel.org,
linux-kernel@vger.kernel.org, devicetree@vger.kernel.org,
linux-gpio@vger.kernel.org, nm@ti.com, t-kristo@ti.com
Subject: Re: [PATCH 2/4] mfd: palmas: Reset the POWERHOLD mux during power off
Date: Wed, 9 Nov 2016 16:14:19 +0000 [thread overview]
Message-ID: <20161109161419.GJ13127@dell> (raw)
In-Reply-To: <1477559414-12520-3-git-send-email-j-keerthy@ti.com>
On Thu, 27 Oct 2016, Keerthy wrote:
> 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>
> ---
> drivers/mfd/palmas.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c
> index 8f8bacb..8fbc5e0 100644
> --- a/drivers/mfd/palmas.c
> +++ b/drivers/mfd/palmas.c
> @@ -430,10 +430,28 @@ static void palmas_power_off(void)
> {
> unsigned int addr;
> int ret, slave;
> + struct device_node *node;
> + bool override_powerhold;
>
> if (!palmas_dev)
Can this happen?
> return;
>
> + node = palmas_dev->dev->of_node;
Just do:
struct device_node *np = palmas_dev->dev->of_node;
> + override_powerhold = of_property_read_bool(node,
> + "ti,palmas-override-powerhold");
Break the line after the '=' instead.
> + if (override_powerhold) {
if (of_property_read_bool(node, "ti,palmas-override-powerhold"))
Then remove '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)
> + pr_err("%s: Unable to write PALMAS_PRIMARY_SECONDARY_PAD2 %d\n",
> + __func__, ret);
Don't use __func__ in live code.
And use dev_err();
> + }
> +
> slave = PALMAS_BASE_TO_SLAVE(PALMAS_PMU_CONTROL_BASE);
> addr = PALMAS_BASE_TO_REG(PALMAS_PMU_CONTROL_BASE, PALMAS_DEV_CTRL);
>
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2016-11-09 16:14 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-27 9:10 [PATCH 0/4] mfd: palmas: add powerhold overriding during power off Keerthy
2016-10-27 9:10 ` [PATCH 1/4] Documentation: pinctrl: palmas: Add ti,palmas-powerhold-override property definition Keerthy
2016-11-09 16:10 ` Lee Jones
2016-11-10 4:11 ` Keerthy
2016-11-10 4:11 ` Keerthy
2016-10-27 9:10 ` [PATCH 2/4] mfd: palmas: Reset the POWERHOLD mux during power off Keerthy
[not found] ` <1477559414-12520-3-git-send-email-j-keerthy-l0cyMroinI0@public.gmane.org>
2016-11-09 16:14 ` Lee Jones [this message]
2016-11-09 16:14 ` Lee Jones
2016-11-10 4:18 ` Keerthy
2016-11-10 4:18 ` Keerthy
2016-10-27 9:10 ` [PATCH 3/4] arm: dts: am57xx-beagle-x15-common: Add overide powerhold property Keerthy
[not found] ` <1477559414-12520-1-git-send-email-j-keerthy-l0cyMroinI0@public.gmane.org>
2016-10-27 9:10 ` [PATCH 4/4] arm: dts: am57xx-idk-common: " Keerthy
2016-10-27 9:10 ` Keerthy
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161109161419.GJ13127@dell \
--to=lee.jones-qsej5fyqhm4dnm+yrofe0a@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=j-keerthy-l0cyMroinI0@public.gmane.org \
--cc=linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=nm-l0cyMroinI0@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=t-kristo-l0cyMroinI0@public.gmane.org \
--cc=tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.