summaryrefslogtreecommitdiffstats
path: root/include/dm
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-07-23 06:55:23 -0600
committerSimon Glass <sjg@chromium.org>2014-07-23 14:08:37 +0100
commitbb58503d80808b973950ca425c7fb0bc6172a2bd (patch)
tree17b2a394ddedda9e0b3096447522a2f56f30493e /include/dm
parent9b0ba067f96c2bbd4bcdf0128906877271eab548 (diff)
downloadtalos-obmc-uboot-bb58503d80808b973950ca425c7fb0bc6172a2bd.tar.gz
talos-obmc-uboot-bb58503d80808b973950ca425c7fb0bc6172a2bd.zip
dm: Add dm_scan_other() to locate board-specific devices
Some boards will have devices which are not in the device tree and do not have platform data. They may be programnatically created, for example. Add a hook which boards can use to bind those devices early in boot. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/dm')
-rw-r--r--include/dm/root.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/dm/root.h b/include/dm/root.h
index 33f951b0cc..c7f0c1d5ca 100644
--- a/include/dm/root.h
+++ b/include/dm/root.h
@@ -62,6 +62,19 @@ int dm_scan_fdt_node(struct udevice *parent, const void *blob, int offset,
bool pre_reloc_only);
/**
+ * dm_scan_other() - Scan for other devices
+ *
+ * Some devices may not be visible to Driver Model. This weak function can
+ * be provided by boards which wish to create their own devices
+ * programmaticaly. They should do this by calling device_bind() on each
+ * device.
+ *
+ * @pre_reloc_only: If true, bind only drivers with the DM_FLAG_PRE_RELOC
+ * flag. If false bind all drivers.
+ */
+int dm_scan_other(bool pre_reloc_only);
+
+/**
* dm_init_and_scan() - Initialise Driver Model structures and scan for devices
*
* This function initialises the roots of the driver tree and uclass trees,
OpenPOWER on IntegriCloud