From: Bill Huang <bilhuang@nvidia.com>
To: Nishanth Menon <nm@ti.com>
Cc: "sameo@linux.intel.com" <sameo@linux.intel.com>,
"rob.herring@calxeda.com" <rob.herring@calxeda.com>,
"pawel.moll@arm.com" <pawel.moll@arm.com>,
"mark.rutland@arm.com" <mark.rutland@arm.com>,
"swarren@wwwdotorg.org" <swarren@wwwdotorg.org>,
"ian.campbell@citrix.com" <ian.campbell@citrix.com>,
"rob@landley.net" <rob@landley.net>,
"lee.jones@linaro.org" <lee.jones@linaro.org>,
"broonie@linaro.org" <broonie@linaro.org>,
"j-keerthy@ti.com" <j-keerthy@ti.com>,
"grant.likely@linaro.org" <grant.likely@linaro.org>,
"ian@slimlogic.co.uk" <ian@slimlogic.co.uk>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
"linux-doc@vger.kernel.org" <linux-doc@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Mallikarjun Kasoju <mkasoju@nvidia.com>
Subject: Re: [PATCH v2 1/1] mfd: palmas: Add power off control
Date: Thu, 1 Aug 2013 22:45:17 -0700 [thread overview]
Message-ID: <1375422317.32701.19.camel@bilhuang-vm1> (raw)
In-Reply-To: <20130801130857.GA3413@kahuna>
On Thu, 2013-08-01 at 21:08 +0800, Nishanth Menon wrote:
> On 04:08-20130801, Bill Huang wrote:
> > On Wed, 2013-07-31 at 19:57 +0800, Nishanth Menon wrote:
> > >
> > > If you notice the reference code I send, atleast on TWL6035/37 variants
> > > of Palmas, USB IRQ unmask is mandatory for power on with USB cable -
> > > example usage scenario: extremely low battery, device powered off, plug
> > > in usb cable to restart charging - you'd like to initiate charging logic
> > > in bootloader, but that wont work if the device does not do OFF-ON
> > > transition with usb cable plugged in for vbus.
> > >
> > Why do we need to add Palmas USB_IRQ unmask logic in shutdown? Does that
> > mean for all platform using Palmas has to unmask USB IRQ (including
> > those do not power vbus through Palmas)? Can't we just have a simple
> > shutdown function but have the VBus programming been done in USB driver
> > or maybe platform driver since it is platform specific control?
> we dont have a irq cleanup, irq handling is done in palmas-mfd. Further,
>
> Why would USB driver care about vbus supply needs in complete power off
> - it is the job of palmas driver? Further, palmas-mfd shutdown
> handler(currently missing) if probably cleansup things:
>
> mfd_remove_devices(palmas->dev);
> palmas_irq_exit(palmas);
>
> shutdown sequence becomes complicated further esp if things are
> cleanedup in shutdown (Dummy patch[1]).
>
>
> All I am saying is this: shutdown should allow powerup functionality to
> work as well, how we do that is upto us - I personally found it a little
> easier to keep the IRQ unmask in shutdown easier to deal with, but other
> options might be possible as well.
I'm not sure if I understand your comments completely (maybe due to I'm
not familiar with the mechanism of unmasking USB IRQ in Palmas driver)
but doing cleanup in each driver shutdown handler makes sense to me, if
those clean up can be done in shutdown then we can make power off
function as simple as possible and being part of Palmas mfd driver?
>
> [1]
> diff --git a/drivers/mfd/palmas.c b/drivers/mfd/palmas.c
> index e4d1c70..6998863 100644
> --- a/drivers/mfd/palmas.c
> +++ b/drivers/mfd/palmas.c
> @@ -447,6 +447,11 @@ static int palmas_i2c_remove(struct i2c_client *i2c)
> return 0;
> }
>
> +static void palmas_i2c_shutdown(struct i2c_client *i2c)
> +{
> + palmas_i2c_remove(i2c);
> +}
> +
> static const struct i2c_device_id palmas_i2c_id[] = {
> { "palmas", },
> { "twl6035", },
> @@ -464,6 +469,7 @@ static struct i2c_driver palmas_i2c_driver = {
> },
> .probe = palmas_i2c_probe,
> .remove = palmas_i2c_remove,
> + .shutdown = palmas_i2c_shutdown,
> .id_table = palmas_i2c_id,
> };
>
next prev parent reply other threads:[~2013-08-02 5:36 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-31 7:17 [PATCH v2 1/1] mfd: palmas: Add power off control Bill Huang
2013-07-31 11:57 ` Nishanth Menon
2013-07-31 17:20 ` Stephen Warren
2013-07-31 18:31 ` Nishanth Menon
2013-08-01 11:08 ` Bill Huang
2013-08-01 13:08 ` Nishanth Menon
2013-08-02 5:45 ` Bill Huang [this message]
2013-08-02 14:39 ` Nishanth Menon
2013-08-05 10:32 ` Bill Huang
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=1375422317.32701.19.camel@bilhuang-vm1 \
--to=bilhuang@nvidia.com \
--cc=broonie@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=ian.campbell@citrix.com \
--cc=ian@slimlogic.co.uk \
--cc=j-keerthy@ti.com \
--cc=lee.jones@linaro.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mkasoju@nvidia.com \
--cc=nm@ti.com \
--cc=pawel.moll@arm.com \
--cc=rob.herring@calxeda.com \
--cc=rob@landley.net \
--cc=sameo@linux.intel.com \
--cc=swarren@wwwdotorg.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).