From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tony Lindgren Subject: Re: [PATCH 0/2] OMAP: fix boot sequence Date: Tue, 23 Apr 2013 10:34:42 -0700 Message-ID: <20130423173442.GF10155@atomide.com> References: <1366723151-23209-1-git-send-email-grygorii.strashko@ti.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <1366723151-23209-1-git-send-email-grygorii.strashko-l0cyMroinI0@public.gmane.org> Sender: linux-i2c-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Grygorii Strashko Cc: Samuel Ortiz , Wolfram Sang , "Ben Dooks (embedded platforms)" , Santosh Shilimkar , linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-i2c@vger.kernel.org * Grygorii Strashko [130423 06:25]: > Hi > > There are two public discussions now related to OMAP boot and drivers > initialization issues: > "Multiple issues with omap4 panda es in linux next" > http://www.spinics.net/lists/linux-omap/msg90241.html > "[BUG] omap: mfd/regulator: twl/core: init order" > http://www.spinics.net/lists/linux-omap/msg89980.html > > In both cases there are pinctrl-single/I2C/MFD/Regulators initailization issue: > - regulators are not initialized because of twl, > - twl is not initialized because of I2C, > - I2C is not initialized because of pinctrl-single, > - pinctrl-single is initialized at mudule/device init time. > So, most everything will be shifted at late_initcall time. > > This may cause boot delay (more over, it can broken initialization of drivers > which are not ready to use deferred probe mechanism yet, for example DSS). > > Introduced pathes shift I2C and TWL iniialization to module/device init layer > instead of subsys init layer where initialization dependencies resolved > indirectly in drivers/Makefile now. > > Grygorii Strashko (2): > i2c: omap: convert to module_platform_driver() > mfd: twl-core: convert to module_i2c_driver() > > drivers/i2c/busses/i2c-omap.c | 14 +------------- > drivers/mfd/twl-core.c | 12 +----------- > 2 files changed, 2 insertions(+), 24 deletions(-) Thanks, I have few questions: 1. It seems that the real fix to the issues we're seeing is to make the broken drivers to support -EPROBE_DEFER? 2. If so, can these be merged later on as clean-up? 3. Can these two patches be merged separately without breaking things? Regards, Tony