dm: core: Export uclass_find_device_by_of_offset()

It is sometimes useful to be able to find a device before probing it,
perhaps to set up some platform data for it. Allow finding by of_offset
also.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass 2016-01-21 19:43:57 -07:00
parent 77eaa19e73
commit 1b30d61d78
2 changed files with 18 additions and 2 deletions

View File

@ -254,8 +254,8 @@ int uclass_find_device_by_seq(enum uclass_id id, int seq_or_req_seq,
return -ENODEV;
}
static int uclass_find_device_by_of_offset(enum uclass_id id, int node,
struct udevice **devp)
int uclass_find_device_by_of_offset(enum uclass_id id, int node,
struct udevice **devp)
{
struct uclass *uc;
struct udevice *dev;

View File

@ -98,6 +98,22 @@ int uclass_find_device_by_name(enum uclass_id id, const char *name,
int uclass_find_device_by_seq(enum uclass_id id, int seq_or_req_seq,
bool find_req_seq, struct udevice **devp);
/**
* uclass_find_device_by_of_offset() - Find a uclass device by device tree node
*
* This searches the devices in the uclass for one attached to the given
* device tree node.
*
* The device is NOT probed, it is merely returned.
*
* @id: ID to look up
* @node: Device tree offset to search for (if -ve then -ENODEV is returned)
* @devp: Returns pointer to device (there is only one for each node)
* @return 0 if OK, -ve on error
*/
int uclass_find_device_by_of_offset(enum uclass_id id, int node,
struct udevice **devp);
/**
* uclass_bind_device() - Associate device with a uclass
*