mirror of
https://xff.cz/git/u-boot/
synced 2025-09-02 09:12:08 +02: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:
@@ -438,3 +438,8 @@ ulong dev_get_of_data(struct udevice *dev)
|
|||||||
{
|
{
|
||||||
return dev->of_id->data;
|
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);
|
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
|
* 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);
|
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);
|
||||||
|
Reference in New Issue
Block a user