[U-Boot] [PATCH v4 3/6] block: Add a function to find block device descriptor
Simon Glass
sjg at chromium.org
Wed Jul 11 14:02:36 UTC 2018
Hi Tien,
On 6 July 2018 at 02:26, <tien.fong.chee at intel.com> wrote:
> From: Tien Fong Chee <tien.fong.chee at intel.com>
>
> Add a function to find the block device descriptor of the parent
> device.
>
> Signed-off-by: Tien Fong Chee <tien.fong.chee at intel.com>
> ---
> drivers/block/blk-uclass.c | 23 +++++++++++++++++++++++
> include/blk.h | 9 +++++++++
> 2 files changed, 32 insertions(+)
>
> diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c
> index 9e0c823..facf527 100644
> --- a/drivers/block/blk-uclass.c
> +++ b/drivers/block/blk-uclass.c
> @@ -132,6 +132,29 @@ struct blk_desc *blk_get_devnum_by_typename(const char *if_typename, int devnum)
> }
>
> /**
> + * blk_get_by_device() - Get the block device descriptor for the given device
> + * @dev: Instance of a storage device
> + *
> + * Return: With block device descriptor on success , NULL if there is no such
> + * block device.
> + */
> +struct blk_desc *blk_get_by_device(struct udevice *dev)
> +{
> + struct udevice *child_dev, *next;
> +
> + device_foreach_child_safe(child_dev, next, dev) {
> + if (device_get_uclass_id(child_dev) != UCLASS_BLK)
> + continue;
> +
> + return dev_get_uclass_platdata(child_dev);
> + }
> +
> + debug("%s: No block device found\n", __func__);
> +
> + return NULL;
> +}
Is this different from blk_get_from_parent() ?
[..]
Regards,
Simon
More information about the U-Boot
mailing list