mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-18 13:11:31 +00:00
dm: core: Add a function to get a device's uclass ID
This is useful to check which uclass a device is in. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
This commit is contained in:
parent
0118ce7957
commit
b367053102
3 changed files with 24 additions and 0 deletions
|
@ -438,3 +438,8 @@ ulong dev_get_of_data(struct udevice *dev)
|
|||
{
|
||||
return dev->of_id->data;
|
||||
}
|
||||
|
||||
enum uclass_id device_get_uclass_id(struct udevice *dev)
|
||||
{
|
||||
return dev->uclass->uc_drv->id;
|
||||
}
|
||||
|
|
|
@ -245,6 +245,14 @@ struct udevice *dev_get_parent(struct udevice *child);
|
|||
*/
|
||||
ulong dev_get_of_data(struct udevice *dev);
|
||||
|
||||
/*
|
||||
* device_get_uclass_id() - return the uclass ID of a device
|
||||
*
|
||||
* @dev: Device to check
|
||||
* @return uclass ID for the device
|
||||
*/
|
||||
enum uclass_id device_get_uclass_id(struct udevice *dev);
|
||||
|
||||
/**
|
||||
* device_get_child() - Get the child of a device by index
|
||||
*
|
||||
|
|
|
@ -598,3 +598,14 @@ static int dm_test_uclass_before_ready(struct dm_test_state *dms)
|
|||
}
|
||||
|
||||
DM_TEST(dm_test_uclass_before_ready, 0);
|
||||
|
||||
static int dm_test_device_get_uclass_id(struct dm_test_state *dms)
|
||||
{
|
||||
struct udevice *dev;
|
||||
|
||||
ut_assertok(uclass_get_device(UCLASS_TEST, 0, &dev));
|
||||
ut_asserteq(UCLASS_TEST, device_get_uclass_id(dev));
|
||||
|
||||
return 0;
|
||||
}
|
||||
DM_TEST(dm_test_device_get_uclass_id, DM_TESTF_SCAN_PDATA);
|
||||
|
|
Loading…
Add table
Reference in a new issue