dm: device: Request next sequence number
For CONFIG_OF_PRIOR_STAGE, in the absence of a device tree alias for a given device, use the next request number for that type of device. This allows aliases to be used when they're available, while still allowing unaliased devices to be probed. Signed-off-by: Thomas Fitzsimmons <fitzsim@fitzsim.org> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
d8206ff198
commit
7f3289bf6d
@ -82,6 +82,11 @@ static int device_bind_common(struct udevice *parent, const struct driver *drv,
|
||||
if (CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA)) {
|
||||
if (uc->uc_drv->name && ofnode_valid(node))
|
||||
dev_read_alias_seq(dev, &dev->req_seq);
|
||||
#if CONFIG_IS_ENABLED(OF_PRIOR_STAGE)
|
||||
if (dev->req_seq == -1)
|
||||
dev->req_seq =
|
||||
uclass_find_next_free_req_seq(drv->id);
|
||||
#endif
|
||||
} else {
|
||||
dev->req_seq = uclass_find_next_free_req_seq(drv->id);
|
||||
}
|
||||
|
@ -269,7 +269,9 @@ int uclass_find_device_by_name(enum uclass_id id, const char *name,
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
#if !CONFIG_IS_ENABLED(OF_CONTROL) || CONFIG_IS_ENABLED(OF_PLATDATA)
|
||||
#if !CONFIG_IS_ENABLED(OF_CONTROL) || \
|
||||
CONFIG_IS_ENABLED(OF_PLATDATA) || \
|
||||
CONFIG_IS_ENABLED(OF_PRIOR_STAGE)
|
||||
int uclass_find_next_free_req_seq(enum uclass_id id)
|
||||
{
|
||||
struct uclass *uc;
|
||||
|
Loading…
Reference in New Issue
Block a user