All of lore.kernel.org
 help / color / mirror / Atom feed
From: Javier Martinez Canillas <javier@osg.samsung.com>
To: Krzysztof Kozlowski <k.kozlowski@samsung.com>,
	linux-kernel@vger.kernel.org
Cc: Andi Shyti <andi.shyti@samsung.com>,
	linux-samsung-soc@vger.kernel.org,
	Lee Jones <lee.jones@linaro.org>,
	Laxman Dewangan <ldewangan@nvidia.com>
Subject: Re: [PATCH 2/4] mfd: max77686: Use module_i2c_driver() instead of subsys initcall
Date: Mon, 15 Feb 2016 12:21:43 -0300	[thread overview]
Message-ID: <56C1ED07.6090008@osg.samsung.com> (raw)
In-Reply-To: <56C1762E.9040208@samsung.com>

Hello Krzysztof,

On 02/15/2016 03:54 AM, Krzysztof Kozlowski wrote:
> On 12.02.2016 13:30, Javier Martinez Canillas wrote:
>> The driver's init and exit function don't do anything besides adding and
>> deleting the I2C driver so the module_i2c_driver() macro could be used.
>>
>> Currently is not being used because the driver is initialized at subsys
>> initcall level, claiming that this is done to allow consumers devices to
>> use the resources provided by this driver. But dependencies should be in
>> the DT and consumers drivers should not rely in the registration order.
>>
>> Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
>> ---
>>
>>   drivers/mfd/max77686.c | 13 +------------
>>   1 file changed, 1 insertion(+), 12 deletions(-)
>>
>
> In the past not all dependencies supported deferred probing so such
> ordering was required.
>
> I don't like the "dependencies should be in DT" reason for the change...
> because it is kind of wishful thinking. Yeah, the dependencies should be
> in DT, but are they?
>
> Instead *please check it* and write:
> "Dependencies are in DT so manual ordering of init calls is not
> necessary any more".
>

For the max77802 I know that's the case since the only two DTS in mainline
that use it are the Peach Pit and Pi and I'm very familiar with those two.

But I wonder how can I check that this is the case for the max77686. Most
DTS in mainline have nodes that use some clocks and regulators provided by
the PMIC, only arch/arm/boot/dts/exynos5250-smdk5250.dts doesn't have one
of the regulators as input supply or clock consumer defined.

For the clock, I guess the RTC is just broken since it's using the s3c6410
controller that requires a source clock and this is not defined.

Now the question is if it doesn't really need the regulators or is that
the DTS isn't correctly defined and some drivers were relying on the MFD
and regulator drivers to be registered at subsys initcall level?

> My fast tests of this patch shown that it works good... but some more
> thorough tests should be done.
>

What do you suggest? The drivers now support deferred probing but as said,
I don't know how I can be sure that drivers aren't missing input supplies
and relying in regulators being registered early and marked as always-on.
  
> Best regards,
> Krzysztof
>

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

  parent reply	other threads:[~2016-02-15 15:21 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-12  4:30 [PATCH 0/4] mfd: max77686: Allow the driver to be built as a module Javier Martinez Canillas
2016-02-12  4:30 ` [PATCH 1/4] mfd: max77686: Add max77802 to I2C device ID table Javier Martinez Canillas
2016-02-15  5:21   ` Krzysztof Kozlowski
2016-03-08  4:24   ` Lee Jones
2016-02-12  4:30 ` [PATCH 2/4] mfd: max77686: Use module_i2c_driver() instead of subsys initcall Javier Martinez Canillas
2016-02-15  6:54   ` Krzysztof Kozlowski
2016-02-15  8:21     ` Lee Jones
2016-02-15 15:21     ` Javier Martinez Canillas [this message]
2016-02-15 23:20       ` Krzysztof Kozlowski
2016-02-16 20:45         ` Javier Martinez Canillas
2016-02-17  7:49           ` Krzysztof Kozlowski
2016-02-17 18:38             ` Javier Martinez Canillas
2016-02-17  9:27         ` Marek Szyprowski
2016-02-17  9:34           ` Krzysztof Kozlowski
2016-02-12  4:30 ` [PATCH 3/4] mfd: max77686: Allow driver to be built as a module Javier Martinez Canillas
2016-03-08  4:11   ` Lee Jones
2016-02-12  4:30 ` [PATCH 4/4] mfd: max77686: Export OF module alias information Javier Martinez Canillas
2016-02-15  6:55   ` Krzysztof Kozlowski
2016-03-08  4:24   ` Lee Jones
2016-02-15  7:04 ` [PATCH 0/4] mfd: max77686: Allow the driver to be built as a module Andi Shyti

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=56C1ED07.6090008@osg.samsung.com \
    --to=javier@osg.samsung.com \
    --cc=andi.shyti@samsung.com \
    --cc=k.kozlowski@samsung.com \
    --cc=ldewangan@nvidia.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.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.