From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753820AbbGAJmr (ORCPT ); Wed, 1 Jul 2015 05:42:47 -0400 Received: from mail-wi0-f174.google.com ([209.85.212.174]:33455 "EHLO mail-wi0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753713AbbGAJma (ORCPT ); Wed, 1 Jul 2015 05:42:30 -0400 From: Tomeu Vizoso To: linux-kernel@vger.kernel.org Cc: Mark Brown , linux-acpi@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-pwm@vger.kernel.org, "Rafael J. Wysocki" , alsa-devel@alsa-project.org, Tomeu Vizoso , Alan Stern , Linus Walleij , Kumar Gala , Jean-Christophe Plagniol-Villard , Ian Campbell , Jingoo Han , Tomi Valkeinen , Pawel Moll , Greg Kroah-Hartman , Alexandre Courbot , Thierry Reding , Liam Girdwood , =?UTF-8?q?Terje=20Bergstr=C3=B6m?= , Lee Jones , linux-tegra@vger.kernel.org, Jaroslav Kysela , linux-usb@vger.kernel.org, Takashi Iwai , Stephen Warren , Rob Herring , Mark Rutland Subject: [PATCH v2 0/12] Discover and probe dependencies Date: Wed, 1 Jul 2015 11:40:55 +0200 Message-Id: <1435743667-11987-1-git-send-email-tomeu.vizoso@collabora.com> X-Mailer: git-send-email 2.4.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, this is version 2 of a series that probes devices in dependency order so as to avoid deferred probes. While deferred probing is a powerful solution that makes sure that you eventually get a working system at the end of the boot, can make it very time consuming to find out why a device didn't probe and can also introduce big delays in when a device actually probes by sending it to the end of the deferred queue. So far I have only tested on a Tegra124 Chromebook. Thanks, Tomeu Changes in v2: - Instead of delaying all probes until late_initcall, only delay matches of platform devices that have a firmware node attached. - Allow bindings implementations register a function instead of using class callbacks, as not only subsystems implement firmware bindings. - Move strends to string.h - Document that consumers of backlight devices can use the 'backlight' property to hold a phandle to the backlight device. - Allocate the list of dependencies and pass it to the function that fills it. Tomeu Vizoso (12): device: property: delay device-driver matches device: property: find dependencies of a firmware node string: Introduce strends() gpio: register dependency parser for firmware nodes gpu: host1x: register dependency parser for firmware nodes backlight: Document consumers of backlight nodes backlight: register dependency parser for firmware nodes USB: EHCI: register dependency parser for firmware nodes regulator: register dependency parser for firmware nodes pwm: register dependency parser for firmware nodes ASoC: tegra: register dependency parser for firmware nodes driver-core: probe dependencies before probing .../bindings/video/backlight/backlight.txt | 22 ++++ drivers/base/dd.c | 139 +++++++++++++++++++++ drivers/base/property.c | 120 ++++++++++++++++++ drivers/gpio/gpiolib.c | 54 ++++++++ drivers/gpu/host1x/dev.c | 26 ++++ drivers/pwm/core.c | 28 +++++ drivers/regulator/core.c | 27 ++++ drivers/usb/host/ehci-tegra.c | 16 +++ drivers/video/backlight/backlight.c | 16 +++ include/linux/fwnode.h | 5 + include/linux/property.h | 12 ++ include/linux/string.h | 13 ++ sound/soc/tegra/tegra_max98090.c | 42 ++++++- 13 files changed, 519 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/video/backlight/backlight.txt -- 2.4.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomeu Vizoso Subject: [PATCH v2 0/12] Discover and probe dependencies Date: Wed, 1 Jul 2015 11:40:55 +0200 Message-ID: <1435743667-11987-1-git-send-email-tomeu.vizoso@collabora.com> Return-path: Sender: linux-gpio-owner@vger.kernel.org To: linux-kernel@vger.kernel.org Cc: Mark Brown , linux-acpi@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-pwm@vger.kernel.org, "Rafael J. Wysocki" , alsa-devel@alsa-project.org, Tomeu Vizoso , Alan Stern , Linus Walleij , Kumar Gala , Jean-Christophe Plagniol-Villard , Ian Campbell , Jingoo Han , Tomi Valkeinen , Pawel Moll , Greg Kroah-Hartman , Alexandre Courbot , Thierry Reding , Liam Girdwood , =?UTF-8?q?Terje=20Bergstr=C3=B6m?= , Le List-Id: linux-acpi@vger.kernel.org Hi, this is version 2 of a series that probes devices in dependency order so as to avoid deferred probes. While deferred probing is a powerful solution that makes sure that you eventually get a working system at the end of the boot, can make it very time consuming to find out why a device didn't probe and can also introduce big delays in when a device actually probes by sending it to the end of the deferred queue. So far I have only tested on a Tegra124 Chromebook. Thanks, Tomeu Changes in v2: - Instead of delaying all probes until late_initcall, only delay matches of platform devices that have a firmware node attached. - Allow bindings implementations register a function instead of using class callbacks, as not only subsystems implement firmware bindings. - Move strends to string.h - Document that consumers of backlight devices can use the 'backlight' property to hold a phandle to the backlight device. - Allocate the list of dependencies and pass it to the function that fills it. Tomeu Vizoso (12): device: property: delay device-driver matches device: property: find dependencies of a firmware node string: Introduce strends() gpio: register dependency parser for firmware nodes gpu: host1x: register dependency parser for firmware nodes backlight: Document consumers of backlight nodes backlight: register dependency parser for firmware nodes USB: EHCI: register dependency parser for firmware nodes regulator: register dependency parser for firmware nodes pwm: register dependency parser for firmware nodes ASoC: tegra: register dependency parser for firmware nodes driver-core: probe dependencies before probing .../bindings/video/backlight/backlight.txt | 22 ++++ drivers/base/dd.c | 139 +++++++++++++++++++++ drivers/base/property.c | 120 ++++++++++++++++++ drivers/gpio/gpiolib.c | 54 ++++++++ drivers/gpu/host1x/dev.c | 26 ++++ drivers/pwm/core.c | 28 +++++ drivers/regulator/core.c | 27 ++++ drivers/usb/host/ehci-tegra.c | 16 +++ drivers/video/backlight/backlight.c | 16 +++ include/linux/fwnode.h | 5 + include/linux/property.h | 12 ++ include/linux/string.h | 13 ++ sound/soc/tegra/tegra_max98090.c | 42 ++++++- 13 files changed, 519 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/video/backlight/backlight.txt -- 2.4.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomeu Vizoso Date: Wed, 01 Jul 2015 09:40:55 +0000 Subject: [PATCH v2 0/12] Discover and probe dependencies Message-Id: <1435743667-11987-1-git-send-email-tomeu.vizoso@collabora.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-kernel@vger.kernel.org Cc: Mark Brown , linux-acpi@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-fbdev@vger.kernel.org, linux-gpio@vger.kernel.org, devicetree@vger.kernel.org, linux-pwm@vger.kernel.org, "Rafael J. Wysocki" , alsa-devel@alsa-project.org, Tomeu Vizoso , Alan Stern , Linus Walleij , Kumar Gala , Jean-Christophe Plagniol-Villard , Ian Campbell , Jingoo Han , Tomi Valkeinen , Pawel Moll , Greg Kroah-Hartman , Alexandre Courbot , Thierry Reding , Liam Girdwood , =?UTF-8?q?Terje=20Bergstr=C3=B6m?= , Le Hi, this is version 2 of a series that probes devices in dependency order so as to avoid deferred probes. While deferred probing is a powerful solution that makes sure that you eventually get a working system at the end of the boot, can make it very time consuming to find out why a device didn't probe and can also introduce big delays in when a device actually probes by sending it to the end of the deferred queue. So far I have only tested on a Tegra124 Chromebook. Thanks, Tomeu Changes in v2: - Instead of delaying all probes until late_initcall, only delay matches of platform devices that have a firmware node attached. - Allow bindings implementations register a function instead of using class callbacks, as not only subsystems implement firmware bindings. - Move strends to string.h - Document that consumers of backlight devices can use the 'backlight' property to hold a phandle to the backlight device. - Allocate the list of dependencies and pass it to the function that fills it. Tomeu Vizoso (12): device: property: delay device-driver matches device: property: find dependencies of a firmware node string: Introduce strends() gpio: register dependency parser for firmware nodes gpu: host1x: register dependency parser for firmware nodes backlight: Document consumers of backlight nodes backlight: register dependency parser for firmware nodes USB: EHCI: register dependency parser for firmware nodes regulator: register dependency parser for firmware nodes pwm: register dependency parser for firmware nodes ASoC: tegra: register dependency parser for firmware nodes driver-core: probe dependencies before probing .../bindings/video/backlight/backlight.txt | 22 ++++ drivers/base/dd.c | 139 +++++++++++++++++++++ drivers/base/property.c | 120 ++++++++++++++++++ drivers/gpio/gpiolib.c | 54 ++++++++ drivers/gpu/host1x/dev.c | 26 ++++ drivers/pwm/core.c | 28 +++++ drivers/regulator/core.c | 27 ++++ drivers/usb/host/ehci-tegra.c | 16 +++ drivers/video/backlight/backlight.c | 16 +++ include/linux/fwnode.h | 5 + include/linux/property.h | 12 ++ include/linux/string.h | 13 ++ sound/soc/tegra/tegra_max98090.c | 42 ++++++- 13 files changed, 519 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/video/backlight/backlight.txt -- 2.4.1