[U-Boot] [PATCH v4 3/6] block: Add a function to find block device descriptor
Chee, Tien Fong
tien.fong.chee at intel.com
Thu Jul 12 05:30:45 UTC 2018
On Wed, 2018-07-11 at 14:13 -0600, Simon Glass wrote:
> Hi Tien Fong,
>
> On 11 July 2018 at 08:23, Chee, Tien Fong <tien.fong.chee at intel.com>
> wrote:
> >
> > On Wed, 2018-07-11 at 08:02 -0600, Simon Glass wrote:
> > >
> > > 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() ?
> > This new function would return block description.
> > blk_get_from_parents() would return child device.
> OK, but please implement your function by calling
> blk_get_from_parent(). There is no need to duplicate the logic.
>
> Also how about calling it blk_get_desc_from_parent() ?
Okay.
>
> Regards,
> Simon
More information about the U-Boot
mailing list