summaryrefslogtreecommitdiffstats
path: root/include/dm
diff options
context:
space:
mode:
authorJean-Jacques Hiblot <jjhiblot@ti.com>2018-12-07 14:50:39 +0100
committerHeiko Schocher <hs@denx.de>2018-12-10 06:05:32 +0100
commit3542ff29e4542b8cb0ac3ae861247e9bd487f22f (patch)
treec367a4fefd555225d5be719f2cd12e564b4592ad /include/dm
parentf32a8007ef0fcc1a8f27e0cb444f6861163b03f6 (diff)
downloadu-boot-3542ff29e4542b8cb0ac3ae861247e9bd487f22f.tar.gz
u-boot-3542ff29e4542b8cb0ac3ae861247e9bd487f22f.tar.xz
u-boot-3542ff29e4542b8cb0ac3ae861247e9bd487f22f.zip
dm: device: Allow using uclass_find_device_by_seq() without OF_CONTROL
If OF_CONTROL is not enabled and DM_SEQ_ALIAS is enabled, we must assign an alias (requested sequence number) to devices that belongs to a class with the DM_UC_FLAG_SEQ_ALIAS flag. Otherwise uclass_find_device_by_seq() cannot be used to get/probe a device. In particular i2c_get_chip_for_busnum() cannot be used. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de>
Diffstat (limited to 'include/dm')
-rw-r--r--include/dm/uclass-internal.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/dm/uclass-internal.h b/include/dm/uclass-internal.h
index 8a4839ee88..6977995246 100644
--- a/include/dm/uclass-internal.h
+++ b/include/dm/uclass-internal.h
@@ -12,6 +12,19 @@
#include <dm/ofnode.h>
/**
+ * uclass_find_next_free_req_seq() - Get the next free req_seq number
+ *
+ * This returns the next free req_seq number. This is useful only if
+ * OF_CONTROL is not used. The next free req_seq number is simply the
+ * maximum req_seq of the uclass + 1.
+ * This allows assiging req_seq number in the binding order.
+ *
+ * @id: Id number of the uclass
+ * @return The next free req_seq number
+ */
+int uclass_find_next_free_req_seq(enum uclass_id id);
+
+/**
* uclass_get_device_tail() - handle the end of a get_device call
*
* This handles returning an error or probing a device as needed.