From: John Stultz <john.stultz@linaro.org>
To: lkml <linux-kernel@vger.kernel.org>
Cc: John Stultz <john.stultz@linaro.org>,
Rob Herring <robh@kernel.org>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Kevin Hilman <khilman@kernel.org>,
Ulf Hansson <ulf.hansson@linaro.org>, Pavel Machek <pavel@ucw.cz>,
Len Brown <len.brown@intel.com>, Todd Kjos <tkjos@google.com>,
Bjorn Andersson <bjorn.andersson@linaro.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Thierry Reding <treding@nvidia.com>,
Linus Walleij <linus.walleij@linaro.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-pm@vger.kernel.org
Subject: [PATCH v4 0/6] driver core: Try to improve and cleanup driver_deferred_probe_check_state()
Date: Thu, 20 Feb 2020 05:04:34 +0000 [thread overview]
Message-ID: <20200220050440.45878-1-john.stultz@linaro.org> (raw)
This series tries to improve and cleanup the
driver_deferred_probe_check_state() code in the driver core.
This is most important for being able to support modules
dependencies which may be loaded by userland, far after
late_initcall is done. For instance, this series allows
us to use successfully various clk drivers as modules on
the db845c board. And without it, those drivers have to
be statically built in to work.
The first patch (or two) is really the most critical for me,
but as I was working to understand the code (and with some
prodding), it seemed a further cleanup was in order.
If folks have concerns about the tail end of the patch set, I'm
fine to defer that. The main issue for me is the inability to
load module dependencies after init starts.
New in v4:
* Split earlier version of the patches apart
* Defaulting deferred_probe_timeout to 30 seconds if modules
are enabled.
* Deeper cleanup on driver_deferred_probe_check_state_continue()
Feedback would be greatly appreciated!
thanks
-john
Cc: Rob Herring <robh@kernel.org>
Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: Kevin Hilman <khilman@kernel.org>
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: Len Brown <len.brown@intel.com>
Cc: Todd Kjos <tkjos@google.com>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Liam Girdwood <lgirdwood@gmail.com>
Cc: Mark Brown <broonie@kernel.org>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-pm@vger.kernel.org
John Stultz (6):
driver core: Fix driver_deferred_probe_check_state() logic
driver core: Set deferred_probe_timeout to a longer default if
CONFIG_MODULES is set
pinctrl: Remove use of driver_deferred_probe_check_state_continue()
driver core: Remove driver_deferred_probe_check_state_continue()
driver core: Rename deferred_probe_timeout and make it global
regulator: Use driver_deferred_probe_timeout for
regulator_init_complete_work
drivers/base/dd.c | 78 ++++++++++++-----------------------
drivers/pinctrl/devicetree.c | 9 ++--
drivers/regulator/core.c | 25 ++++++-----
include/linux/device/driver.h | 2 +-
4 files changed, 47 insertions(+), 67 deletions(-)
--
2.17.1
next reply other threads:[~2020-02-20 5:04 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-20 5:04 John Stultz [this message]
2020-02-20 5:04 ` [PATCH v4 1/6] driver core: Fix driver_deferred_probe_check_state() logic John Stultz
2020-02-20 10:28 ` Rafael J. Wysocki
2020-02-20 15:55 ` Bjorn Andersson
2020-02-20 23:40 ` Pavel Machek
2020-02-20 23:42 ` John Stultz
2020-02-20 5:04 ` [PATCH v4 2/6] driver core: Set deferred_probe_timeout to a longer default if CONFIG_MODULES is set John Stultz
2020-02-20 10:36 ` Rafael J. Wysocki
2020-02-20 15:55 ` Bjorn Andersson
2020-02-20 5:04 ` [PATCH v4 3/6] pinctrl: Remove use of driver_deferred_probe_check_state_continue() John Stultz
2020-02-21 15:21 ` Linus Walleij
2020-02-21 17:19 ` John Stultz
2020-02-20 5:04 ` [PATCH v4 4/6] driver core: Remove driver_deferred_probe_check_state_continue() John Stultz
2020-02-20 10:38 ` Rafael J. Wysocki
2020-02-20 15:59 ` Bjorn Andersson
2020-02-20 5:04 ` [PATCH v4 5/6] driver core: Rename deferred_probe_timeout and make it global John Stultz
2020-02-20 10:42 ` Rafael J. Wysocki
2020-02-20 16:00 ` Bjorn Andersson
2020-02-20 5:04 ` [PATCH v4 6/6] regulator: Use driver_deferred_probe_timeout for regulator_init_complete_work John Stultz
2020-02-20 16:05 ` Bjorn Andersson
2020-02-20 10:15 ` [PATCH v4 0/6] driver core: Try to improve and cleanup driver_deferred_probe_check_state() Rafael J. Wysocki
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=20200220050440.45878-1-john.stultz@linaro.org \
--to=john.stultz@linaro.org \
--cc=bjorn.andersson@linaro.org \
--cc=broonie@kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=khilman@kernel.org \
--cc=len.brown@intel.com \
--cc=lgirdwood@gmail.com \
--cc=linus.walleij@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=pavel@ucw.cz \
--cc=rjw@rjwysocki.net \
--cc=robh@kernel.org \
--cc=tkjos@google.com \
--cc=treding@nvidia.com \
--cc=ulf.hansson@linaro.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).