[PATCH v2 0/12] Discover and probe dependencies

From: Tomeu Vizoso
Date: Wed Jul 01 2015 - 05:42:54 EST


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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/