Re: [PATCH 2/4] mfd: max77686: Use module_i2c_driver() instead of subsys initcall
From: Krzysztof Kozlowski
Date: Mon Feb 15 2016 - 01:55:00 EST
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@xxxxxxxxxxxxxxx>
> ---
>
> 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".
My fast tests of this patch shown that it works good... but some more
thorough tests should be done.
Best regards,
Krzysztof